OH_AudioRenderer_Callbacks_Struct
typedef struct OH_AudioRenderer_Callbacks_Struct {...} OH_AudioRenderer_Callbacks
Overview
The struct defines a pointer to the callback functions related to an audio renderer.
To avoid unexpected behavior, ensure that every member variable of the struct is initialized by a custom callback method or a null pointer when setting the audio callback functions.
For details, see (Recommended) Using OHAudio for Audio Playback (C/C++).
Since: 10
Deprecated from: 20
Substitute
Use the following callback types for substitute:
OH_AudioRenderer_OnWriteDataCallback, OH_AudioRenderer_OutputDeviceChangeCallback, OH_AudioRenderer_OnInterruptCallback, and OH_AudioRenderer_OnErrorCallback
Related module: OHAudio
Header file: native_audiostream_base.h
Summary
Member Functions
| Name | Description |
|---|---|
| int32_t (*OH_AudioRenderer_OnWriteData)(OH_AudioRenderer* renderer, void* userData, void* buffer, int32_t length) | Defines a function pointer to the callback function used to write audio data. |
| int32_t (*OH_AudioRenderer_OnStreamEvent)(OH_AudioRenderer* renderer, void* userData, OH_AudioStream_Event event) | Defines a function pointer to the callback function used to process audio playback stream events. |
| int32_t (*OH_AudioRenderer_OnInterruptEvent)(OH_AudioRenderer* renderer, void* userData, OH_AudioInterrupt_ForceType type, OH_AudioInterrupt_Hint hint) | Defines a function pointer to the callback function used to process audio playback interruption events. |
| int32_t (*OH_AudioRenderer_OnError)(OH_AudioRenderer* renderer, void* userData, OH_AudioStream_Result error) | Defines a function pointer to the callback function used to process audio playback errors. |
Member Function Description
NOTE
No enumerated values are defined as the return values of the following callbacks. In the current version, no processing specific to the return value is provided. To support expansion in later versions, the default value 0 is used.
OH_AudioRenderer_OnWriteData()
int32_t (*OH_AudioRenderer_OnWriteData)(OH_AudioRenderer* renderer, void* userData, void* buffer, int32_t length)
Description
Defines a function pointer to the callback function used to write audio data.
The callback function is used only to write audio data. Do not call AudioRenderer APIs in it.
Once the callback function finishes its execution, the audio service queues the data pointed to by buffer for playback. Therefore, do not change the data outside the callback. It is crucial to fill buffer with the exact length (specified by length) of data designated for playback; otherwise, noises may occur during playback.
Since: 10
Deprecated from: 20
Substitute: OH_AudioRenderer_OnWriteDataCallback
Parameters
| Name | Description |
|---|---|
| OH_AudioRenderer* renderer | Pointer to an audio renderer instance, which is created by calling OH_AudioStreamBuilder_GenerateRenderer. |
| void* userData | Pointer to the data storage area customized by the application. |
| void* buffer | Pointer to the playback data storage area, which is used by the application to fill in playback data. |
| int32_t length | Length of the buffer. |
OH_AudioRenderer_OnStreamEvent()
int32_t (*OH_AudioRenderer_OnStreamEvent)(OH_AudioRenderer* renderer, void* userData, OH_AudioStream_Event event)
Description
Defines a function pointer to the callback function used to process audio playback stream events.
OH_AudioRenderer_OnStreamEvent is a reserved API and does not trigger callbacks. Starting from API version 11, if you need to listen for device changes, use OH_AudioRenderer_OutputDeviceChangeCallback instead.
Since: 10
Deprecated from: 20
Substitute: OH_AudioRenderer_OutputDeviceChangeCallback
Parameters
| Name | Description |
|---|---|
| OH_AudioRenderer* renderer | Pointer to an audio renderer instance, which is created by calling OH_AudioStreamBuilder_GenerateRenderer. |
| void* userData | Pointer to the data storage area customized by the application. |
| OH_AudioStream_Event event | Audio event. |
OH_AudioRenderer_OnInterruptEvent()
int32_t (*OH_AudioRenderer_OnInterruptEvent)(OH_AudioRenderer* renderer, void* userData, OH_AudioInterrupt_ForceType type, OH_AudioInterrupt_Hint hint)
Description
Defines a function pointer to the callback function used to process audio playback interruption events.
Since: 10
Deprecated from: 20
Substitute: OH_AudioRenderer_OnInterruptCallback
Parameters
| Name | Description |
|---|---|
| OH_AudioRenderer* renderer | Pointer to an audio renderer instance, which is created by calling OH_AudioStreamBuilder_GenerateRenderer. |
| void* userData | Pointer to the data storage area customized by the application. |
| OH_AudioInterrupt_ForceType type | Type of force that causes audio interruption. |
| OH_AudioInterrupt_Hint hint | Hint provided along with audio interruption. |
OH_AudioRenderer_OnError()
int32_t (*OH_AudioRenderer_OnError)(OH_AudioRenderer* renderer, void* userData, OH_AudioStream_Result error)
Description
Defines a function pointer to the callback function used to process audio playback errors.
Since: 10
Deprecated from: 20
Substitute: OH_AudioRenderer_OnErrorCallback
Parameters
| Name | Description |
|---|---|
| OH_AudioRenderer* renderer | Pointer to an audio renderer instance, which is created by calling OH_AudioStreamBuilder_GenerateRenderer. |
| void* userData | Pointer to the data storage area customized by the application. |
| OH_AudioStream_Result error | Audio playback error result, which may be AUDIOSTREAM_ERROR_INVALID_PARAM, AUDIOSTREAM_ERROR_ILLEGAL_STATE, or AUDIOSTREAM_ERROR_SYSTEM. |
你可能感兴趣的鸿蒙文章
openharmony 鸿蒙 capi-native-audiostreambuilder-h
openharmony 鸿蒙 capi-ohaudiosuite
openharmony 鸿蒙 js-apis-inner-multimedia-systemSoundPlayer
openharmony 鸿蒙 arkts-apis-audio-i
openharmony 鸿蒙 arkts-apis-audio-AudioManager
openharmony 鸿蒙 capi-ohaudiosuite-oh-audiosuite-spacerenderpositionparams