[alsa-devel] period_time in slave definition
Jaroslav Kysela
perex at perex.cz
Mon Feb 28 14:15:03 CET 2011
On Mon, 28 Feb 2011, Pavel Hofman wrote:
> Hi,
>
> According to
> http://www.alsa-project.org/alsa-doc/alsa-lib/pcm_plugins.html , my
> .asoundrc contains:
>
> pcm.test {
> type plug
> slave {
> pcm "hw:0"
> format "unchanged"
> channels "unchanged"
> rate "unchanged"
> period_size 1024
> buffer_size 4096
> }
> }
>
>
> While pcm, format, channels, and rate are accepted, the period and
> buffer fields are refused:
>
> ALSA lib pcm.c:6811:(snd_pcm_slave_conf) Unknown field period_time
It's correct, pcm:plug does not support buffer modifiers. Look to
"Automatic conversion plugin".
> I checked the source code and the keywords seem to be ok
>
> pcm.c:
> static const char *const names[SND_PCM_HW_PARAM_LAST_INTERVAL + 1] = {
> [SND_PCM_HW_PARAM_FORMAT] = "format",
> [SND_PCM_HW_PARAM_CHANNELS] = "channels",
> [SND_PCM_HW_PARAM_RATE] = "rate",
> [SND_PCM_HW_PARAM_PERIOD_TIME] = "period_time",
> [SND_PCM_HW_PARAM_PERIOD_SIZE] = "period_size",
> [SND_PCM_HW_PARAM_BUFFER_TIME] = "buffer_time",
> [SND_PCM_HW_PARAM_BUFFER_SIZE] = "buffer_size",
> [SND_PCM_HW_PARAM_PERIODS] = "periods"
> };
It's just a table to translate all possibilites between index and name.
The plug plugins allow only this:
err = snd_pcm_slave_conf(root, slave, &sconf, 3,
SND_PCM_HW_PARAM_FORMAT, SCONF_UNCHANGED, &sformat,
SND_PCM_HW_PARAM_CHANNELS, SCONF_UNCHANGED, &schannels,
SND_PCM_HW_PARAM_RATE, SCONF_UNCHANGED, &srate);
Jaroslav
-----
Jaroslav Kysela <perex at perex.cz>
Linux Kernel Sound Maintainer
ALSA Project, Red Hat, Inc.
More information about the Alsa-devel
mailing list