lowpower_audio_sink.h

Overview

The file declares the native APIs provided by the OH_LowPowerAudioSink instance. You can use the APIs to implement low-power audio playback.

File to include: <multimedia/player_framework/lowpower_audio_sink.h>

Library: liblowpower_avsink.so

System capability: SystemCapability.Multimedia.Media.LowPowerAVSink

Since: 20

Related module: LowPowerAudioSink

Summary

Functions

Name Description
OH_LowPowerAudioSink* OH_LowPowerAudioSink_CreateByMime(const char* mime) Creates an OH_LowPowerAudioSink instance.
OH_AVErrCode OH_LowPowerAudioSink_Configure(OH_LowPowerAudioSink* sink, const OH_AVFormat* format) Configures an OH_LowPowerAudioSink instance. This function must be called before OH_LowPowerAudioSink_Prepare.
OH_AVErrCode OH_LowPowerAudioSink_SetParameter(OH_LowPowerAudioSink* sink, const OH_AVFormat* format) Sets parameters for an OH_LowPowerAudioSink instance. The parameters can be dynamically set after OH_LowPowerAudioSink_Prepare.
OH_AVErrCode OH_LowPowerAudioSink_GetParameter(OH_LowPowerAudioSink* sink, OH_AVFormat* format) Obtains the parameters of an OH_LowPowerAudioSink instance.
OH_AVErrCode OH_LowPowerAudioSink_Prepare(OH_LowPowerAudioSink* sink) Prepares an OH_LowPowerAudioSink instance for decoding and rendering. This function must be called after OH_LowPowerAudioSink_Configure.
Before calling this function, you must call OH_LowPowerVideoSink_SetSyncAudioSink of the LowPowerVideoSink.
OH_AVErrCode OH_LowPowerAudioSink_Start(OH_LowPowerAudioSink* sink) Starts an OH_LowPowerAudioSink instance. This function must be called after a successful call to OH_LowPowerAudioSink_Prepare.
After successful startup, the OH_LowPowerAudioSink instance starts reporting the OH_LowPowerAudioSink_OnDataNeeded event.
OH_AVErrCode OH_LowPowerAudioSink_Pause(OH_LowPowerAudioSink* sink) Pauses an OH_LowPowerAudioSink instance. This function must be called after OH_LowPowerAudioSink_Start or OH_LowPowerAudioSink_Resume.
After successful pause, the OH_LowPowerAudioSink instance stops reporting the OH_LowPowerAudioSink_OnDataNeeded event.
OH_AVErrCode OH_LowPowerAudioSink_Resume(OH_LowPowerAudioSink* sink) Resumes an OH_LowPowerAudioSink instance. This function must be called after OH_LowPowerAudioSink_Pause.
After successful resumption, the OH_LowPowerAudioSink instance resumes reporting the OH_LowPowerAudioSink_OnDataNeeded event.
OH_AVErrCode OH_LowPowerAudioSink_Flush(OH_LowPowerAudioSink* sink) Clears all input and output data from the decoders and render buffers of an OH_LowPowerAudioSink instance.
You are not advised to call this function after OH_LowPowerAudioSink_Start or OH_LowPowerAudioSink_Resume.
Note that if the decoder has previously received data, you must input the codec data again.
OH_AVErrCode OH_LowPowerAudioSink_Stop(OH_LowPowerAudioSink* sink) Stops an OH_LowPowerAudioSink instance.
OH_AVErrCode OH_LowPowerAudioSink_Reset(OH_LowPowerAudioSink* sink) Resets an OH_LowPowerAudioSink instance.
To reuse the instance, you must call OH_LowPowerAudioSink_Configure to configure the instance again.
OH_AVErrCode OH_LowPowerAudioSink_Destroy(OH_LowPowerAudioSink* sink) Clears internal resources of an OH_LowPowerAudioSink instance and destroys the instance. You only need to call the function once.
OH_AVErrCode OH_LowPowerAudioSink_SetVolume(OH_LowPowerAudioSink* sink, const float volume) Sets the rendering volume for an OH_LowPowerAudioSink instance.
OH_AVErrCode OH_LowPowerAudioSink_SetLoudnessGain(OH_LowPowerAudioSink* sink, float loudnessGain) Sets the loudness gain for an OH_LowPowerAudioSink instance.
OH_AVErrCode OH_LowPowerAudioSink_SetPlaybackSpeed(OH_LowPowerAudioSink* sink, const float speed) Sets the audio rendering speed for an OH_LowPowerAudioSink instance.
OH_AVErrCode OH_LowPowerAudioSink_ReturnSamples(OH_LowPowerAudioSink* sink, OH_AVSamplesBuffer* samples) Provides a buffer to an OH_LowPowerAudioSink instance for procesing.
OH_AVErrCode OH_LowPowerAudioSink_RegisterCallback(OH_LowPowerAudioSink* sink, OH_LowPowerAudioSinkCallback* callback) Registers a callback for an OH_LowPowerAudioSink instance.
OH_LowPowerAudioSinkCallback* OH_LowPowerAudioSinkCallback_Create(void) Creates an OH_LowPowerAudioSinkCallback instance.
OH_AVErrCode OH_LowPowerAudioSinkCallback_Destroy(OH_LowPowerAudioSinkCallback* callback) Destroys an OH_LowPowerAudioSinkCallback instance.
OH_AVErrCode OH_LowPowerAudioSinkCallback_SetPositionUpdateListener(OH_LowPowerAudioSinkCallback* callback, OH_LowPowerAudioSink_OnPositionUpdated onPositionUpdated, void* userData) Sets a progress update listener for an OH_LowPowerAudioSinkCallback instance.
OH_AVErrCode OH_LowPowerAudioSinkCallback_SetDataNeededListener(OH_LowPowerAudioSinkCallback* callback, OH_LowPowerAudioSink_OnDataNeeded onDataNeeded, void* userData) Sets a data needed listener for an OH_LowPowerAudioSinkCallback instance.
OH_AVErrCode OH_LowPowerAudioSinkCallback_SetErrorListener(OH_LowPowerAudioSinkCallback* callback, OH_LowPowerAudioSink_OnError onError, void* userData) Sets an error listener for an OH_LowPowerAudioSinkCallback instance.
OH_AVErrCode OH_LowPowerAudioSinkCallback_SetInterruptListener(OH_LowPowerAudioSinkCallback* callback, OH_LowPowerAudioSink_OnInterrupted onInterrupted, void* userData) Sets an audio focus interruption listener for an OH_LowPowerAudioSinkCallback instance.
OH_AVErrCode OH_LowPowerAudioSinkCallback_SetDeviceChangeListener(OH_LowPowerAudioSinkCallback* callback, OH_LowPowerAudioSink_OnDeviceChanged onDeviceChanged, void* userData) Sets an audio device change listener for an OH_LowPowerAudioSinkCallback instance.
OH_AVErrCode OH_LowPowerAudioSinkCallback_SetEosListener(OH_LowPowerAudioSinkCallback callback, OH_LowPowerAudioSink_OnEos onEos, void userData) Sets an end-of-stream listener for an OH_LowPowerAudioSinkCallback instance.

Function Description

OH_LowPowerAudioSink_CreateByMime()

OH_LowPowerAudioSink* OH_LowPowerAudioSink_CreateByMime(const char* mime)

Description

Creates an OH_LowPowerAudioSink instance.

Since: 20

Parameters

Name Description
const char* mime Pointer to the MIME type of the audio decoder. For details about the available options, see AVCODEC_MIME_TYPE.

Returns

Type Description
OH_LowPowerAudioSink* Pointer to the OH_LowPowerAudioSink instance created. If the operation fails, nullptr is returned.

OH_LowPowerAudioSink_Configure()

OH_AVErrCode OH_LowPowerAudioSink_Configure(OH_LowPowerAudioSink* sink, const OH_AVFormat* format)

Description

Configures an OH_LowPowerAudioSink instance. This function must be called before OH_LowPowerAudioSink_Prepare.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSink* sink Pointer to an OH_LowPowerAudioSink instance.
const OH_AVFormat* format Pointer to an OH_AVFormat instance, which describes the parameters to be configured for the OH_LowPowerAudioSink instance.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_UNSUPPORT: The format is not supported.
AV_ERR_SERVICE_DIED: The media server is destroyed.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSink_SetParameter()

OH_AVErrCode OH_LowPowerAudioSink_SetParameter(OH_LowPowerAudioSink* sink, const OH_AVFormat* format)

Description

Sets parameters for an OH_LowPowerAudioSink instance. The parameters can be dynamically set after OH_LowPowerAudioSink_Prepare.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSink* sink Pointer to an OH_LowPowerAudioSink instance.
const OH_AVFormat* format Pointer to an OH_AVFormat instance, which describes the parameters configured for an OH_LowPowerAudioSink instance.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_UNSUPPORT: The format is not supported.
AV_ERR_SERVICE_DIED: The media server is destroyed.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSink_GetParameter()

OH_AVErrCode OH_LowPowerAudioSink_GetParameter(OH_LowPowerAudioSink* sink, OH_AVFormat* format)

Description

Obtains the parameters of an OH_LowPowerAudioSink instance.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSink* sink Pointer to an OH_LowPowerAudioSink instance.
OH_AVFormat* format Pointer to an OH_AVFormat instance.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSink_Prepare()

OH_AVErrCode OH_LowPowerAudioSink_Prepare(OH_LowPowerAudioSink* sink)

Description

Prepares an OH_LowPowerAudioSink instance for decoding and rendering. This function must be called after OH_LowPowerAudioSink_Configure.
Before calling this function, you must call OH_LowPowerVideoSink_SetSyncAudioSink of the LowPowerVideoSink.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSink* sink Pointer to an OH_LowPowerAudioSink instance.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_UNSUPPORT: The format is not supported.
AV_ERR_SERVICE_DIED: The media server is destroyed.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSink_Start()

OH_AVErrCode OH_LowPowerAudioSink_Start(OH_LowPowerAudioSink* sink)

Description

Starts an OH_LowPowerAudioSink instance. This function must be called after a successful call to OH_LowPowerAudioSink_Prepare.
After successful startup, the OH_LowPowerAudioSink instance starts reporting the OH_LowPowerAudioSink_OnDataNeeded event.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSink* sink Pointer to an OH_LowPowerAudioSink instance.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_UNSUPPORT: The format is not supported.
AV_ERR_SERVICE_DIED: The media server is destroyed.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSink_Pause()

OH_AVErrCode OH_LowPowerAudioSink_Pause(OH_LowPowerAudioSink* sink)

Description

Pauses an OH_LowPowerAudioSink instance. This function must be called after OH_LowPowerAudioSink_Start or OH_LowPowerAudioSink_Resume.
After successful pause, the OH_LowPowerAudioSink instance stops reporting the OH_LowPowerAudioSink_OnDataNeeded event.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSink* sink Pointer to an OH_LowPowerAudioSink instance.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_SERVICE_DIED: The media server is destroyed.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSink_Resume()

OH_AVErrCode OH_LowPowerAudioSink_Resume(OH_LowPowerAudioSink* sink)

Description

Resumes an OH_LowPowerAudioSink instance. This function must be called after OH_LowPowerAudioSink_Pause.
After successful resumption, the OH_LowPowerAudioSink instance resumes reporting the OH_LowPowerAudioSink_OnDataNeeded event.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSink* sink Pointer to an OH_LowPowerAudioSink instance.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_SERVICE_DIED: The media server is destroyed.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSink_Flush()

OH_AVErrCode OH_LowPowerAudioSink_Flush(OH_LowPowerAudioSink* sink)

Description

Clears all input and output data from the decoders and render buffers of an OH_LowPowerAudioSink instance.
You are not advised to call this function after OH_LowPowerAudioSink_Start or OH_LowPowerAudioSink_Resume.
Note that if the decoder has previously received data, you must input the codec data again.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSink* sink Pointer to an OH_LowPowerAudioSink instance.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_SERVICE_DIED: The media server is destroyed.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSink_Stop()

OH_AVErrCode OH_LowPowerAudioSink_Stop(OH_LowPowerAudioSink* sink)

Description

Stops an OH_LowPowerAudioSink instance.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSink* sink Pointer to an OH_LowPowerAudioSink instance.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_SERVICE_DIED: The media server is destroyed.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSink_Reset()

OH_AVErrCode OH_LowPowerAudioSink_Reset(OH_LowPowerAudioSink* sink)

Description

Resets an OH_LowPowerAudioSink instance.
To reuse the instance, you must call OH_LowPowerAudioSink_Configure to configure the instance again.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSink* sink Pointer to an OH_LowPowerAudioSink instance.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_SERVICE_DIED: The media server is destroyed.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSink_Destroy()

OH_AVErrCode OH_LowPowerAudioSink_Destroy(OH_LowPowerAudioSink* sink)

Description

Clears internal resources of an OH_LowPowerAudioSink instance and destroys the instance. You only need to call the function once.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSink* sink Pointer to an OH_LowPowerAudioSink instance.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_SERVICE_DIED: The media server is destroyed.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSink_SetVolume()

OH_AVErrCode OH_LowPowerAudioSink_SetVolume(OH_LowPowerAudioSink* sink, const float volume)

Description

Sets the rendering volume for an OH_LowPowerAudioSink instance.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSink* sink Pointer to an OH_LowPowerAudioSink instance.
const float volume Rendering volume, in the range of [0.0, 1.0].

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_SERVICE_DIED: The media server is destroyed.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSink_SetLoudnessGain()

OH_AVErrCode OH_LowPowerAudioSink_SetLoudnessGain(OH_LowPowerAudioSink* sink, float loudnessGain)

Description

Sets the loudness gain for an OH_LowPowerAudioSink instance.

Since: 21

Parameters

Name Description
OH_LowPowerAudioSink* sink Pointer to an OH_LowPowerAudioSink instance.
float loudnessGain Loudness gain, in the range [-90.0, 24.0]. The default value is 0.0 dB.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_SERVICE_DIED: The media server is destroyed.

OH_LowPowerAudioSink_SetPlaybackSpeed()

OH_AVErrCode OH_LowPowerAudioSink_SetPlaybackSpeed(OH_LowPowerAudioSink* sink, const float speed)

Description

Sets the audio rendering speed for an OH_LowPowerAudioSink instance.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSink* sink Pointer to an OH_LowPowerAudioSink instance.
const float speed Audio rendering speed, in the range [0.25, 4.0].

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_SERVICE_DIED: The media server is destroyed.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSink_ReturnSamples()

OH_AVErrCode OH_LowPowerAudioSink_ReturnSamples(OH_LowPowerAudioSink* sink, OH_AVSamplesBuffer* samples)

Description

Provides a buffer to an OH_LowPowerAudioSink instance for procesing.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSink* sink Pointer to an OH_LowPowerAudioSink instance.
OH_AVSamplesBuffer* samples Pointer to the OH_AVSamplesBuffer instance to be provided. Batch input of samples is supported.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_SERVICE_DIED: The media server is destroyed.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSink_RegisterCallback()

OH_AVErrCode OH_LowPowerAudioSink_RegisterCallback(OH_LowPowerAudioSink* sink, OH_LowPowerAudioSinkCallback* callback)

Description

Registers a callback for an OH_LowPowerAudioSink instance.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSink* sink Pointer to an OH_LowPowerAudioSink instance.
OH_LowPowerAudioSinkCallback* callback Pointer to an OH_LowPowerAudioSinkCallback instance.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_SERVICE_DIED: The media server is destroyed.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSinkCallback_Create()

OH_LowPowerAudioSinkCallback* OH_LowPowerAudioSinkCallback_Create(void)

Description

Creates an OH_LowPowerAudioSinkCallback instance.

Since: 20

Returns

Type Description
OH_LowPowerAudioSinkCallback* Pointer to the OH_LowPowerAudioSinkCallback instance created. If the memory is insufficient, nullptr is returned.

OH_LowPowerAudioSinkCallback_Destroy()

OH_AVErrCode OH_LowPowerAudioSinkCallback_Destroy(OH_LowPowerAudioSinkCallback* callback)

Description

Destroys an OH_LowPowerAudioSinkCallback instance.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSinkCallback* callback Pointer to an OH_LowPowerAudioSinkCallback instance.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.

OH_LowPowerAudioSinkCallback_SetPositionUpdateListener()

OH_AVErrCode OH_LowPowerAudioSinkCallback_SetPositionUpdateListener(OH_LowPowerAudioSinkCallback* callback, OH_LowPowerAudioSink_OnPositionUpdated onPositionUpdated, void* userData)

Description

Sets a progress update listener for an OH_LowPowerAudioSinkCallback instance.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSinkCallback* callback Pointer to an OH_LowPowerAudioSinkCallback instance.
OH_LowPowerAudioSink_OnPositionUpdated onPositionUpdated OH_LowPowerAudioSink_OnPositionUpdated, which is invoked when the playback position is updated in the OH_LowPowerAudioSink instance.
void* userData Pointer to the data on which the caller depends when executing the callback.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSinkCallback_SetDataNeededListener()

OH_AVErrCode OH_LowPowerAudioSinkCallback_SetDataNeededListener(OH_LowPowerAudioSinkCallback* callback, OH_LowPowerAudioSink_OnDataNeeded onDataNeeded, void* userData)

Description

Sets a data needed listener for an OH_LowPowerAudioSinkCallback instance.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSinkCallback* callback Pointer to an OH_LowPowerAudioSinkCallback instance.
OH_LowPowerAudioSink_OnDataNeeded onDataNeeded OH_LowPowerAudioSink_OnDataNeeded, which is invoked when the OH_LowPowerAudioSink instance needs more data.
void* userData Pointer to the data on which the caller depends when executing the callback.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSinkCallback_SetErrorListener()

OH_AVErrCode OH_LowPowerAudioSinkCallback_SetErrorListener(OH_LowPowerAudioSinkCallback* callback, OH_LowPowerAudioSink_OnError onError, void* userData)

Description

Sets an error listener for an OH_LowPowerAudioSinkCallback instance.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSinkCallback* callback Pointer to an OH_LowPowerAudioSinkCallback instance.
OH_LowPowerAudioSink_OnError onError OH_LowPowerAudioSink_OnError, which is invoked when an error occurs in the OH_LowPowerAudioSink instance.
void* userData Pointer to the data on which the caller depends when executing the callback.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSinkCallback_SetInterruptListener()

OH_AVErrCode OH_LowPowerAudioSinkCallback_SetInterruptListener(OH_LowPowerAudioSinkCallback* callback, OH_LowPowerAudioSink_OnInterrupted onInterrupted, void* userData)

Description

Sets an audio focus interruption listener for an OH_LowPowerAudioSinkCallback instance.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSinkCallback* callback Pointer to an OH_LowPowerAudioSinkCallback instance.
OH_LowPowerAudioSink_OnInterrupted onInterrupted OH_LowPowerAudioSink_OnInterrupted, which is invoked when the audio focus is interrupted in the OH_LowPowerAudioSink instance.
void* userData Pointer to the data on which the caller depends when executing the callback.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSinkCallback_SetDeviceChangeListener()

OH_AVErrCode OH_LowPowerAudioSinkCallback_SetDeviceChangeListener(OH_LowPowerAudioSinkCallback* callback, OH_LowPowerAudioSink_OnDeviceChanged onDeviceChanged, void* userData)

Description

Sets an audio device change listener for an OH_LowPowerAudioSinkCallback instance.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSinkCallback* callback Pointer to an OH_LowPowerAudioSinkCallback instance.
OH_LowPowerAudioSink_OnDeviceChanged onDeviceChanged OH_LowPowerAudioSink_OnDeviceChanged, which is invoked when the audio device changes in the OH_LowPowerAudioSink instance.
void* userData Pointer to the data on which the caller depends when executing the callback.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.

OH_LowPowerAudioSinkCallback_SetEosListener()

OH_AVErrCode OH_LowPowerAudioSinkCallback_SetEosListener(OH_LowPowerAudioSinkCallback *callback, OH_LowPowerAudioSink_OnEos onEos, void* userData)

Description

Sets an end-of-stream listener for an OH_LowPowerAudioSinkCallback instance.

Since: 20

Parameters

Name Description
OH_LowPowerAudioSinkCallback *callback Pointer to an OH_LowPowerAudioSinkCallback instance.
OH_LowPowerAudioSink_OnEos onEos OH_LowPowerAudioSink_OnEos, which is invoked when playback is complete in the OH_LowPowerAudioSink instance.
void* userData Pointer to the data on which the caller depends when executing the callback.

Returns

Type Description
OH_AVErrCode AV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.
AV_ERR_OPERATE_NOT_PERMIT: The operation is not supported.