From 0b70f2e6062c8d852cf9465c532530ed8f8b24f5 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Wed, 11 Oct 2006 13:36:37 +0200 Subject: [PATCH] aplay/arecord: filter direction for -L command --- aplay/aplay.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/aplay/aplay.c b/aplay/aplay.c index 7630011..79bbd19 100644 --- a/aplay/aplay.c +++ b/aplay/aplay.c @@ -280,18 +280,23 @@ static void device_list(void) static void pcm_list(void) { - char **hints, **n, *delim; + char **hints, **n, *delim, *filter; if (snd_device_name_hint(-1, SND_CTL_ELEM_IFACE_PCM, &hints) < 0) return; n = hints; + filter = stream == SND_PCM_STREAM_CAPTURE ? "{Playback}" : "{Capture}"; while (*n != NULL) { delim = strchr(*n, '|'); - if (delim) + if (delim) { *delim = '\0'; + if (strstr(delim + 1, filter) != NULL) + goto __end; + } printf("%s\n", *n); if (delim) printf(" %s\n", delim + 1); + __end: n++; } snd_device_name_free_hint(hints); -- 2.47.3