[alsa-devel] Support for snd_pcm_link() on the rate plugin
Christian Gruber
christian.gruber at voiceinterconnect.de
Mon Aug 10 14:48:11 CEST 2015
Dear ALSA community,
I have a question regarding the usage of the function snd_pcm_link() on the rate plugin.
As can be seen from its implementation (see pcm.c, line 1368), the function snd_pcm_link()
calls the fast_op "link" of the first pcm device/plugin to be linked, which is a function
pointer, whose destination depends on the type of pcm device/plugin to be linked.
If the device is a HW-device, the function snd_pcm_hw_link() is called for instance (see
pcm_hw.c). Several other plugins use the generic function snd_pcm_generic_link() (see
pcm_generic.c, line 212), which forwards the function call to their slave devices/plugins,
e.g. the plugins mmap_emul, linear, lfloat, mulaw, alaw, route, etc.
The rate plugin instead does not support snd_pcm_link(), since the function pointer "link"
is not assigned in the definition of snd_pcm_rate_fast_ops (see pcm_rate.c, line 1153).
Why does the rate plugin not support snd_pcm_link()? Is their any reason to not use the
generic function snd_pcm_generic_link() within the rate plugin? If yes, what's the reason
for it?
Thanks in advance for answering this question,
Christian
More information about the Alsa-devel
mailing list