From 757c9b407938b65b1e31ccc62217910d4f942dcb Mon Sep 17 00:00:00 2001 From: Jonathan Aillet Date: Mon, 11 Jun 2018 01:45:57 +0200 Subject: Update 4a-hal to work with new 4a-softmixer Update 4a-hal to work with new 4a-softmixer version : - Update audio configuration files to match the configuration format expected by the mixer. - Parse mixer attach response to get information about 'streams', 'playbacks', and 'captures'. store them in new field of controller hal data structure. - Create verb for each returned stream, but only one playback/capture verb even if threre are multiple playbacks/captures returned by the mixer attch verb. - Return 'streams', 'playbacks', and 'captures' when info verb is called. - If info verb is called with a json request, the request is transfered to the mixer. Change-Id: I65593281c34aa91ad87afbf8bebff755cc5cc6d0 Signed-off-by: Jonathan Aillet --- .../4a-hal-controllers-mixer-handler.h | 25 +++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) (limited to '4a-hal/4a-hal-controllers/4a-hal-controllers-mixer-handler.h') diff --git a/4a-hal/4a-hal-controllers/4a-hal-controllers-mixer-handler.h b/4a-hal/4a-hal-controllers/4a-hal-controllers-mixer-handler.h index 74bca88..9218ed4 100644 --- a/4a-hal/4a-hal-controllers/4a-hal-controllers-mixer-handler.h +++ b/4a-hal/4a-hal-controllers/4a-hal-controllers-mixer-handler.h @@ -26,19 +26,34 @@ #include "../4a-hal-utilities/4a-hal-utilities-data.h" -#define MIXER_ATTACH_VERB "create" +#define MIXER_ATTACH_VERB "attach" +#define MIXER_INFO_VERB "info" + +#define HAL_PLAYBACK_VERB "playback" +#define HAL_CAPTURE_VERB "capture" + +// Enum for the type of object sent back by the mixer +enum MixerDataType { + MIXER_DATA_STREAMS = 1, + MIXER_DATA_PLAYBACKS = 2, + MIXER_DATA_CAPTURES = 3 +}; // Enum for the type of error detected enum MixerStatus { MIXER_NO_ERROR=0, MIXER_ERROR_API_UNAVAILABLE=-1, - MIXER_ERROR_NO_STREAMS=-2, - MIXER_ERROR_STREAM_NAME_UNAVAILABLE=-10, - MIXER_ERROR_STREAM_CARDID_UNAVAILABLE=-1000, - MIXER_ERROR_COULDNT_ADD_STREAMS_AS_VERB =-100000, + MIXER_ERROR_DATA_UNAVAILABLE=-2, + MIXER_ERROR_DATA_EMPTY =-3, + MIXER_ERROR_DATA_NAME_UNAVAILABLE=-10, + MIXER_ERROR_DATA_CARDID_UNAVAILABLE=-1000, + MIXER_ERROR_STREAM_VERB_NOT_CREATED =-100000, + MIXER_ERROR_PLAYBACK_VERB_NOT_CREATED =-4, + MIXER_ERROR_CAPTURE_VERB_NOT_CREATED =-5 }; // HAL controllers handle mixer calls functions int HalCtlsAttachToMixer(AFB_ApiT apiHandle); +int HalCtlsGetInfoFromMixer(AFB_ApiT apiHandle, char *apiToCall, json_object *requestJson, json_object **toReturnJ); #endif /* _HAL_CTLS_SOFTMIXER_LINK_INCLUDE_ */ \ No newline at end of file -- cgit 1.2.3-korg