[alsa-devel] [PATCH - report available sample formats in aplay/arecord when currently selected one doesn't work]

Takashi Iwai tiwai at suse.de
Mon Nov 2 16:45:46 CET 2009


At Sun, 18 Oct 2009 21:34:30 +0200,
alsa2 at bzzt.net wrote:
> 
> From: Arnout Engelen <alsa2 at bzzt.net>
> 
> 
> Signed-off-by: Arnout Engelen <alsa2 at bzzt.net>

Thanks for the patch.
Now applied with minor coding-style fixes.


Takashi

> ---
>  aplay/aplay.c |   15 +++++++++++++++
>  1 files changed, 15 insertions(+), 0 deletions(-)
> 
> diff --git a/aplay/aplay.c b/aplay/aplay.c
> index c7c82a1..60f17de 100644
> --- a/aplay/aplay.c
> +++ b/aplay/aplay.c
> @@ -941,6 +941,20 @@ 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 +991,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);
> -- 
> 1.6.3.3
> 


More information about the Alsa-devel mailing list