Re: [Alsa-devel] [BUG] 2.6.16-rc4 git, ALSA USB-MIDI does not give NOTEOFF event for M-Audio Keystation 88es, but NOTEON with velocity=0

From: Takashi Iwai
Date: Mon Feb 27 2006 - 07:11:07 EST


At Mon, 27 Feb 2006 00:42:38 +0900,
Junichi Uekawa wrote:
>
> Hi,
>
> I'm seeing that USB MIDI keyboard (M-Audio Keystation 88es) is
> generating note-on events on both note-on and note-off. The difference
> being that note-off is generating an note-on event with velocity '0'.
>
> The following code in seq_midi_emul.c(snd_midi_process_event) looks
> suspiciously like what's needed for this device:
>
> /* Make sure that we don't have a note on that should really be
> * a note off */
> if (ev->type == SNDRV_SEQ_EVENT_NOTEON && ev->data.note.velocity == 0)
> ev->type = SNDRV_SEQ_EVENT_NOTEOFF;

This code is irrelevant. This is for MIDI emulation like emu10k1
WaveTable, not for the real MIDI device.

Basically the given behavior is not a bug. The sequencer handles
note-on with velocity 0 as it is. As a strict definition, note-off
and note-on with zero velocity are different although they are used
widely as identical in order to save bytes.


Takashi
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/