]> git.alsa-project.org Git - alsa-utils.git/commitdiff
aplaymidi: list only MIDI-capable ports
authorClemens Ladisch <clemens@ladisch.de>
Tue, 2 May 2006 13:43:07 +0000 (15:43 +0200)
committerClemens Ladisch <clemens@ladisch.de>
Tue, 2 May 2006 13:43:07 +0000 (15:43 +0200)
When listing ports with aplaymidi/arecordmidi, show only
ports that understand MIDI messages, i.e., that have the
SND_SEQ_PORT_TYPE_MIDI_GENERIC flag set.

seq/aplaymidi/aplaymidi.c
seq/aplaymidi/arecordmidi.c

index 625e9e985ac67fade65b4ee3c8b9764791f3ba8e..c2819d0d381451987d0f37a28b1eb5756f1e14eb 100644 (file)
@@ -786,6 +786,10 @@ static void list_ports(void)
                snd_seq_port_info_set_client(pinfo, client);
                snd_seq_port_info_set_port(pinfo, -1);
                while (snd_seq_query_next_port(seq, pinfo) >= 0) {
+                       /* port must understand MIDI messages */
+                       if (!(snd_seq_port_info_get_type(pinfo)
+                             & SND_SEQ_PORT_TYPE_MIDI_GENERIC))
+                               continue;
                        /* we need both WRITE and SUBS_WRITE */
                        if ((snd_seq_port_info_get_capability(pinfo)
                             & (SND_SEQ_PORT_CAP_WRITE | SND_SEQ_PORT_CAP_SUBS_WRITE))
index c8e2865de01c477c17079ced11bb60cb854836ba..243ec5637166a2e56e143407c1f465d747d15a08 100644 (file)
@@ -659,6 +659,10 @@ static void list_ports(void)
                snd_seq_port_info_set_client(pinfo, client);
                snd_seq_port_info_set_port(pinfo, -1);
                while (snd_seq_query_next_port(seq, pinfo) >= 0) {
+                       /* port must understand MIDI messages */
+                       if (!(snd_seq_port_info_get_type(pinfo)
+                             & SND_SEQ_PORT_TYPE_MIDI_GENERIC))
+                               continue;
                        /* we need both READ and SUBS_READ */
                        if ((snd_seq_port_info_get_capability(pinfo)
                             & (SND_SEQ_PORT_CAP_READ | SND_SEQ_PORT_CAP_SUBS_READ))