summaryrefslogtreecommitdiffstats
path: root/plugins/alsa/alsa-api-zones.c
AgeCommit message (Collapse)AuthorFilesLines
2019-05-13pcm plugs: rework the alsa config cleanupThierry Bultel1-7/+0
The alsa config (for softvol, routes, rate conversion ...) was cleaned up by the owner stream or zone, at their deletion time. This was a mistake, because when the stream or zone creation was not complete, the cleanup of the configuration was not done. Instead of doing that, the config is attached to the plug objects as private data (in the AlsaPcmCtlT structure). Since the AlsaPcmCtlT are always recorded in the creation transaction, it is easy to call the cleaning callback (when it exists) when the transaction is deleted. Change-Id: I952871518a20bfe0be6398887bc747338cf574fb Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2019-05-13alsa-api-pcm: added support of quirksThierry Bultel1-0/+2
Adds an optional array of quirks in the parameters of playback and captures. For now, the only known quirk is a needed workarround for writing sound output on the minnow board. Change-Id: I6c65d110a1f9333ccb77cd8f4eeb9c088d0d2eca Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-12-19Add support for bluetooth telephonyguppy_6.99.3guppy/6.99.36.99.3Thierry Bultel1-65/+161
This adds support for bluetooth telephony. A big rework in the softmixer internals has been mandatory, in order to support dynamic streams creation and deletions. Bluetooth telephony relies on the recent evolutions of bluez-alsa, the most important one being the support of HFP over Ofono. The softmixer opens PCM ioplugs provided by bluez-alsa. Bluetooth SCO needs 2 streams, one for listening and the other for talking. These streams are created upon requests sent by the hal-manager. The hal manager subscribes for bluez-alsa events and request the list of availalble transports. For each "attach" transaction verb, the softmixer maintains a list of the all created objects (sources, sinks, zones, ramps, streams, and more) Additionnally, it creates a new verb when the attach succeeds, that verb is typically something like "sco_XX:XX:XX:XX:XX:XX", and the only supported action at the present time is {"action":"remove"}, that performs all the cleanup of the registered objects. Change-Id: I1b119e6c079e60daf771e63c083a1ef33a39f379 Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-11-08Fix the error string of attach actionsThierry Bultel1-2/+2
Fixes the "syntax-error" to something more explicit (SPEC-1906) Change-Id: I9d4c81ee1d62dcfb99799480c6dc910e2019a791 Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-06-22zones: fixed index mismatch when multiple sound cards are declaredThierry Bultel1-12/+19
Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-06-10Cleanup and added return of previous volume when setting new valuefulup1-3/+3
2018-06-04Fixed compilation issues with gcc >= 7.2Thierry Bultel1-1/+1
Fixed some warnings about uninitialized variables
2018-06-04Move to Dynamic Mixer API (work in progress)Fulup Ar Foll1-80/+116
2018-05-18Implements volume rampingFulup Ar Foll1-5/+5
2018-05-17Initial version with dynamic APIsFulup Ar Foll1-0/+156