On Sat, Jun 19, 2010 at 7:16 AM, Ralf Mardorf <[email protected]> wrote: > To bad that there isn't a MPU game port any more on modern boards and that > e.g. my Terratec EWX 24/96 Envy24's MPU needs opto-couplers for the cable, > but what ever circuit I build on a brad board, they failed. > Time to mount my old mobo again and to test the game ports MPU with today > Linux, resp. to get a service manual for my Terratec.
http://github.com/koppi/alsa-midi-latency-test gives definite figures showing MPU-401 and Envy24 based MIDI is much faster than USB midi. Makes sense given there's no USB stack to traverse, and there's probably a direct PCI-bus interrupt generated by MIDI data, orchestrated by the plays-nice-with Linux ICE1712/1724 series ( http://alsa.cybermirror.org/manuals/icensemble/envy24.pdf ) which efficiently implements PCI 2.1 bus-master and burst modes, though I'm not sure if that would be used or needed for MIDI. What's interesting to note is that most of the USB MIDI interfaces do not have consistent latency (Other than the Roland UM2's consistent 2.15ms) whereas MPU-401 (1.13mS) and VT1712 (0.97-1.04mS) have this consistency. In contrast an M-audio midisport USB has latency ranging from 3.11-5.38 ms ==> 2ms "jitter" just in the hardware alone, with the jitter being greater than the total latency of a MPU401 or ICE1724-based MIDI. Did I ever mention that firewire and USB are probably the most bone-headed way of doing low-latency audio ever thought of? It begs failure both in theory and practice. But since people following fashion are the quickest lemmings to fall off the cliff (fashion-following being the losing end of a ponzi scheme), the Linux community can benefit from their stupidity: With lots of people moving to USB and Firewire configurations, E-bay is full of used ICE1712 or ICE1724-based soundcards, many of which have MIDI ports, and some which have waveblaster headers. For example the VT1712-based $20.00 Terratec DMX6Fire with a front midi port and an internal 26 pin waveblaster header for my Yamaha db50xg (NEC XR385). Or the VT1723-based $0.99 Dynex dx-sc51 with a single 26 pin waveblaster MIDI port (TTL level MIDI in and out). The only thing lacking on these ten year old designs are a modern A/D and D/A section and analog section, which is why I started the following threads on LAU: http://old.nabble.com/digital-upgrade-of-older-equipment-via-I2S-with-jitter-attenuating-S-PDIF-receiver-evaluation-board----to28997419.html http://old.nabble.com/turning-a-consumer-soundcard-into-%22prosumer%22-w--quasi-balanced-outs-tp28791831p29011212.html Bottom line: MIDI implementation on the ICE VT1712 is faster than an MPU-401 and both are faster than the quickest USB implementation: http://github.com/koppi/alsa-midi-latency-test/blob/master/benchmarks/m-audio-2496.txt (ICE vt1712 soundchip, also using realtime prio) ............................. $ alsa-midi-latency-test -R -i 20:0 -o 20:0 alsa-midi-latency-test 0.0.3 set_realtime_priority(SCHED_FIFO, 99).. done. clock resolution: 0.000000001 s [...] latency distribution: 1.0 - 1.1 ms: 10000 ################################################## [...] best latency was 0.97 ms worst latency was 1.04 ms, which is great ............................. http://github.com/koppi/alsa-midi-latency-test/blob/master/benchmarks/mpu401.txt .............................. latency distribution: [...] 1.0 - 1.1 ms: 3714 ############################## 1.1 - 1.2 ms: 6286 ################################################## [...] worst latency was 1.13 ms, which is great. ................................... http://github.com/koppi/alsa-midi-latency-test/blob/master/benchmarks/um2ex.txt ................................... latency distribution: [...] 1.1 - 1.2 ms: 3 # 1.2 - 1.3 ms: 19 # 1.3 - 1.4 ms: 13 # 1.4 - 1.5 ms: 23 # 1.5 - 1.6 ms: 88 # 1.6 - 1.7 ms: 14 # 1.7 - 1.8 ms: 16 # 1.8 - 1.9 ms: 20 # 1.9 - 2.0 ms: 17 # 2.0 - 2.1 ms: 9773 ################################################## 2.1 - 2.2 ms: 13 # [...] worst latency was 2.15 ms, which is great. ................................... -- Niels http://nielsmayer.com _______________________________________________ Linux-audio-dev mailing list [email protected] http://lists.linuxaudio.org/listinfo/linux-audio-dev
