[alsa-devel] [PATCH 2/2] Improve hw_params documentation
Clemens Ladisch
clemens at ladisch.de
Wed Nov 16 23:08:37 CET 2011
On 11/16/2011 10:31 PM, Andrew Eikum wrote:
> On Wed, Nov 16, 2011 at 10:20:07PM +0100, Clemens Ladisch wrote:
>> Andrew Eikum wrote:
>>> +++ b/include/pcm.h
>>> @@ -44,8 +44,20 @@ extern "C" {
>>>
>>> /** PCM generic info container */
>>> typedef struct _snd_pcm_info snd_pcm_info_t;
>>> -/** PCM hardware configuration space container */
>>> +
>>> +/** PCM hardware configuration space container
>>> + *
>>> + * snd_pcm_hw_params_t is an opaque structure which contains a set of possible
>>> + * PCM hardware configurations. For example, a given instance might include a
>>> + * range of buffer sizes, a range of period sizes, and a set of several sample
>>> + * formats. Some subset of all possible combinations these sets may be valid,
>>> + * but not necessarily any combination will be valid.
>>> + *
>>> + * No validation is done by the various snd_pcm_hw_params_set* functions.
>>
>> These functions do validate the value that the application is trying to set
>> and adjust all other dependent limits.
>
> I didn't find that to be the case in my testing, at least between
> periods, period_size, and buffer_size. I've attached a test program
> here.
I can reproduce this.
Try running the program with LIBASOUND_DEBUG=1; it appears that there is
a bug in the rate plugin. (Normal programs actually set their rate ...)
Regards,
Clemens
More information about the Alsa-devel
mailing list