mirror of
https://github.com/alsa-project/alsa-utils
synced 2024-09-19 17:49:59 +02:00
44d3e8aa44
Add a simple plugin interface for processing the topology tree. There can be cases where parts of the topology need to be translated from the original format into something else. For example one could calculate some kind of filter coefficients from filter parameters or some other binary interface parameters from plain text topology tokens. Mechanism is similar as in alsa-plugins and in the plugin there should be only 1 function exported of the form: int _snd_topology_##pluginname##_process (snd_config_t *input, snd_config_t *output) Input and output parameters are snd_config tree before and after topology2 pre-processing. So the plugin can modify both if needed. There are cases where the plugin may need to get information from input tree, but make modifications to the output. The plugins to be used can be defined in command line with: alsatplg -DPREPROCESS_PLUGINS="foobar" -c topology.conf -p -o topology.tplg Multiple plugins should be separated by ":". Plugins to be used can also be defined with "Define" clause inside the topology file (but command line takes precedence): Define { PREPROCESS_PLUGINS "foobar" } Link: https://github.com/alsa-project/alsa-utils/pull/129 Signed-off-by: Jaska Uimonen <jaska.uimonen@linux.intel.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz> |
||
---|---|---|
.. | ||
alsatplg.rst | ||
Makefile.am | ||
pre-process-class.c | ||
pre-process-dai.c | ||
pre-process-dapm.c | ||
pre-process-external.h | ||
pre-process-object.c | ||
pre-processor.c | ||
pre-processor.h | ||
topology.c | ||
topology.h |