[alsa-devel] [alsa-lib][PATCH 00/10 v2] ctl: add APIs for control element set
Takashi Sakamoto
o-takashi at sakamocchi.jp
Sun Jun 12 10:16:01 CEST 2016
Hi,
This patchset is revised version of below one:
[alsa-devel] [alsa-lib][PATCH 0/6] control: add APIs for control element set
http://mailman.alsa-project.org/pipermail/alsa-devel/2016-February/104795.html
In this time, I add a program to test the feature.
Changes:
- Use a model which consists of element set/element/member/value.
- Add an description about the design of ALSA ctl feature.
- Obsolete old APIs due to the lack of const semantics.
- Add an description about threshold level feature and topology framework.
- Improve comments to threshold level APIs.
- Add a test program.
Before starting any discussions, please read description of the model, to stand
on the same basis of understanding.
I note that execution of the test program causes an abort to PulseAudio. I can
see this line below.
pulseaudio: hcontrol.c:745: snd_hctl_handle_event: Assertion `res >= 0 && dir == 0' failed.
I guess that quick addition/removal of control element set causes this
assertion, but I have little time to investigate the cause. I wish to get helps
of ALSA developers in PulseAudio side.
If you need an practical example of the feature, please test one of Python 3
samples in my 'alsa-gi'.
https://github.com/takaswie/alsa-gi/
This works without alsa-lib, by using kernel/userspace interface directly.
Therefore, this patchet doesn't affect the implementation.
Takashi Sakamoto (10):
ctl: add an overview for design of ALSA control interface
ctl: improve comments for handling element data
ctl: add functions to add an element set
ctl: improve comments for API to add an element of IEC958 type
ctl: change former APIs as wrapper functions of element set APIs
ctl: deprecate APIs to add an element set with a single element
pcm: use new APIs to add a control element set for softvol plugin
ctl: add explaination about threshold level feature
ctl: improve API documentation for threshold level operations
ctl: add test program for control element set
include/control.h | 36 +-
src/control/control.c | 829 ++++++++++++++++++++++++++++++++------------
src/pcm/pcm_softvol.c | 7 +-
test/Makefile.am | 5 +-
test/user-ctl-element-set.c | 561 ++++++++++++++++++++++++++++++
5 files changed, 1216 insertions(+), 222 deletions(-)
create mode 100644 test/user-ctl-element-set.c
--
2.7.4
More information about the Alsa-devel
mailing list