Re: [Faudiostream-users] Faust dropping short MIDI notes?
How can I simulate the problem here ? (cannot reproduce it with my virtual MIDI keyboard…) Stéphane > Le 30 janv. 2019 à 15:04, Mykle Hansen a écrit : > > >> On Jan 30, 2019, at 2:47 PM, Stéphane Letz wrote: >> >> This standard MIDI handling code may drop some MIDI events. You can more a >> more robust path (using a queue of incoming events) that is used when >> dealing with MIDI synchronization messages (start, stop, clock…) >> >> You can « force » that MIDI sync path by explicitly adding an appropriate >> metata like in the following line: >> >> on = button("[midi:key 60][midi:clock]on »); >> >> Can you try that and report? If this solve your problem, then we may have to >> switch this more robust mode on by default… > > Ah ok … so this is an issue of the time-resolution of UI events. > It makes sense that your suggestion would work, but alas, > I tried it & it didn't seem to change anything. > Faust is still dropping more than half the events. > > My modified test program is below — can you double-check my syntax? > > -m- > > —— > > > declare author "Mykle Hansen"; > declare name "short Midi note example"; > declare options "[midi:on]"; > > import ("stdfaust.lib"); > > //on = button("[midi:key 112]on"); > on = button("[midi:key 112][midi:clock]on"); // sletz suggestion: > > count = +( on > on' ) ~ _ : hbargraph("# of button presses", 0, 10); > > process = os.oscsin(440 + count ) * on; > ___ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/faudiostream-users
Re: [Faudiostream-users] Faust dropping short MIDI notes?
> On Jan 30, 2019, at 2:47 PM, Stéphane Letz wrote: > > This standard MIDI handling code may drop some MIDI events. You can more a > more robust path (using a queue of incoming events) that is used when dealing > with MIDI synchronization messages (start, stop, clock…) > > You can « force » that MIDI sync path by explicitly adding an appropriate > metata like in the following line: > > on = button("[midi:key 60][midi:clock]on »); > > Can you try that and report? If this solve your problem, then we may have to > switch this more robust mode on by default… Ah ok … so this is an issue of the time-resolution of UI events. It makes sense that your suggestion would work, but alas, I tried it & it didn't seem to change anything. Faust is still dropping more than half the events. My modified test program is below — can you double-check my syntax? -m- —— declare author "Mykle Hansen"; declare name "short Midi note example"; declare options "[midi:on]"; import ("stdfaust.lib"); //on = button("[midi:key 112]on"); on = button("[midi:key 112][midi:clock]on"); // sletz suggestion: count = +( on > on' ) ~ _ : hbargraph("# of button presses", 0, 10); process = os.oscsin(440 + count ) * on; ___ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/faudiostream-users
Re: [Faudiostream-users] Faust dropping short MIDI notes?
This standard MIDI handling code may drop some MIDI events. You can more a more robust path (using a queue of incoming events) that is used when dealing with MIDI synchronization messages (start, stop, clock…) You can « force » that MIDI sync path by explicitly adding an appropriate metata like in the following line: on = button("[midi:key 60][midi:clock]on »); Can you try that and report? If this solve your problem, then we may have to switch this more robust mode on by default... Stéphane > Le 30 janv. 2019 à 14:05, Mykle James Hansen a écrit : > > Hi, > > I’m seeing a problem with Faust’s MIDI support, on OS X 10.11.6, > in an app built with faust2caqt . It appears that if a NOTEOFF > message follows a NOTEON message too closely, Faust may not > receive either message. In my case, the timing between NOTEON > and NOTEOFF is about 6ms, which is very short. But I have > confirmed that the OS and various other applications are all > able to receive and process these messages. > > Below is a simple Faust program to demonstrate the problem. When I > send the NOTEON/NOTEOFF pairs I describe, Faust sees them > only intermittently, about 20-30% of the time. > > I haven’t been able to this in any other environments, because I haven’t > gotten the [midi:key] metadata label to work anywhere else. > (I’m hoping it’ll be supported in the next release of FaustLive. :) > > Any advice would be much appreciated & I’m happy to give more info as needed. > > Thanks, > -mykle- > > > —— > > declare author "Mykle Hansen"; > declare name "short Midi note example"; > declare options "[midi:on]"; > > import ("stdfaust.lib"); > > on = button("[midi:key 112]on”); // replace 112 with whatever MIDI note is > handy for you ... > > count = +( on > on' ) ~ _ : hbargraph("# of button presses", 0, 10); > > process = os.oscsin(440 + count ) * on; > > > > > ___ > Faudiostream-users mailing list > Faudiostream-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/faudiostream-users ___ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/faudiostream-users