openharmony 鸿蒙 capi-ohaudio-oh-audiorenderer-callbacks-struct

2026-08-25 浏览 (1)

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

NameDescription
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

NameDescription
OH_AudioRenderer* rendererPointer to an audio renderer instance, which is created by calling OH_AudioStreamBuilder_GenerateRenderer.
void* userDataPointer to the data storage area customized by the application.
void* bufferPointer to the playback data storage area, which is used by the application to fill in playback data.
int32_t lengthLength 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

NameDescription
OH_AudioRenderer* rendererPointer to an audio renderer instance, which is created by calling OH_AudioStreamBuilder_GenerateRenderer.
void* userDataPointer to the data storage area customized by the application.
OH_AudioStream_Event eventAudio 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

NameDescription
OH_AudioRenderer* rendererPointer to an audio renderer instance, which is created by calling OH_AudioStreamBuilder_GenerateRenderer.
void* userDataPointer to the data storage area customized by the application.
OH_AudioInterrupt_ForceType typeType of force that causes audio interruption.
OH_AudioInterrupt_Hint hintHint 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

NameDescription
OH_AudioRenderer* rendererPointer to an audio renderer instance, which is created by calling OH_AudioStreamBuilder_GenerateRenderer.
void* userDataPointer to the data storage area customized by the application.
OH_AudioStream_Result errorAudio 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 鸿蒙 capi-ohaudio

openharmony 鸿蒙 capi-ohmidi

openharmony 鸿蒙 arkts-apis-audio-AudioManager

openharmony 鸿蒙 capi-ohaudiosuite-oh-audiosuite-spacerenderpositionparams

openharmony 鸿蒙 capi-ohaudio-oh-audiostreaminfo

openharmony 鸿蒙 errorcode-ringtone

  • 所属分类: 后端技术
  • 本文标签: 软件 鸿蒙
  • 版权声明: 本文链接 https://seaxiang.com/blog/uoIuCKg6