[PD] MIDI In-to-Out Latency

cyrille henry ch at chnry.net
Sun Jun 6 09:40:35 CEST 2010


i had almost the same problem : my setup use a usb->midi device, i plugged a cable between the midi in and midi out : i tried to minimized the loop.
i'm on linux, and i realized few things :

-midi in is very fast
-midi out have the same latency than audio. pd is the only software i know doing this, but it make sense in order to keep sync between audio and midi, whatever you audio buffer is.
so, if you reduce the audio buffer, the midi latency will be reduce!
-using pd -audiobuf 5 result in a 10ms loop with a lot of jitter.
-using pd -rt -noaudio the midi loop is about 3ms and it does have very few jitter. (rt reduce jitter, noaudio reduce latency)

since you did try pd -noaudio, i don't understand why it did not improve things for you. are you sure that this argument was recognise by pd (so that you really don't have audio)?

so, if you don't have to compute audio with pd, then you can have good midi performances.
if you need to have a big audio buffer, and a small midi latency, then it's easier to use 2 pd with different configuration, and connect them with netsend/ netreceive.

i used to have a script (maybe you can find one on the internet) that convert OSC message to midi. it's a (bad) solution, but allow to have good midi performance whatever pd configuration used.

hope that help,

Le 06/06/2010 01:26, Jim Aikin a écrit :
> I'm running 0.41.4 Extended on a 64-bit Windows 7 system. I've installed
> MIDI Yoke to route incoming MIDI from my keyboard through Pd and thence
> to Cubase 5.1.
> What I'm finding is that with the simplest possible notein-to-noteout
> patch, Pd's MIDI throughput latency is very consistently on the order of
> 100ms -- plainly unacceptable for real-time performance. Needless to
> say, Cubase is using ASIO, and has no problem producing low-latency MIDI
> response when I use a direct MIDI input. The sluggish response is
> clearly due to Pd. Also, it's consistent whether Pd's patch window is in
> or out of edit mode.
> To test whether MIDI Yoke might be the culprit, I opened MIDI-Ox and
> routed the physical MIDI input to a MIDI Yoke channel. The latency was
> maybe a tiny bit greater than via a direct routing into Cubase (maybe),
> but it was much, much less than with Pd.
> The section in the Pd manual on scheduling doesn't mention MIDI latency
> at all; it's strictly about audio DSP load. I can't find anything else
> in the manual that seems even faintly relevant. I did find (somewhere
> ... on the wiki?) a mention that the timing of metro would be improved
> if I ran with the command line pd -noaudio, so I opened a Command Prompt
> and tried that. It didn't change anything.
> It seems very odd to me that Pd can handle audio streams without
> glitching, yet it can't process three bytes of MIDI data in less than
> 100ms. Is this user error on my part? Can anyone suggest how I can
> reduce or eliminate the delay? Thanks for any tips!
> --Jim Aikin
> _______________________________________________
> Pd-list at iem.at mailing list
> UNSUBSCRIBE and account-management ->
> http://lists.puredata.info/listinfo/pd-list

More information about the Pd-list mailing list