BUG: ALSA snd-virmidi: snd-virmidi is not MIDI 1.0 specification compliant

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



snd-virmidi, as of kernel 5.4.23, does not adhere to the MIDI
specification:

>From MIDI 1.0 Detailed Specification, Document Version 4.2, Appendix A-
1 (RUNNING STATUS), Page A-2:

"3. Buffer is cleared when a System Exclusive or Common status message
is received."

snd-virmidi does not clear the running status in case of a SysEx
message.

How to test:

Load snd-virmidi module and get the card number of the module.
In the following 5 is assumed as the card number and device 1 is used.

You need two shells, in shell 1 do:

aconnect 'Virtual Raw MIDI 5-1':0 'Virtual Raw MIDI 5-1':0
amidi -p hw:VirMIDI,1 -d

Now, in shell 2 do:

amidi -p hw:VirMIDI,1 -S '80 01 02 F0 01 F7 80 02 03'

This sends a note off, followed by a SysEx, followed by another note
off. The result in shell 1 is:

80 01 02
F0 01 F7
02
03

So snd-virmidi did not clear the running status. The correct result
would be:

80 01 02
F0 01 F7
80 02 03





[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux