From 325462e80ade753abea24fb3707e34dcf617ef51 Mon Sep 17 00:00:00 2001 From: Arnout Engelen Date: Sun, 18 Oct 2009 21:34:30 +0200 Subject: [PATCH] aplay - Show available formats Report available sample formats in aplay/arecord when currently selected one doesn't work. Signed-off-by: Arnout Engelen Signed-off-by: Takashi Iwai --- aplay/aplay.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/aplay/aplay.c b/aplay/aplay.c index c7c82a1..af6fede 100644 --- a/aplay/aplay.c +++ b/aplay/aplay.c @@ -941,6 +941,17 @@ static int test_au(int fd, void *buffer) return 0; } +static void show_available_sample_formats(snd_pcm_hw_params_t* params) +{ + snd_pcm_format_t format; + + fprintf(stderr, "Available formats:\n"); + for (format = 0; format < SND_PCM_FORMAT_LAST; format++) { + if (snd_pcm_hw_params_test_format(handle, params, format) == 0) + fprintf(stderr, "- %s\n", snd_pcm_format_name(format)); + } +} + static void set_params(void) { snd_pcm_hw_params_t *params; @@ -977,6 +988,7 @@ static void set_params(void) err = snd_pcm_hw_params_set_format(handle, params, hwparams.format); if (err < 0) { error(_("Sample format non available")); + show_available_sample_formats(params); exit(EXIT_FAILURE); } err = snd_pcm_hw_params_set_channels(handle, params, hwparams.channels); -- 2.47.1