alsa-project/alsa-lib issue #26 was opened from MusicMaker: In non blocked raw MIDI mode, is snd_rawmidi_status_get_avail supposed to return the number of available bytes than can read via snd_rawmidi_read. (port is opened for read only) It seems always return 0 even there is MIDI data when using a read. Else is there a(nother) way to find the number of unread received bytes in the buffer? snd_rawmidi_status_alloca (&status); snd_rawmidi_status(client, status); snd_rawmidi_status_get_avail(status); Issue URL : https://github.com/alsa-project/alsa-lib/issues/26 Repository URL: https://github.com/alsa-project/alsa-lib