RDK Documentation (Open Sourced RDK Components)
dsAudio.h
Go to the documentation of this file.
1 /*
2  * If not stated otherwise in this file or this component's Licenses.txt file the
3  * following copyright and licenses apply:
4  *
5  * Copyright 2016 RDK Management
6  *
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  * http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18 */
19 
20 /**
21  * @file dsAudio.h
22  */
23 
24 
25 
26 /**
27 * @defgroup devicesettings
28 * @{
29 * @defgroup hal
30 * @{
31 **/
32 
33 
34 #ifndef _DS_AUDIOOUTPORT_H_
35 #define _DS_AUDIOOUTPORT_H_
36 
37 #ifdef __cplusplus
38 extern "C" {
39 #endif
40 
41 #include <sys/types.h>
42 #include "dsError.h"
43 #include "dsTypes.h"
44 
45 typedef void (*dsAudioOutPortConnectCB_t)(dsAudioPortType_t portType, unsigned int uiPortNo, bool isPortCon);
46 
47 /**
48  * @brief Callback function used to notify applications of Audio Format change
49  *
50  * HAL Implementation should call this method to deliver updated Audio Format info
51  * to the application
52  *
53  * @param audioFormat Current audio format of the content playing
54  *
55  *
56  * @return None.
57  */
58 typedef void (*dsAudioFormatUpdateCB_t)(dsAudioFormat_t audioFormat);
59 
60 /** @addtogroup DSHAL_AUDIO_API Device Settings HAL Audio Public API
61  * @ingroup devicesettingshalapi
62  *
63  * Described herein are the DeviceSettings HAL types and functions that are part of the
64  * Audio subsystem. The Audio subsystem manages audio hardware operations.
65  *
66  * @{
67  */
68 
69 /**
70  * @brief Initialize the underlying Audio Port sub-system.
71  *
72  * This function must initialize all the audio specific output ports. It must return
73  * ::dsERR_OPERATION_NOT_SUPPORTED when no audio port is present in the device (e.g. a
74  * headless gateway device).
75  *
76  * @return Device Settings error code
77  * @retval dsERR_NONE Indicates dsAudioPortInit API was successfully called using iarmbus call.
78  * @retval dsERR_GENERAL Indicates error due to general failure.
79  */
81 
82 /**
83  * @brief Get the audio port handle.
84  *
85  * This function returns the handle for the type of audio port requested. Must return
86  * ::dsERR_OPERATION_NOT_SUPPORTED if an unavailable audio port is requested.
87  *
88  * @param[in] type Indicates the type of audio port (HDMI, SPDIF and so on).
89  * @param[in] index Index of audio port (0, 1, ...).
90  * @param[out] handle Indicates pointer to hold the handle of the specified audio port.
91  * @return Device Settings error code
92  * @retval dsERR_NONE Indicates dsGetAudioPort API was successfully called using iarmbus call.
93  * @retval dsERR_GENERAL Indicates error due to general failure.
94  */
95 dsError_t dsGetAudioPort(dsAudioPortType_t type, int index, intptr_t *handle);
96 
97 /**
98  * @brief Get the encoding type of an audio port.
99  *
100  * This function returns the current audio encoding setting for the specified audio port.
101  *
102  * @param[in] handle Handle for the audio port.
103  * @param[out] encoding Pointer to hold the encoding setting of the audio port.
104  *
105  * @return Device Settings error code
106  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates this call is not supported.
107  */
108 dsError_t dsGetAudioEncoding(intptr_t handle, dsAudioEncoding_t *encoding);
109 
110 /**
111  * @brief Get the current audio format.
112  *
113  * This function returns the current audio format..
114  *
115  * @param[in] handle: Handle for the audio port
116  * @param[out] audioFormat : Pointer to hold the audio format.
117  *
118  * @return Device Settings error code
119  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates dsGetAudioFormat call is not implemented.
120  */
121 dsError_t dsGetAudioFormat(intptr_t handle, dsAudioFormat_t *audioFormat);
122 
123 /**
124  * @brief Get the audio compressionof an audio port.
125  *
126  * This function returns the audio compression setting used in the specified audio port.
127  *
128  * @param[in] handle Handle for the audio port.
129  * @param[out] compression Pointer to hold the compression setting of the specified audio port.
130  *
131  * @return Device Settings error code
132  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates this call is not supported.
133  */
134 dsError_t dsGetAudioCompression(intptr_t handle, int *compression);
135 
136 /**
137  * @brief Get the Dialog Enhancement level of an audio port.
138  *
139  * This function returns the audio compression setting used in the specified audio port.
140  *
141  * @param[in] handle Handle for the audio port.
142  * @param[out] Dialog Enhancement level.
143  *
144  * @return Device Settings error code
145  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates this call is not supported.
146  */
147 dsError_t dsGetDialogEnhancement(intptr_t handle, int *level);
148 
149 /**
150  * @brief Get the dolby audio mode status.
151  *
152  * This function returns the dolby audio mode status used in the specified audio port.
153  *
154  * @param[in] handle Handle for the audio port.
155  * @param[out] Dolby volume mode.
156  *
157  * @return Device Settings error code
158  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates this call is not supported.
159  */
160 dsError_t dsGetDolbyVolumeMode(intptr_t handle, bool *mode);
161 
162 /**
163  * @brief Get the Intelligent Equalizer Mode.
164  *
165  * This function returns the Intelligent Equalizer Mode setting used in the specified audio port.
166  *
167  * @param[in] handle Handle for the audio port.
168  * @param[out] *mode. Intelligent Equalizer mode: 0 = Off, 1 = Open, 2 = Rich, 3 = focused,
169  * 4 = balanced, 5 = warm, 6 = detailed
170  *
171  * @return Device Settings error code
172  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates this call is not supported.
173  */
174 dsError_t dsGetIntelligentEqualizerMode(intptr_t handle, int *mode);
175 
176 /**
177  * @brief To get the Dolby volume leveller
178  *
179  * This function will get the Volume leveller value used in a given audio port
180  *
181  * @param [in] handle Handle for the Output Audio port
182  * @param [out] *volLeveller Volume Leveller setting
183  * @return dsError_t Error code.
184  */
185 
186 dsError_t dsGetVolumeLeveller(intptr_t handle, dsVolumeLeveller_t* volLeveller);
187 
188 
189 /**
190  * @brief To get the audio Bass
191  *
192  * This function will get the Bass used in a given audio port
193  *
194  * @param [in] handle Handle for the Output Audio port
195  * @param [out] *boost Bass Enhancer boost value
196  * @return dsError_t Error code.
197  */
198 
199 dsError_t dsGetBassEnhancer(intptr_t handle, int *boost);
200 
201 
202 /**
203  * @brief To get the audio Surround Decoder
204  *
205  * This function will get enable/disable status of surround decoder
206  *
207  * @param [in] handle Handle for the Output Audio port
208  * @param [out] *enabled Surround Decoder enable/disable
209  * @return dsError_t Error code.
210  */
211 
212 dsError_t dsIsSurroundDecoderEnabled(intptr_t handle, bool *enabled);
213 
214 
215 /**
216  * @brief To get the DRC Mode
217  *
218  * This function will get the Dynamic Range Control used in a given audio port
219  *
220  * @param [in] handle Handle for the Output Audio port
221  * @param [out] *mode line/RF mode
222  * @return dsError_t Error code.
223  */
224 
225 dsError_t dsGetDRCMode(intptr_t handle, int *mode);
226 
227 
228 /**
229  * @brief To get the audio Surround Virtualizer level
230  *
231  * This function will get the Surround Virtualizer level used in a given audio port
232  *
233  * @param [in] handle Handle for the Output Audio port
234  * @param [out] *virtualizer Surround virtualizer setting
235  * @return dsError_t Error code.
236  */
237 
238 dsError_t dsGetSurroundVirtualizer(intptr_t handle, dsSurroundVirtualizer_t *virtualizer);
239 
240 
241 /**
242  * @brief To get the audio Media intelligent Steering
243  *
244  * This function will get the Media Intelligent Steerinf
245  *
246  * @param [in] handle Handle for the Output Audio port
247  * @param [out] *enabled enable/disable MI Steering
248  * @return dsError_t Error code.
249  */
250 
251 dsError_t dsGetMISteering(intptr_t handle, bool *enabled);
252 
253 
254 /**
255  * @brief Get the Graphic Equalizer Mode.
256  *
257  * This function returns the Graphic Equalizer Mode setting used in the specified audio port.
258  *
259  * @param[in] handle Handle for the audio port.
260  * @param[out] .
261  *
262  * @return Device Settings error code
263  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates this call is not supported.
264  */
265 dsError_t dsGetGraphicEqualizerMode(intptr_t handle, int *mode);
266 
267 
268 /**
269  * @brief To get the supported MS12 audio profiles
270  *
271  * This function will get the list of supported ms12 audio profiles
272  *
273  * @param [in] handle Handle for the Output Audio port
274  * @param [out] *profiles List of supported audio profiles
275  * @return dsError_t Error code.
276  */
277 
279 
280 /**
281  * @brief To get current audio profile selection
282  *
283  * This function will get the current audio profile configured
284  *
285  * @param [in] handle Handle for the Output Audio port
286  * @param [out] *profile Audio profile configured currently
287  * @return dsError_t Error code.
288  */
289 
290 dsError_t dsGetMS12AudioProfile(intptr_t handle, char *profile);
291 
292 
293 /**
294  * @brief Get the supported ARC types of the connected ARC/eARC device
295  *
296  * This function gets the supported ARC types of the connected device on ARC/eARC port.
297  *
298  * @param[in] handle Handle for the HDMI ARC/eARC port.
299  * @param[out] *types OR-ed value of supported ARC types
300  *
301  * @return Device Settings error code
302  * @retval dsERR_NONE Indicates dsGetSupportedARCTypes was successfully called using iarmbus.
303  */
304 
305 dsError_t dsGetSupportedARCTypes(intptr_t handle, int *types);
306 
307 
308 /**
309  * @brief Set Short Audio Descriptor retrieved from CEC for the connected ARC device
310  *
311  * This function sets the Short Audio Descriptor based on best available options
312  * of Audio capabilities supported by connected ARC device. Required when ARC output
313  * mode is Auto
314  *
315  * @param[in] handle Handle for the HDMI ARC/eARC port.
316  * @param[in] All SADs retrieved from connected ARC device
317  *
318  * @return Device Settings error code
319  * @retval dsERR_NONE Indicates dsGetSupportedARCTypes was successfully called using iarmbus.
320  */
321 
322 dsError_t dsAudioSetSAD(intptr_t handle, dsAudioSADList_t sad_list);
323 
324 /**
325  * @brief enable/disable ARC/EARC and route audio to connected device
326  *
327  * This function enables/disables ARC/EARC and routes audio to connected device.
328  *
329  * @param[in] handle Handle for the HDMI ARC/eARC port.
330  * @param[in] arcStatus to enable/disable ARC/eARC feature
331  *
332  * @return Device Settings error code
333  * @retval dsERR_NONE Indicates dsAudioEnableARC was successfully called using iarmbus.
334  */
335 
336 dsError_t dsAudioEnableARC(intptr_t handle, dsAudioARCStatus_t arcStatus);
337 
338 /**
339  * @brief Get the stereo mode of an audio port.
340  *
341  * This function gets the stereo mode setting for a specified audio port.
342  *
343  * @param[in] handle Handle for the audio port.
344  * @param[out] stereoMode Pointer to hold the stereo mode setting of the
345  * specified audio port.
346  *
347  * @return Device Settings error code
348  * @retval dsERR_NONE Indicates dsGetStereoMode was successfully called using iarmbus.
349  */
350 dsError_t dsGetStereoMode(intptr_t handle, dsAudioStereoMode_t *stereoMode);
351 
352 /**
353  * @brief This function is used to get the current auto mode setting of the specified
354  * audio port.
355  *
356  * @param[in] handle Handle for the audio port.
357  * @param[out] autoMode Pointer to hold the auto mode setting of the
358  * specified audio port.
359  *
360  * @return Device Settings error code
361  * @retval dsERR_NONE Indicates dsGetStereoAuto was successfully called using iarmbus.
362  */
363 dsError_t dsGetStereoAuto(intptr_t handle, int *autoMode);
364 
365 /**
366  * @brief Get the audio gain of an audio port.
367  *
368  * This function returns the current audio gain for the specified audio port.
369  *
370  * @param[in] handle Handle for the audio port.
371  * @param[out] gain Pointer to hold the gain value of the specified audio port.
372  *
373  * @return Device Settings error code
374  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates dsGetAudioGain call is not implemented.
375  */
376 dsError_t dsGetAudioGain(intptr_t handle, float *gain);
377 
378 /**
379  * @brief Get the current audio dB level of an audio port.
380  *
381  * This function returns the current audio dB level for the specified audio port.
382  *
383  * @param[in] handle Handle for the audio port.
384  * @param[out] db Pointer to hold the dB value of the specified audio port.
385  *
386  * @return Device Settings error code
387  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates dsGetAudioGain call is not implemented.
388  */
389 dsError_t dsGetAudioDB(intptr_t handle, float *db);
390 
391 /**
392  * @brief Get the current audio volume level of an audio port.
393  *
394  * This function returns the current audio volume level for the specified audio port.
395  *
396  * @param[in] handle Handle for the audio port.
397  * @param[out] level Pointer to hold the audio level value of the specified audio port.
398  *
399  * @return Device Settings error code
400  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates dsGetAudioLevel call is not implemented.
401  */
402 dsError_t dsGetAudioLevel(intptr_t handle, float *level);
403 
404 /**
405  * @brief Get the maximum audio dB level of an audio port.
406  *
407  * This function returns the maximum audio dB level supported by the specified audio port.
408  *
409  * @param[in] handle Handle for the audio port.
410  * @param[out] maxDb Pointer to hold the maximum audio dB value supported by the specified audio port.
411  *
412  * @return Device Settings error code
413  * @retval dsERR_NONE Indicates the call was successful.
414  */
415 dsError_t dsGetAudioMaxDB(intptr_t handle, float *maxDb);
416 
417 /**
418  * @brief Get the minimum audio dB level of an audio port.
419  *
420  * This function returns the minimum audio dB level supported by the specified audio port.
421  *
422  * @param[in] handle Handle for the audio port.
423  * @param[out] minDb Pointer to hold the minimum audio dB value supported by the specified audio port.
424  *
425  * @return Device Settings error code
426  * @retval dsERR_NONE Indicates the call was successful.
427  */
428 dsError_t dsGetAudioMinDB(intptr_t handle, float *minDb);
429 
430 /**
431  * @brief Get the optimal audio level of an audio port.
432  *
433  * This function returns the optimal audio level (dB) for the specified audio port.
434  *
435  * @param[in] handle Handle for the audio port.
436  * @param[out] optimalLevel Pointer to hold the optimal level value of the specified audio port.
437  *
438  * @return Device Settings error code
439  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates dsGetAudioOptimalLevel call is not implemented.
440  */
441 dsError_t dsGetAudioOptimalLevel(intptr_t handle, float *optimalLevel);
442 
443 /**
444  * @brief Get the audio delay in milliseconds
445  *
446  * This function will get the audio delay in milliseconds.
447  *
448  * @param [in] handle Handle for the Output Audio port
449  * @param [out] *audioDelayMs Audio delay in milliseconds
450  * @return dsError_t Error code.
451  */
452 dsError_t dsGetAudioDelay(intptr_t handle, uint32_t *audioDelayMs);
453 
454 /**
455  * @brief Get the audio delay offset in milliseconds
456  *
457  * This function will get the audio delay offset in milliseconds.
458  *
459  * @param [in] handle Handle for the Output Audio port
460  * @param [out] *audioDelayOffsetMs Audio delay offset in milliseconds
461  * @return dsError_t Error code.
462  */
463 dsError_t dsGetAudioDelayOffset(intptr_t handle, uint32_t *audioDelayOffsetMs);
464 
465 /**
466  * @brief Set the audio ATMOS outout mode
467  *
468  * This function will set the Audio Atmos output mode
469  *
470  * @param [in] handle Handle for the Output Audio port
471  * @param [in] enable set audio ATMOS output mode
472  * @return dsError_t Error code.
473  */
474 dsError_t dsSetAudioAtmosOutputMode(intptr_t handle, bool enable);
475 
476 /**
477  * @brief Get the sink device ATMOS capability
478  *
479  * This function will get the sink device ATMOS capability
480  *
481  * @param [in] handle Handle for the Output Audio port
482  * @param [out] *capability sink device ATMOS capability
483  * @return dsError_t Error code.
484  */
485 dsError_t dsGetSinkDeviceAtmosCapability(intptr_t handle, dsATMOSCapability_t *capability);
486 
487 /**
488  * @brief Get the loop-through mode of an audio port.
489  *
490  * This function is used to check if the audio port is configured for loop-through.
491  *
492  * @param[in] handle Handle for the audio port.
493  * @param[out] loopThru Pointer to hold the loop-through setting of the specified audio.
494  *
495  * @return Device Settings error code
496  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates dsIsAudioLoopThru call is not implemented.
497  */
498 dsError_t dsIsAudioLoopThru(intptr_t handle, bool *loopThru);
499 
500 /**
501  * @brief Get the audio mute status of an audio port.
502  *
503  * This function is used to check whether the audio on a specified port is muted or not.
504  *
505  * @param[in] handle Handle for the audio port.
506  * @param[out] muted Pointer to hold the mute setting of the specified audio port.
507  *
508  * @return Device Settings error code
509  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates dsIsAudioMute call is not implemented.
510  */
511 dsError_t dsIsAudioMute(intptr_t handle, bool *muted);
512 
513 
514 /**
515  * @brief This function indicates whether the specified Audio port is enabled or not.
516  *
517  * @param[in] handle Handle of the Audio port.
518  * @param[out] enabled The address of a location to hold the Audio port enable state
519  * on return (@a true when port is enabled, @a false otherwise).
520  * @return Device Settings error code
521  * @retval dsERR_NONE If sucessfully dsIsAudioPortEnabled api has been called using IARM support.
522  * @retval dsERR_GENERAL General failure .
523  */
524 dsError_t dsIsAudioPortEnabled(intptr_t handle, bool *enabled);
525 
526 
527 /**
528  * @brief This function is used to enable or disable the specified Audio port.
529  *
530  * @param[in] handle Handle of the Audio port.
531  * @param[in] enabled Flag to control the Audio port state
532  * (@a true to enable, @a false to disable)
533  * @return Device Settings error code
534  * @retval dsERR_NONE If sucessfully dsEnableAudioPort api has been called using IARM support.
535  * @retval dsERR_GENERAL General failure.
536  */
537 dsError_t dsEnableAudioPort(intptr_t handle, bool enabled);
538 
539 /**
540  * @brief This function is used to enable or disable MS12 DAPV2 and DE feature.
541  *
542  * @param[in] handle Handle of the Audio port.
543  * @param[in] feature Enums for MS12 features
544  * @param[in] enable Flag to control the MS12 features
545  * (@a true to enable, @a false to disable)
546  * @return Device Settings error code
547  * @retval dsERR_NONE If API executed successfully.
548  * @retval dsERR_GENERAL General failure.
549  */
550 dsError_t dsEnableMS12Config(intptr_t handle, dsMS12FEATURE_t feature,const bool enable);
551 
552 /**
553  * @brief This function is used to enable or disable Loudness Equivalence feature.
554  *
555  * @param[in] handle Handle of the Audio port.
556  * @param[in] enable Flag to control the LE features
557  * (@a true to enable, @a false to disable)
558  * @return Device Settings error code
559  * @retval dsERR_NONE If API executed successfully.
560  * @retval dsERR_GENERAL General failure.
561  */
562 dsError_t dsEnableLEConfig(intptr_t handle, const bool enable);
563 
564 /**
565  * @brief To Get LE configuration
566  *
567  * This function is used to Get LE features
568  *
569  * @param [in] handle Handle for the Output Audio port
570  * @param [in] *enable true if LE is enabled else False
571  * @return dsError_t Error code.
572  */
573 dsError_t dsGetLEConfig(intptr_t handle, bool *enable);
574 
575 /**
576  * @brief Set the encoding type of an audio port.
577  *
578  * This function sets the audio encoding type to be used on the specified audio port.
579  *
580  * @param [in] handle Handle for the audio output port.
581  * @param [in] encoding The encoding type to be used on the audio port.
582  * @return Device Settings error code
583  * @retval dsERR_NONE Indicates the call was successful.
584  */
585 dsError_t dsSetAudioEncoding(intptr_t handle, dsAudioEncoding_t encoding);
586 
587 /**
588  * @brief Set the audio compression of an audio port.
589  *
590  * This function sets the audio compression type to be used on the specified audio port.
591  *
592  * @param[in] handle Handle for the audio port.
593  * @param[in] compression Indicates the compression type to be used on the audio port.
594  *
595  * @return dsERR_NONE Indicates the call was successful.
596  */
597 dsError_t dsSetAudioCompression(intptr_t handle, int compression);
598 
599 /**
600  * @brief Get the Dialog Enhancement level of an audio port.
601  *
602  * This function returns the audio compression setting used in the specified audio port.
603  *
604  * @param[in] handle Handle for the audio port.
605  * @param[out] Dialog Enhancement level.
606  *
607  * @return Device Settings error code
608  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates this call is not supported.
609  */
610 dsError_t dsSetDialogEnhancement(intptr_t handle, int level);
611 
612 /**
613  * @brief Get the dolby audio mode status.
614  *
615  * This function returns the dolby audio mode status used in the specified audio port.
616  *
617  * @param[in] handle Handle for the audio port.
618  * @param[out] Dolby volume mode.
619  *
620  * @return Device Settings error code
621  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates this call is not supported.
622  */
623 dsError_t dsSetDolbyVolumeMode(intptr_t handle, bool mode);
624 
625 /**
626  * @brief Set the Intelligent Equalizer Mode.
627  *
628  * This function returns the Intelligent Equalizer Mode setting used in the specified audio port.
629  *
630  * @param[in] handle Handle for the audio port.
631  * @param[in] mode. Intelligent Equalizer mode: 0 = Off, 1 = Open, 2 = Rich, 3 = focused,
632  * 4 = balanced, 5 = warm, 6 = detailed
633  * @param[out] .
634  *
635  * @return Device Settings error code
636  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates this call is not supported.
637  */
638 dsError_t dsSetIntelligentEqualizerMode(intptr_t handle, int mode);
639 
640 /**
641  * @brief To set the Dolby volume leveller
642  *
643  * This function will set the Volume leveller value used in a given audio port
644  *
645  * @param [in] handle Handle for the Output Audio port
646  * @param [in] volLeveller Volume Leveller setting
647  * @return dsError_t Error code.
648  */
649 
650 dsError_t dsSetVolumeLeveller(intptr_t handle, dsVolumeLeveller_t volLeveller);
651 
652 
653 /**
654  * @brief To set the audio Bass
655  *
656  * This function will set the Bass used in a given audio port
657  *
658  * @param [in] handle Handle for the Output Audio port
659  * @param [in] boost Bass Enhancer boost value
660  * @return dsError_t Error code.
661  */
662 
663 dsError_t dsSetBassEnhancer(intptr_t handle, int boost);
664 
665 
666 /**
667  * @brief To set the audio Surround Decoder
668  *
669  * This function will enable/disable surround decoder
670  *
671  * @param [in] handle Handle for the Output Audio port
672  * @param [in] enabled Surround Decoder enable/disable
673  * @return dsError_t Error code.
674  */
675 
676 dsError_t dsEnableSurroundDecoder(intptr_t handle, bool enabled);
677 
678 
679 /**
680  * @brief To set the DRC Mode
681  *
682  * This function will set the Dynamic Range Control used in a given audio port
683  *
684  * @param [in] handle Handle for the Output Audio port
685  * @param [in] mode line/RF mode
686  * @return dsError_t Error code.
687  */
688 
689 dsError_t dsSetDRCMode(intptr_t handle, int mode);
690 
691 
692 /**
693  * @brief To set the audio Surround Virtualizer level
694  *
695  * This function will set the Surround Virtualizer level used in a given audio port
696  *
697  * @param [in] handle Handle for the Output Audio port
698  * @param [in] virtualizer Surround virtualizer setting
699  * @return dsError_t Error code.
700  */
701 
702 dsError_t dsSetSurroundVirtualizer(intptr_t handle, dsSurroundVirtualizer_t virtualizer);
703 
704 
705 /**
706  * @brief To set the audio Media intelligent Steering
707  *
708  * This function will set the Media Intelligent Steerinf
709  *
710  * @param [in] handle Handle for the Output Audio port
711  * @param [in] enabled enable/disable MI Steering
712  * @return dsError_t Error code.
713  */
714 
715 dsError_t dsSetMISteering(intptr_t handle, bool enabled);
716 
717 
718 /**
719  * @brief Get the Graphic Equalizer Mode.
720  *
721  * This function returns the Graphic Equalizer Mode setting used in the specified audio port.
722  *
723  * @param[in] handle Handle for the audio port.
724  * @param[out] .
725  *
726  * @return Device Settings error code
727  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates this call is not supported.
728  */
729 dsError_t dsSetGraphicEqualizerMode(intptr_t handle, int mode);
730 
731 
732 /**
733  * @brief To set the ms12 audio profile
734  *
735  * This function will configure the user selected ms12 audio profile
736  *
737  * @param [in] handle Handle for the Output Audio port
738  * @param [in] *profile Audio profile name
739  * @return dsError_t Error code.
740  */
741 
742 dsError_t dsSetMS12AudioProfile(intptr_t handle, const char* profile);
743 
744 
745 /**
746  * @brief Set the stereo mode of an audio port.
747  *
748  * This function sets the stereo mode to be used on the specified audio port.
749  *
750  * @param[in] handle Handle for the audio output port.
751  * @param[in] mode Indicates the stereo mode to be used on audio port.
752  *
753  * @return Device Settings error code
754  * @retval dsERR_NONE Indicates the dsSetStereoMode API was successfully called using iarmbus call.
755  * @retval dsERR_GENERAL Indicates error due to general failure.
756  */
757 dsError_t dsSetStereoMode(intptr_t handle, dsAudioStereoMode_t mode);
758 
759 /**
760  * @brief This function sets the auto mode to be used on the specified audio port.
761  *
762  * @param[in] handle Handle for the audio output port.
763  * @param[in] autoMode Indicates the auto mode to be used on audio port.
764  *
765  * @return Device Settings error code
766  * @retval dsERR_NONE Indicates the dsSetStereoAuto API was successfully called using iarmbus call.
767  * @retval dsERR_GENERAL Indicates error due to general failure.
768  */
769 dsError_t dsSetStereoAuto(intptr_t handle, int autoMode);
770 
771 /**
772  * @brief Set the audio gain of an audio port.
773  *
774  * This function sets the gain to be used on the specified audio port.
775  *
776  * @param[in] handle Handle for the audio output port.
777  * @param[in] gain The gain to be used on the audio port.
778  *
779  * @return Device Settings error code
780  * @retval dsERR_NONE Indicates the call was successful.
781  */
782 dsError_t dsSetAudioGain(intptr_t handle, float gain);
783 
784 /**
785  * @brief This function sets the dB level to be used on the specified audio port.
786  *
787  * @param [in] handle Handle for the audio output port.
788  * @param [in] db The dB level to be used on the audio port.
789  * @return Error Code.
790  * @retval ::dsError_t
791  */
792 dsError_t dsSetAudioDB(intptr_t handle, float db);
793 
794 /**
795  * @brief This function sets the audio volume level to be used on the specified audio port.
796  *
797  * @param [in] handle Handle for the audio output port.
798  * @param [in] level The volume level to be used on the audio port.
799  * @return Error Code.
800  * @retval ::dsError_t
801  */
802 dsError_t dsSetAudioLevel(intptr_t handle, float level);
803 
804 /**
805  * @brief This function sets the audio ducking level to be used on the specified audio port based on the audio output mode.
806  *
807  * @param [in] handle Handle for the audio output port.
808  * @param [in] action action type to start or stop ducking.
809  * @param [in] type ducing type is absolute or relative to current volume level.
810  * @param [in] level The volume level to be used on the audio port if output mode is expoert mode this will mute the audio.
811  * @return Error Code.
812  * @retval ::dsError_t
813  */
814 dsError_t dsSetAudioDucking(intptr_t handle, dsAudioDuckingAction_t action, dsAudioDuckingType_t, const unsigned char level);
815 
816 /**
817  * @brief Set loop-through mode of an audio port.
818  *
819  * This function enables/disables audio loop-through on the specified audio port.
820  *
821  * @param[in] handle Handle for the audio output port.
822  * @param[in] loopThru Boolean flag to enable/disable loop-through.
823  *
824  * @return Device Settings error code
825  * @retval dsERR_NONE Indicates the call was successful.
826  */
827 dsError_t dsEnableLoopThru(intptr_t handle, bool loopThru);
828 
829 /**
830  * @brief Mute or un-mute an audio port.
831  *
832  * This function mutes or unmutes the specified audio output port.
833  *
834  * @param[in] handle Handle for the audio output port.
835  * @param[in] mute Boolean flag to mute/un-mute the audio port.
836  *
837  * @return Device Settings error code
838  * @retval dsERR_NONE Indicates dsAudioPortInit API was successfully called using iarmbus call.
839  * @retval dsERR_GENERAL Indicates error due to general failure.
840  */
841 dsError_t dsSetAudioMute(intptr_t handle, bool mute);
842 
843 /**
844  * @brief This function is used to check whether the audio port supports Dolby MS11 Multistream Decode
845  *
846  * @param[in] handle Handle for the audio port.
847  * @param[out] Address to hold the MS11 Multistream Decode setting of the specified audio port.
848  *
849  * @return Device Settings error code
850  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates dsIsAudioMSDecode call is not implemented.
851  */
852 dsError_t dsIsAudioMSDecode(intptr_t handle, bool *HasMS11Decode);
853 
854 /**
855  * @brief This function is used to check whether the audio port supports Dolby MS12 Multistream Decode
856  *
857  * @param[out] Address to hold the MS12 Multistream Decode setting of the specified audio port.
858  *
859  * @return Device Settings error code
860  * @retval dsERR_OPERATION_NOT_SUPPORTED Indicates dsIsAudioMS12Decode call is not implemented.
861  */
862 dsError_t dsIsAudioMS12Decode(intptr_t handle, bool *HasMS12Decode);
863 
864 /**
865  * @brief Set the audio delay in milliseconds
866  *
867  * This function will set the audio delay in milliseconds
868  *
869  * @param [in] handle Handle for the Output Audio port
870  * @param [in] audioDelayMs Amount of milliseconds of delay
871  * @return dsError_t Error code.
872  */
873 dsError_t dsSetAudioDelay(intptr_t handle, const uint32_t audioDelayMs);
874 
875 /**
876  * @brief Set the audio delay offset in milliseconds
877  *
878  * This function will set the audio delay offset in milliseconds
879  *
880  * @param [in] handle Handle for the Output Audio port
881  * @param [in] audioDelayOffsetMs Amount of milliseconds of delay offset
882  * @return dsError_t Error code.
883  */
884 dsError_t dsSetAudioDelayOffset(intptr_t handle, const uint32_t audioDelayOffsetMs);
885 
886 /**
887  * @brief Terminate the Audio Port sub-system.
888  *
889  * This function will terminate the usage of audio output ports by resetting the data
890  * structures used within this module and release the audio port specific handles.
891  *
892  * @return Device Settings error code
893  * @retval dsERR_NONE Indicates dsAudioPortInit API was successfully called using iarmbus call.
894  * @retval dsERR_GENERAL Indicates error due to general failure.
895  */
897 
898 
899 dsError_t dsAudioOutIsConnected(intptr_t handle, bool* pisCon);
900 
901 dsError_t dsAudioOutRegisterConnectCB(dsAudioOutPortConnectCB_t CBFunc);
902 
903 /**
904  * @brief Register for the Audio Format Update Event
905  *
906  * This function is used to register for the the Audio Format Update Event
907  *
908  * @param[in] cbFun Audio format update callback function.
909  * @return Device Settings error code
910  * @retval ::dsError_t
911  */
913 
914 /**
915  * @brief To find the HDR capabilities of SoC
916  *
917  * This function is used to check which HDR capabilities the SoC supports
918  *
919  * @param [in] handle Handle for the audio device (audio decoder)
920  * @param [out] *capabilities OR-ed value of supported HDR standards.
921  * @return dsError_t Error code.
922  */
923 dsError_t dsGetAudioCapabilities(intptr_t handle, int *capabilities);
924 
925 /**
926  * @brief To find the HDR capabilities of SoC
927  *
928  * This function is used to check which HDR capabilities the SoC supports
929  *
930  * @param [in] handle Handle for the audio device (audio decoder)
931  * @param [out] *capabilities OR-ed value of supported HDR standards.
932  * @return dsError_t Error code.
933  */
934 dsError_t dsGetMS12Capabilities(intptr_t handle, int *capabilities);
935 
936 /**
937  * @brief to reset the Dialog Enhancement
938  *
939  * This function is used to reset the Dialog Enhancement
940  *
941  * @param [in] handle Handle for the audio device (audio decoder)
942  * @return dsError_t Error code.
943  */
944 dsError_t dsResetDialogEnhancement(intptr_t handle);
945 
946 /**
947  * @brief to reset the reset the audio Bass
948  *
949  * This function is used to reset reset the audio Bass
950  *
951  * @param [in] handle Handle for the audio device (audio decoder)
952  * @return dsError_t Error code.
953  */
954 dsError_t dsResetBassEnhancer(intptr_t handle);
955 
956 /**
957  * @brief to reset the audio Surround Virtualizer level
958  *
959  * This function is used to reset the audio Surround Virtualizer level
960  *
961  * @param [in] handle Handle for the audio device (audio decoder)
962  * @return dsError_t Error code.
963  */
964 dsError_t dsResetSurroundVirtualizer(intptr_t handle);
965 
966 /**
967  * @brief to reset the Dolby volume leveller
968  *
969  * This function is used to reset the Dolby volume leveller
970  *
971  * @param [in] handle Handle for the audio device (audio decoder)
972  * @return dsError_t Error code.
973  */
974 dsError_t dsResetVolumeLeveller(intptr_t handle);
975 
976 /**
977  * @brief To Set/override a specific audio setting in
978  * a specific profile
979  *
980  * This function will override a specific audio setting in a
981  * specific profile
982  *
983  * @param [in] handle Handle for the Output Audio port
984  * @param [in] *profileState possible values ADD and REMOVE setting from the persistence
985  * @param [in] *profileName ProfileName
986  * @param [in] *profileSettingsName MS12 property name
987  * @param [in] *profileSettingValue MS12 property value
988  * @return dsError_t Error code.
989  */
990 
991 dsError_t dsSetMS12AudioProfileSetttingsOverride(intptr_t handle,const char* profileState,const char* profileName,
992  const char* profileSettingsName,const char* profileSettingValue);
993 
994 
995 /**
996  * @brief Enable/Disable Associated Audio Mixing
997  *
998  * This function will Enable/Disable Associated Audio Mixing
999  *
1000  * @param [in] handle Handle for the Output Audio port (Not Used as setting is not port specific)
1001  * @param [in] mixing mixing enable/disable
1002  * @return dsError_t Error code.
1003  */
1004 dsError_t dsSetAssociatedAudioMixing(intptr_t handle, bool mixing);
1005 
1006 
1007 /**
1008  * @brief To get the Associated Audio Mixing status - enabled/disabled
1009  *
1010  * This function will get the Associated Audio Mixing status
1011  *
1012  * @param [in] handle Handle for the Output Audio port (Not Used as setting is not port specific)
1013  * @param [out] *mixing Associated Audio Mixing status
1014  * @return dsError_t Error code.
1015  */
1016 
1017 dsError_t dsGetAssociatedAudioMixing(intptr_t handle, bool *mixing);
1018 
1019 
1020 /**
1021  * @brief To set the mixerbalance betweeen main and associated audio
1022  *
1023  * This function will set the mixerbalance betweeen main and associated audio
1024  *
1025  * @param [in] handle Handle for the Output Audio port (Not Used as setting is not port specific)
1026  * @param [in] mixerbalance int value -32(mute associated) to +32(mute main)
1027  * @return dsError_t Error code.
1028  */
1029 
1030 dsError_t dsSetFaderControl(intptr_t handle, int mixerbalance);
1031 
1032 
1033 /**
1034  * @brief To get the mixerbalance betweeen main and associated audio
1035  *
1036  * This function will get the mixerbalance betweeen main and associated audio
1037  *
1038  * @param [in] handle Handle for the Output Audio port (Not Used as setting is not port specific)
1039  * @param [out] *mixerbalance int value -32(mute associated) to +32(mute main)
1040  * @return dsError_t Error code.
1041  */
1042 
1043 dsError_t dsGetFaderControl(intptr_t handle, int* mixerbalance);
1044 
1045 
1046 
1047 /**
1048  * @brief To set AC4 Primary language
1049  *
1050  * This function will set AC4 Primary language
1051  *
1052  * @param [in] handle Handle for the Output Audio port (Not Used as setting is not port specific)
1053  * @param [in] pLang char* 3 letter lang code should be used as per ISO 639
1054  * @return dsError_t Error code.
1055  */
1056 
1057 dsError_t dsSetPrimaryLanguage(intptr_t handle, const char* pLang);
1058 
1059 
1060 /**
1061  * @brief To get AC4 Primary language
1062  *
1063  * This function will get AC4 Primary language
1064  *
1065  * @param [in] handle Handle for the Output Audio port (Not Used as setting is not port specific)
1066  * @param [out] *pLang char* 3 letter lang code should be used as per ISO 639
1067  * @return dsError_t Error code.
1068  */
1069 
1070 dsError_t dsGetPrimaryLanguage(intptr_t handle, char* pLang);
1071 
1072 
1073 /**
1074  * @brief To set AC4 Secondary language
1075  *
1076  * This function will set AC4 Secondary language
1077  *
1078  * @param [in] handle Handle for the Output Audio port (Not Used as setting is not port specific)
1079  * @param [in] pLang char* 3 letter lang code should be used as per ISO 639
1080  * @return dsError_t Error code.
1081  */
1082 
1083 dsError_t dsSetSecondaryLanguage(intptr_t handle, const char* sLang);
1084 
1085 
1086 /**
1087  * @brief To get AC4 Secondary language
1088  *
1089  * This function will get AC4 Secondary language
1090  *
1091  * @param [in] handle Handle for the Output Audio port (Not Used as setting is not port specific)
1092  * @param [out] *pLang char* 3 letter lang code should be used as per ISO 639
1093  * @return dsError_t Error code.
1094  */
1095 
1096 dsError_t dsGetSecondaryLanguage(intptr_t handle, char* sLang);
1097 
1098 /**
1099  * @brief Get the audio HDMI ARC port ID for each platform
1100  *
1101  * This function will get audio HDMI ARC port ID
1102  *
1103  * @param [in] portId get audio HDMI ARC port ID
1104  * @return dsError_t Error code.
1105  */
1106 dsError_t dsGetHDMIARCPortId(int *portId);
1107 
1108 
1109 /**
1110  * @}
1111  */
1112 
1113 #ifdef __cplusplus
1114 }
1115 #endif
1116 #endif /* _DS_AUDIOOUTPORT_H_ */
1117 
1118 
1119 /** @} */
1120 /** @} */
dsGetAudioCompression
dsError_t dsGetAudioCompression(intptr_t handle, int *compression)
Get the audio compressionof an audio port.
Definition: dsAudio.c:792
dsEnableLoopThru
dsError_t dsEnableLoopThru(intptr_t handle, bool loopThru)
Set loop-through mode of an audio port.
Definition: dsAudio.c:558
_dsAudioARCStatus_t
Structure that defines ARC status for the HDMI ARC/EARC port.
Definition: dsTypes.h:307
dsGetAudioDB
dsError_t dsGetAudioDB(intptr_t handle, float *db)
Get the current audio dB level of an audio port.
Definition: dsAudio.c:222
_dsAudioSADList_t
Definition: dsTypes.h:299
dsIsSurroundDecoderEnabled
dsError_t dsIsSurroundDecoderEnabled(intptr_t handle, bool *enabled)
To get the audio Surround Decoder.
Definition: dsAudio.c:969
dsSetAudioCompression
dsError_t dsSetAudioCompression(intptr_t handle, int compression)
Set the audio compression of an audio port.
Definition: dsAudio.c:737
dsSetAssociatedAudioMixing
dsError_t dsSetAssociatedAudioMixing(intptr_t handle, bool mixing)
Enable/Disable Associated Audio Mixing.
Definition: dsAudio.c:1248
dsSetMISteering
dsError_t dsSetMISteering(intptr_t handle, bool enabled)
To set the audio Media intelligent Steering.
Definition: dsAudio.c:1118
dsGetAudioEncoding
dsError_t dsGetAudioEncoding(intptr_t handle, dsAudioEncoding_t *encoding)
Get the encoding type of an audio port.
Definition: dsAudio.c:95
dsSetStereoMode
dsError_t dsSetStereoMode(intptr_t handle, dsAudioStereoMode_t mode)
Set the stereo mode of an audio port.
dsGetSupportedARCTypes
dsError_t dsGetSupportedARCTypes(intptr_t handle, int *types)
Get the supported ARC types of the connected ARC/eARC device.
Definition: dsAudio.c:1504
dsEnableAudioPort
dsError_t dsEnableAudioPort(intptr_t handle, bool enabled)
This function is used to enable or disable the specified Audio port.
dsSetBassEnhancer
dsError_t dsSetBassEnhancer(intptr_t handle, int boost)
To set the audio Bass.
Definition: dsAudio.c:951
dsGetIntelligentEqualizerMode
dsError_t dsGetIntelligentEqualizerMode(intptr_t handle, int *mode)
Get the Intelligent Equalizer Mode.
Definition: dsAudio.c:861
dsResetSurroundVirtualizer
dsError_t dsResetSurroundVirtualizer(intptr_t handle)
to reset the audio Surround Virtualizer level
Definition: dsAudio.c:1800
_dsVolumeLeveller_t
Definition: dsTypes.h:352
dsGetAudioLevel
dsError_t dsGetAudioLevel(intptr_t handle, float *level)
Get the current audio volume level of an audio port.
Definition: dsAudio.c:229
dsSetAudioGain
dsError_t dsSetAudioGain(intptr_t handle, float gain)
Set the audio gain of an audio port.
Definition: dsAudio.c:474
dsAudioDuckingType_t
enum _dsAudioDuckingType_t dsAudioDuckingType_t
dsAudioPortType_t
enum _dsAudioPortType_t dsAudioPortType_t
dsGetStereoMode
dsError_t dsGetStereoMode(intptr_t handle, dsAudioStereoMode_t *stereoMode)
Get the stereo mode of an audio port.
dsTypes.h
Device Settings HAL types.
dsSetDialogEnhancement
dsError_t dsSetDialogEnhancement(intptr_t handle, int level)
Get the Dialog Enhancement level of an audio port.
Definition: dsAudio.c:719
dsIsAudioPortEnabled
dsError_t dsIsAudioPortEnabled(intptr_t handle, bool *enabled)
This function indicates whether the specified Audio port is enabled or not.
Definition: dsAudio.c:303
dsResetBassEnhancer
dsError_t dsResetBassEnhancer(intptr_t handle)
to reset the reset the audio Bass
Definition: dsAudio.c:1785
dsGetAudioOptimalLevel
dsError_t dsGetAudioOptimalLevel(intptr_t handle, float *optimalLevel)
Get the optimal audio level of an audio port.
Definition: dsAudio.c:269
dsGetLEConfig
dsError_t dsGetLEConfig(intptr_t handle, bool *enable)
To Get LE configuration.
Definition: dsAudio.c:1685
dsMS12FEATURE_t
enum _dsMS12FEATURE_t dsMS12FEATURE_t
dsIsAudioMute
dsError_t dsIsAudioMute(intptr_t handle, bool *muted)
Get the audio mute status of an audio port.
Definition: dsAudio.c:284
dsError.h
Device Settings HAL error codes.
dsGetPrimaryLanguage
dsError_t dsGetPrimaryLanguage(intptr_t handle, char *pLang)
To get AC4 Primary language.
Definition: dsAudio.c:1371
dsAudioFormatUpdateRegisterCB
dsError_t dsAudioFormatUpdateRegisterCB(dsAudioFormatUpdateCB_t cbFun)
Register for the Audio Format Update Event.
dsGetMS12AudioProfileList
dsError_t dsGetMS12AudioProfileList(intptr_t handle, dsMS12AudioProfileList_t *profiles)
To get the supported MS12 audio profiles.
Definition: dsAudio.c:1178
dsGetDialogEnhancement
dsError_t dsGetDialogEnhancement(intptr_t handle, int *level)
Get the Dialog Enhancement level of an audio port.
Definition: dsAudio.c:815
dsSetMS12AudioProfileSetttingsOverride
dsError_t dsSetMS12AudioProfileSetttingsOverride(intptr_t handle, const char *profileState, const char *profileName, const char *profileSettingsName, const char *profileSettingValue)
To Set/override a specific audio setting in a specific profile.
Definition: dsAudio.c:1456
dsSetSurroundVirtualizer
dsError_t dsSetSurroundVirtualizer(intptr_t handle, dsSurroundVirtualizer_t virtualizer)
To set the audio Surround Virtualizer level.
Definition: dsAudio.c:1076
dsGetFaderControl
dsError_t dsGetFaderControl(intptr_t handle, int *mixerbalance)
To get the mixerbalance betweeen main and associated audio.
Definition: dsAudio.c:1314
_dsSurroundVirtualizer_t
Definition: dsTypes.h:360
dsSetAudioLevel
dsError_t dsSetAudioLevel(intptr_t handle, float level)
This function sets the audio volume level to be used on the specified audio port.
Definition: dsAudio.c:507
dsSetAudioEncoding
dsError_t dsSetAudioEncoding(intptr_t handle, dsAudioEncoding_t encoding)
Set the encoding type of an audio port.
Definition: dsAudio.c:413
dsEnableSurroundDecoder
dsError_t dsEnableSurroundDecoder(intptr_t handle, bool enabled)
To set the audio Surround Decoder.
Definition: dsAudio.c:992
dsSetAudioMute
dsError_t dsSetAudioMute(intptr_t handle, bool mute)
Mute or un-mute an audio port.
Definition: dsAudio.c:565
dsGetAudioFormat
dsError_t dsGetAudioFormat(intptr_t handle, dsAudioFormat_t *audioFormat)
Get the current audio format.
Definition: dsAudio.c:121
dsGetAudioDelayOffset
dsError_t dsGetAudioDelayOffset(intptr_t handle, uint32_t *audioDelayOffsetMs)
Get the audio delay offset in milliseconds.
Definition: dsAudio.c:1595
dsSetMS12AudioProfile
dsError_t dsSetMS12AudioProfile(intptr_t handle, const char *profile)
To set the ms12 audio profile.
Definition: dsAudio.c:1224
dsEnableLEConfig
dsError_t dsEnableLEConfig(intptr_t handle, const bool enable)
This function is used to enable or disable Loudness Equivalence feature.
Definition: dsAudio.c:1663
dsResetVolumeLeveller
dsError_t dsResetVolumeLeveller(intptr_t handle)
to reset the Dolby volume leveller
Definition: dsAudio.c:1815
dsSetAudioDelay
dsError_t dsSetAudioDelay(intptr_t handle, const uint32_t audioDelayMs)
Set the audio delay in milliseconds.
Definition: dsAudio.c:676
dsGetAudioMaxDB
dsError_t dsGetAudioMaxDB(intptr_t handle, float *maxDb)
Get the maximum audio dB level of an audio port.
Definition: dsAudio.c:255
dsAudioSetSAD
dsError_t dsAudioSetSAD(intptr_t handle, dsAudioSADList_t sad_list)
Set Short Audio Descriptor retrieved from CEC for the connected ARC device.
Definition: dsAudio.c:1527
dsSetDolbyVolumeMode
dsError_t dsSetDolbyVolumeMode(intptr_t handle, bool mode)
Get the dolby audio mode status.
Definition: dsAudio.c:755
dsSetGraphicEqualizerMode
dsError_t dsSetGraphicEqualizerMode(intptr_t handle, int mode)
Get the Graphic Equalizer Mode.
Definition: dsAudio.c:1159
dsAudioStereoMode_t
enum StereoMode dsAudioStereoMode_t
dsGetMS12AudioProfile
dsError_t dsGetMS12AudioProfile(intptr_t handle, char *profile)
To get current audio profile selection.
Definition: dsAudio.c:1201
dsSetPrimaryLanguage
dsError_t dsSetPrimaryLanguage(intptr_t handle, const char *pLang)
To set AC4 Primary language.
Definition: dsAudio.c:1342
dsGetSecondaryLanguage
dsError_t dsGetSecondaryLanguage(intptr_t handle, char *sLang)
To get AC4 Secondary language.
Definition: dsAudio.c:1428
dsAudioPortTerm
dsError_t dsAudioPortTerm()
Terminate the Audio Port sub-system.
Definition: dsAudio.c:591
dsGetHDMIARCPortId
dsError_t dsGetHDMIARCPortId(int *portId)
Get the audio HDMI ARC port ID for each platform.
Definition: dsAudio.c:1830
dsGetSinkDeviceAtmosCapability
dsError_t dsGetSinkDeviceAtmosCapability(intptr_t handle, dsATMOSCapability_t *capability)
Get the sink device ATMOS capability.
Definition: dsAudio.c:1640
dsGetSurroundVirtualizer
dsError_t dsGetSurroundVirtualizer(intptr_t handle, dsSurroundVirtualizer_t *virtualizer)
To get the audio Surround Virtualizer level.
Definition: dsAudio.c:1051
dsGetAssociatedAudioMixing
dsError_t dsGetAssociatedAudioMixing(intptr_t handle, bool *mixing)
To get the Associated Audio Mixing status - enabled/disabled.
Definition: dsAudio.c:1267
dsSetAudioAtmosOutputMode
dsError_t dsSetAudioAtmosOutputMode(intptr_t handle, bool enable)
Set the audio ATMOS outout mode.
Definition: dsAudio.c:1619
dsGetAudioCapabilities
dsError_t dsGetAudioCapabilities(intptr_t handle, int *capabilities)
To find the HDR capabilities of SoC.
Definition: dsAudio.c:1708
dsGetMISteering
dsError_t dsGetMISteering(intptr_t handle, bool *enabled)
To get the audio Media intelligent Steering.
Definition: dsAudio.c:1095
dsGetVolumeLeveller
dsError_t dsGetVolumeLeveller(intptr_t handle, dsVolumeLeveller_t *volLeveller)
To get the Dolby volume leveller.
Definition: dsAudio.c:884
dsSetSecondaryLanguage
dsError_t dsSetSecondaryLanguage(intptr_t handle, const char *sLang)
To set AC4 Secondary language.
Definition: dsAudio.c:1399
dsGetAudioPort
dsError_t dsGetAudioPort(dsAudioPortType_t type, int index, intptr_t *handle)
Get the audio port handle.
Definition: dsAudio.c:66
dsSetVolumeLeveller
dsError_t dsSetVolumeLeveller(intptr_t handle, dsVolumeLeveller_t volLeveller)
To set the Dolby volume leveller.
Definition: dsAudio.c:909
dsGetDRCMode
dsError_t dsGetDRCMode(intptr_t handle, int *mode)
To get the DRC Mode.
Definition: dsAudio.c:1010
dsSetAudioDelayOffset
dsError_t dsSetAudioDelayOffset(intptr_t handle, const uint32_t audioDelayOffsetMs)
Set the audio delay offset in milliseconds.
Definition: dsAudio.c:697
dsGetMS12Capabilities
dsError_t dsGetMS12Capabilities(intptr_t handle, int *capabilities)
To find the HDR capabilities of SoC.
Definition: dsAudio.c:1729
dsResetDialogEnhancement
dsError_t dsResetDialogEnhancement(intptr_t handle)
to reset the Dialog Enhancement
Definition: dsAudio.c:1769
dsAudioEnableARC
dsError_t dsAudioEnableARC(intptr_t handle, dsAudioARCStatus_t arcStatus)
enable/disable ARC/EARC and route audio to connected device
Definition: dsAudio.c:1552
dsGetGraphicEqualizerMode
dsError_t dsGetGraphicEqualizerMode(intptr_t handle, int *mode)
Get the Graphic Equalizer Mode.
Definition: dsAudio.c:1136
dsSetAudioDB
dsError_t dsSetAudioDB(intptr_t handle, float db)
This function sets the dB level to be used on the specified audio port.
Definition: dsAudio.c:499
dsGetStereoAuto
dsError_t dsGetStereoAuto(intptr_t handle, int *autoMode)
This function is used to get the current auto mode setting of the specified audio port.
Definition: dsAudio.c:173
dsGetDolbyVolumeMode
dsError_t dsGetDolbyVolumeMode(intptr_t handle, bool *mode)
Get the dolby audio mode status.
Definition: dsAudio.c:838
dsAudioFormat_t
enum _dsAudioFormat_t dsAudioFormat_t
dsEnableMS12Config
dsError_t dsEnableMS12Config(intptr_t handle, dsMS12FEATURE_t feature, const bool enable)
This function is used to enable or disable MS12 DAPV2 and DE feature.
Definition: dsAudio.c:653
dsGetAudioDelay
dsError_t dsGetAudioDelay(intptr_t handle, uint32_t *audioDelayMs)
Get the audio delay in milliseconds.
Definition: dsAudio.c:1572
dsAudioDuckingAction_t
enum _dsAudioDuckingAction_t dsAudioDuckingAction_t
dsIsAudioLoopThru
dsError_t dsIsAudioLoopThru(intptr_t handle, bool *loopThru)
Get the loop-through mode of an audio port.
Definition: dsAudio.c:276
dsAudioPortInit
dsError_t dsAudioPortInit()
Initialize the underlying Audio Port sub-system.
Definition: dsAudio.c:47
dsError_t
dsError_t
Device Settings API Error return codes.
Definition: dsError.h:84
dsGetBassEnhancer
dsError_t dsGetBassEnhancer(intptr_t handle, int *boost)
To get the audio Bass.
Definition: dsAudio.c:928
_dsMS12AudioProfileList_t
Definition: dsTypes.h:334
dsSetDRCMode
dsError_t dsSetDRCMode(intptr_t handle, int mode)
To set the DRC Mode.
Definition: dsAudio.c:1033
dsAudioFormatUpdateCB_t
void(* dsAudioFormatUpdateCB_t)(dsAudioFormat_t audioFormat)
Callback function used to notify applications of Audio Format change.
Definition: dsAudio.h:58
dsSetAudioDucking
dsError_t dsSetAudioDucking(intptr_t handle, dsAudioDuckingAction_t action, dsAudioDuckingType_t, const unsigned char level)
This function sets the audio ducking level to be used on the specified audio port based on the audio ...
Definition: dsAudio.c:531
dsSetFaderControl
dsError_t dsSetFaderControl(intptr_t handle, int mixerbalance)
To set the mixerbalance betweeen main and associated audio.
Definition: dsAudio.c:1294
dsSetStereoAuto
dsError_t dsSetStereoAuto(intptr_t handle, int autoMode)
This function sets the auto mode to be used on the specified audio port.
dsIsAudioMS12Decode
dsError_t dsIsAudioMS12Decode(intptr_t handle, bool *HasMS12Decode)
This function is used to check whether the audio port supports Dolby MS12 Multistream Decode.
Definition: dsAudio.c:630
dsIsAudioMSDecode
dsError_t dsIsAudioMSDecode(intptr_t handle, bool *HasMS11Decode)
This function is used to check whether the audio port supports Dolby MS11 Multistream Decode.
Definition: dsAudio.c:608
dsGetAudioMinDB
dsError_t dsGetAudioMinDB(intptr_t handle, float *minDb)
Get the minimum audio dB level of an audio port.
Definition: dsAudio.c:262
dsSetIntelligentEqualizerMode
dsError_t dsSetIntelligentEqualizerMode(intptr_t handle, int mode)
Set the Intelligent Equalizer Mode.
Definition: dsAudio.c:773
dsGetAudioGain
dsError_t dsGetAudioGain(intptr_t handle, float *gain)
Get the audio gain of an audio port.
Definition: dsAudio.c:197
dsAudioEncoding_t
enum _dsAudioEncoding_t dsAudioEncoding_t