[PD] MIDI timing FIFO overflowed receiving sysex

mario buoninfante mario.buoninfante at gmail.com
Sun Jun 25 12:03:48 CEST 2017


Hi Miller,

thanks for the suggestion. Glad to hear there's a "workaround"! I'll try 
this before on my Linux machine, so on Monday I can do the same with the 
computer I have at work.

it would be great to have this as an option, for example, in 
Preferences. I know probably it's a kind of niche feature, but this 
would help a lot in dealing with sysex stuff.


cheers,

Mario


On 25/06/17 00:37, Miller Puckette wrote:
> If you don't mind recompiling Pd, you can control the MIDI queue size
> by editing this line in s_midi.c:
>
> #define MIDIQSIZE 1024
>
> I think it has to be a power of 2.  You could make it 0x100000, for instance
> (a million-ish).
>
> To easily recompile Pd on a Mac, install the developer package (compiler
> chain which I think is now called Xcode), open a shell, Cd to
> Pd-x.app/Contents/Resources/src, edit s_midi.c, and type "make".
>
> cheers
> Miller
>
> On Sat, Jun 24, 2017 at 10:25:41AM +0100, mario buoninfante wrote:
>> Hi All,
>>
>> I'm trying to record a bunch of sysex received from and external machine
>> (sequencer/synthesizer).
>>
>> I tried using both [midiin] and [sysexin], and I've always got the same
>> result: "MIDI timing FIFO overflowed" printed on the console, and a lot of
>> data missing (I'm sure about that, cause I know how big the stored file
>> should be, and also cause it's an external flash dump, so I should be able
>> to send back this sysex to the unit, but when I do this the unit gets
>> stuck).
>>
>> I know for sure that the unit is sending sysex at a really fast rate, as
>> fast as it can (at the moment I don't remember how fast exactly, but I can
>> double check).
>>
>> is there a way to setup a kind of buffer? something that allows you to
>> accumulate this data before they pass through [midiin] or [sysex].
>>
>> I'd like to give some context (and believe me, I don't really like this kind
>> of comparisons, at all!).
>>
>> as it's something I'm doing for work reasons, I had to try using MaxMSP and
>> I ended up with something that works. the only thing I had to do is changing
>> the parameter related to the "scheduler time interval". so, what happens
>> there is the following: Unit sends these messages as fast as it can, MaxMSP
>> receives and accumulates all the messages, and pass them to the patch one
>> after another at a slower rate then the Unit's one.
>>
>> do we have something similar on Pd?
>>
>>
>> cheers,
>>
>> Mario
>>
>>
>>
>> _______________________________________________
>> Pd-list at lists.iem.at mailing list
>> UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list




More information about the Pd-list mailing list