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