Welcome to %s forums

BrainModular Users Forum

Login Register

buggy note generator skips notes

General Discussion about whatever fits..
Post Reply
whitelobster
Member
Posts: 19
Contact:

Unread post by whitelobster » 12 Feb 2018, 23:33

Hello

I am attempting to create an interface with an XY pad that spawns midi notes based on the Y value being interpreted as the note of the pitch and the X value being used to send midi CC messages

I have tried many many different implementations to try and create a note generator, but no matter what I do some of the notes are always dropped, I have tried many different ways of triggering the creation of the midi note from different sources, have tried poly and mono implementations, but notes are always dropped- I cannot figure out why but I wonder if it it needs to be setup in such a way where the note generator has polyphony?

I have attached a link to the patch below- can someone please help me figure out how to properly construct a midi note generator THAT WILL NOT DROP NOTES? I think this should be very simple as all of the notes can be the same 500ms length so the note off messages can automatically be generated by the midi transform module- I just need a way to generate 500ms notes with a pitch value that corresponds to the pad Y value anytime the XY pad is touched. I have this implemented but am confused if I have properly implemented the polyphony or if it is even necessary for this task-

Any help or tips would be infinitely appreciated, it is becoming very confusing finding a way to generate clean notes without information being delayed ie. the previous pitch value being delayed and sent out with the next Note On etc ---- but I am sure that someone here who has created Note Generating modules for use with step sequencers etc has found clean/elegant solutions for reliably generating notes


Thank you so much, please let me know if I can provide any additional info

Please note: you may have to play around with this patch for 10-15 seconds to produce the error, if you tap on the XY pad a few times you will see about 1 in every 15 or so notes tends to drop, you will hit the screen and for every hit a note will be produced, however you will find occasionally you will tap the screen and no note will be produced


https://drive.google.com/file/d/18KtYu- ... sp=sharing

User avatar
x.iso
Member
Posts: 565
Location: RU, Saint-Petersburg
Contact:

Unread post by x.iso » 13 Feb 2018, 01:40

Well, just using touch to generate notes seem to have no problem on my end, of course just one tap at a time, since for chords you need multiple XY pads or some objects behind XY pad and track when mousedown is active on those object as you tap/drag around XY pad.
I'm battling with different kind of problems here with touch keyboard solution: http://www.sensomusic.org/forums/viewtopic.php?id=6120

If your goal is to just randomly generate the notes, then XY pad is probably least efficient tool to use, I think there was just dedicated random note generator module.
join Hollyhock Usine Discord server: https://discord.gg/EdJarnE

whitelobster
Member
Posts: 19
Contact:

Unread post by whitelobster » 13 Feb 2018, 09:50

Really this works perfectly for you? For me there are always some notes dropped if you keep at it for a minute, if you're trying to tap something out that is rhythmic it will be more obvious because it will sound like you missed a beat

whitelobster
Member
Posts: 19
Contact:

Unread post by whitelobster » 13 Feb 2018, 10:39

From what I can tell the problem seems to occur with the Create Midi module generating the Note On inside of the note generator, regardless of if the note Create is triggered by a change in the pitch value, or a mouse down on the XY pad, there are always some notes that it just doesn't create. Is there a prebuilt note generating module out there that automatically spawns notes of a given length when it receives a pitch value or any other way to implement a fool-proof note generator that doesn't drop notes? I am also still confused whether or not this note generator sub patch would need to be polyphonic or not to function properly, the version I've attached above includes polyphony but I am confused whether this is the most reliable implementation of a note generator possible

23fx23
Member
Posts: 2545
Contact:

Unread post by 23fx23 » 13 Feb 2018, 11:01

didn't fully investigate, but i feelyou need to use a non poly patch, and mostly add some matth round/trunc after your 0-127 re-range , before your 'has changed' used as trigger, because seems there is a smooth or something and that make float that constantly varies and overflows,

whitelobster
Member
Posts: 19
Contact:

Unread post by whitelobster » 13 Feb 2018, 13:52

Thank you for this. I just tried implementing this with trunc and roud and I’m still having the same problem with dropped notes, most obviously when playing individual rhythmic taps. I’m suprised nobody has build a really simple fool proof single note generator when you feed it pitch values and it does all the rest.

User avatar
x.iso
Member
Posts: 565
Location: RU, Saint-Petersburg
Contact:

Unread post by x.iso » 13 Feb 2018, 15:14

So, does it drop notes when you turn on automatic note generation, or only when you manually touch the pad?
join Hollyhock Usine Discord server: https://discord.gg/EdJarnE

whitelobster
Member
Posts: 19
Contact:

Unread post by whitelobster » 13 Feb 2018, 17:05

I think you are confused, these actuons are one in the same, if you look at the patch touching the XY pad generates a note-the only problem is sometime the note is mysteriously dropped or fails to be generated

User avatar
x.iso
Member
Posts: 565
Location: RU, Saint-Petersburg
Contact:

Unread post by x.iso » 13 Feb 2018, 19:49

I think the shape that automatically gets to where you touch XY pad is interfering with mouse down on XYpad inself, so that's why it misfires sometimes. If I just click any where with mouse without dragging cursor, I get the same note each time and it doesn't misfire, but if I touch, then I hear that same note along with one that is supposed to go according to coordinates, which does misfire sometimes.
In the patch that I've been working on lately (that I linked earlier), I decided to go with Container and pre-defined Shape instead of using XYpad, since you can't get outputs of shapes generated by XY pad. There it fires notes every time, but I've noticed that velocity/aftertouch signal is only consistently transferred if I'm using mouse, I'll look into that later.

Oh, and I'll reupload the patch later as it seems to move keyboard to 880px from top on initialization, no idea why. moving it from container seems to solve the issue.
join Hollyhock Usine Discord server: https://discord.gg/EdJarnE

whitelobster
Member
Posts: 19
Contact:

Unread post by whitelobster » 15 Feb 2018, 16:46

So are you saying that it is impossible to get it to work properly with every click unless you are actually using a mouse and not a touchscreen? I have used an LED module to monitor whether or not the mouse down trigger works and from what i can tell it always does even when only touchscreen is used——although this trigger works it does not always create the note which makes me think my subpatch for generating the full midi note on/off data could be more efficiently built————any ideas how else I could fix this patch so that touching thebxy pad peoperly spawns notes?

User avatar
x.iso
Member
Posts: 565
Location: RU, Saint-Petersburg
Contact:

Unread post by x.iso » 15 Feb 2018, 18:24

As I've said, it's better to use Panel Container module, or just Shape and track it's mouse down and mouse x,y outlets to produce triggers, if that doesn't help, perhaps there's something else to look into. I've noticed that there seems to be a bug, when using polyphonic patch with each instance spawning notes, they go with noticeable sequence, not in parallel, but if you click on midi out module and pin it's settings, then everything works fine.
join Hollyhock Usine Discord server: https://discord.gg/EdJarnE

Post Reply

Who is online

Users browsing this forum: No registered users and 135 guests