openharmony 鸿蒙 capi-lowpower-video-sink-h

2026-08-25 浏览 (1)

lowpower_video_sink.h

Overview

The file declares the native APIs provided by the LowPowerVideoSink. You can use the APIs to implement low-power video playback.

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

Library: liblowpower_avsink.so

System capability: SystemCapability.Multimedia.Media.LowPowerAVSink

Since: 20

Related module: LowPowerVideoSink

Summary

Functions

NameDescription
OH_LowPowerVideoSink* OH_LowPowerVideoSink_CreateByMime(const char* mime)Creates an OH_LowPowerVideoSink instance.
OH_AVErrCode OH_LowPowerVideoSink_Configure(OH_LowPowerVideoSink* sink, const OH_AVFormat* format)Configures an OH_LowPowerVideoSink instance. This function must be called before OH_LowPowerVideoSink_Prepare.
OH_AVErrCode OH_LowPowerVideoSink_SetParameter(OH_LowPowerVideoSink* sink, const OH_AVFormat* format)Sets parameters for an OH_LowPowerVideoSink instance. The parameters can be dynamically set after OH_LowPowerVideoSink_Prepare.
OH_AVErrCode OH_LowPowerVideoSink_GetParameter(OH_LowPowerVideoSink* sink, OH_AVFormat* format)Obtains the parameters of an OH_LowPowerVideoSink instance.
OH_AVErrCode OH_LowPowerVideoSink_SetVideoSurface(OH_LowPowerVideoSink* sink, const OHNativeWindow* surface)Sets the rendering window for an OH_LowPowerVideoSink instance. This function must be called before OH_LowPowerVideoSink_Prepare.
OH_AVErrCode OH_LowPowerVideoSink_Prepare(OH_LowPowerVideoSink* sink)Prepares an OH_LowPowerVideoSink instance for decoding and rendering. This function must be called after OH_LowPowerVideoSink_SetSyncAudioSink.
OH_AVErrCode OH_LowPowerVideoSink_StartDecoder(OH_LowPowerVideoSink* sink)Starts an OH_LowPowerVideoSink instance for decoding. This function must be called after OH_LowPowerVideoSink_Prepare or if no video is playing, after OH_LowPowerVideoSink_SetTargetStartFrame.
After successful startup, the OH_LowPowerVideoSink instance starts reporting the OH_LowPowerVideoSink_OnDataNeeded event.
OH_AVErrCode OH_LowPowerVideoSink_RenderFirstFrame(OH_LowPowerVideoSink* sink)Renders the first frame decoded by an OH_LowPowerVideoSink instance. This function must be called after OH_LowPowerVideoSink_StartDecoder.
OH_AVErrCode OH_LowPowerVideoSink_StartRenderer(OH_LowPowerVideoSink* sink)Starts an OH_LowPowerVideoSink instance for rendering. This function must be called after OH_LowPowerVideoSink_StartDecoder.
OH_AVErrCode OH_LowPowerVideoSink_Pause(OH_LowPowerVideoSink* sink)Pauses an OH_LowPowerVideoSink instance. This function must be called after OH_LowPowerVideoSink_StartRenderer or OH_LowPowerVideoSink_Resume.
After successful pause, the OH_LowPowerVideoSink instance stops reporting the OH_LowPowerVideoSink_OnDataNeeded event.
OH_AVErrCode OH_LowPowerVideoSink_Resume(OH_LowPowerVideoSink* sink)Resumes an OH_LowPowerVideoSink instance. This function must be called afterOH_LowPowerVideoSink_Pause.
After successful resumption, the OH_LowPowerVideoSink instance resumes reporting the OH_LowPowerVideoSink_OnDataNeeded event.
OH_AVErrCode OH_LowPowerVideoSink_Flush(OH_LowPowerVideoSink* sink)Clears all input and output data from the decoders and render buffers of an OH_LowPowerVideoSink instance.
You are not advised to call this function after OH_LowPowerVideoSink_StartRenderer or OH_LowPowerVideoSink_Resume.
Note that if the decoder has previously received data, you must input the codec data again.
OH_AVErrCode OH_LowPowerVideoSink_Stop(OH_LowPowerVideoSink* sink)Stops an OH_LowPowerVideoSink instance.
OH_AVErrCode OH_LowPowerVideoSink_Reset(OH_LowPowerVideoSink* sink)Resets an OH_LowPowerVideoSink instance.
To reuse the instance, you must call OH_LowPowerVideoSink_Configure to configure the instance again.
OH_AVErrCode OH_LowPowerVideoSink_Destroy(OH_LowPowerVideoSink* sink)Clears internal resources of an OH_LowPowerVideoSink instance and destroys the instance. You only need to call the function once.
OH_AVErrCode OH_LowPowerVideoSink_SetSyncAudioSink(OH_LowPowerVideoSink* videoSink, OH_LowPowerAudioSink* audioSink)Sets an OH_LowPowerAudioSink instance for audio-video synchronization in an OH_LowPowerVideoSink instance.
OH_AVErrCode OH_LowPowerVideoSink_SetTargetStartFrame(OH_LowPowerVideoSink* sink, const int64_t framePts, OH_LowPowerVideoSink_OnTargetArrived onTargetArrived, const int64_t timeoutMs, void* userData)Sets the target rendering frame for an OH_LowPowerVideoSink instance.
OH_AVErrCode OH_LowPowerVideoSink_SetPlaybackSpeed(OH_LowPowerVideoSink* sink, const float speed)Sets the playback speed for an OH_LowPowerVideoSink instance.
OH_AVErrCode OH_LowPowerVideoSink_ReturnSamples(OH_LowPowerVideoSink* sink, OH_AVSamplesBuffer* samples)Provides a buffer to an OH_LowPowerVideoSink instance for procesing.
OH_AVErrCode OH_LowPowerVideoSink_GetLatestPts(OH_LowPowerVideoSink *sink, int64_t *pts)Obtains the Presentation Timestamp (PTS) of the video that is playing.
OH_AVErrCode OH_LowPowerVideoSink_RegisterCallback(OH_LowPowerVideoSink* sink, OH_LowPowerVideoSinkCallback* callback)Registers a callback for an OH_LowPowerVideoSink instance.
OH_LowPowerVideoSinkCallback* OH_LowPowerVideoSinkCallback_Create(void)Creates an OH_LowPowerVideoSinkCallback instance.
OH_AVErrCode OH_LowPowerVideoSinkCallback_Destroy(OH_LowPowerVideoSinkCallback* callback)Destroys an OH_LowPowerVideoSinkCallback instance.
OH_AVErrCode OH_LowPowerVideoSinkCallback_SetDataNeededListener(OH_LowPowerVideoSinkCallback* callback, OH_LowPowerVideoSink_OnDataNeeded onDataNeeded, void* userData)Sets a data needed listener for an OH_LowPowerVideoSinkCallback instance.
OH_AVErrCode OH_LowPowerVideoSinkCallback_SetErrorListener(OH_LowPowerVideoSinkCallback* callback, OH_LowPowerVideoSink_OnError onError, void* userData)Sets an error listener for an OH_LowPowerVideoSinkCallback instance.
OH_AVErrCode OH_LowPowerVideoSinkCallback_SetRenderStartListener(OH_LowPowerVideoSinkCallback* callback, OH_LowPowerVideoSink_OnRenderStarted onRenderStarted, void* userData)Sets a render start listener for an OH_LowPowerVideoSinkCallback instance.
OH_AVErrCode OH_LowPowerVideoSinkCallback_SetStreamChangedListener(OH_LowPowerVideoSinkCallback* callback, OH_LowPowerVideoSink_OnStreamChanged onStreamChanged, void* userData)Sets a stream change listener for an OH_LowPowerVideoSinkCallback instance.
OH_AVErrCode OH_LowPowerVideoSinkCallback_SetFirstFrameDecodedListener(OH_LowPowerVideoSinkCallback* callback, OH_LowPowerVideoSink_OnFirstFrameDecoded onFirstFrameDecoded, void* userData)Sets a first-frame ready listener for an OH_LowPowerVideoSinkCallback instance.
OH_AVErrCode OH_LowPowerVideoSinkCallback_SetEosListener(OH_LowPowerVideoSinkCallback* callback, OH_LowPowerVideoSink_OnEos onEos, void* userData)Sets an end-of-stream listener for an OH_LowPowerVideoSinkCallback instance.

Function Description

OH_LowPowerVideoSink_CreateByMime()

OH_LowPowerVideoSink* OH_LowPowerVideoSink_CreateByMime(const char* mime)

Description

Creates an OH_LowPowerVideoSink instance.

Since: 20

Parameters

NameDescription
const char* mimePointer to the MIME type of the video decoder. For details about the available options, see AVCODEC_MIME_TYPE.

Returns

TypeDescription
OH_LowPowerVideoSink*Pointer to the OH_LowPowerVideoSink instance created. If the operation fails, nullptr is returned.

OH_LowPowerVideoSink_Configure()

OH_AVErrCode OH_LowPowerVideoSink_Configure(OH_LowPowerVideoSink* sink, const OH_AVFormat* format)

Description

Configures an OH_LowPowerVideoSink instance. This function must be called before OH_LowPowerVideoSink_Prepare.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.
const OH_AVFormat* formatPointer to an OH_AVFormat instance, which describes the parameters to be configured for the OH_LowPowerVideoSink instance.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_SetParameter()

OH_AVErrCode OH_LowPowerVideoSink_SetParameter(OH_LowPowerVideoSink* sink, const OH_AVFormat* format)

Description

Sets parameters for an OH_LowPowerVideoSink instance. The parameters can be dynamically set after OH_LowPowerVideoSink_Prepare.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.
const OH_AVFormat* formatPointer to an OH_AVFormat instance, which describes the parameters to be configured for the OH_LowPowerVideoSink instance.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_GetParameter()

OH_AVErrCode OH_LowPowerVideoSink_GetParameter(OH_LowPowerVideoSink* sink, OH_AVFormat* format)

Description

Obtains the parameters of an OH_LowPowerVideoSink instance.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.
OH_AVFormat* formatPointer to an OH_AVFormat instance, which describes the parameters configured for an OH_LowPowerVideoSink instance.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_SetVideoSurface()

OH_AVErrCode OH_LowPowerVideoSink_SetVideoSurface(OH_LowPowerVideoSink* sink, const OHNativeWindow* surface)

Description

Sets the rendering window for an OH_LowPowerVideoSink instance. This function must be called before OH_LowPowerVideoSink_Prepare.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.
const OHNativeWindow* surfacePointer to the OHNativeWindow instance.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_Prepare()

OH_AVErrCode OH_LowPowerVideoSink_Prepare(OH_LowPowerVideoSink* sink)

Description

Prepares an OH_LowPowerVideoSink instance for decoding and rendering. This function must be called after OH_LowPowerVideoSink_SetSyncAudioSink.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_StartDecoder()

OH_AVErrCode OH_LowPowerVideoSink_StartDecoder(OH_LowPowerVideoSink* sink)

Description

Starts an OH_LowPowerVideoSink instance for decoding. This function must be called after OH_LowPowerVideoSink_Prepare or if no video is playing, after OH_LowPowerVideoSink_SetTargetStartFrame.

After successful startup, the OH_LowPowerVideoSink instance starts reporting the OH_LowPowerVideoSink_OnDataNeeded event.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_RenderFirstFrame()

OH_AVErrCode OH_LowPowerVideoSink_RenderFirstFrame(OH_LowPowerVideoSink* sink)

Description

Renders the first frame decoded by an OH_LowPowerVideoSink instance. This function must be called after OH_LowPowerVideoSink_StartDecoder.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_StartRenderer()

OH_AVErrCode OH_LowPowerVideoSink_StartRenderer(OH_LowPowerVideoSink* sink)

Description

Starts an OH_LowPowerVideoSink instance for rendering. This function must be called after OH_LowPowerVideoSink_StartDecoder.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_Pause()

OH_AVErrCode OH_LowPowerVideoSink_Pause(OH_LowPowerVideoSink* sink)

Description

Pauses an OH_LowPowerVideoSink instance. This function must be called after OH_LowPowerVideoSink_StartRenderer or OH_LowPowerVideoSink_Resume.

After successful pause, the OH_LowPowerVideoSink instance stops reporting the OH_LowPowerVideoSink_OnDataNeeded event.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_Resume()

OH_AVErrCode OH_LowPowerVideoSink_Resume(OH_LowPowerVideoSink* sink)

Description

Resumes an OH_LowPowerVideoSink instance. This function must be called afterOH_LowPowerVideoSink_Pause.

After successful resumption, the OH_LowPowerVideoSink instance resumes reporting the OH_LowPowerVideoSink_OnDataNeeded event.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_Flush()

OH_AVErrCode OH_LowPowerVideoSink_Flush(OH_LowPowerVideoSink* sink)

Description

Clears all input and output data from the decoders and render buffers of an OH_LowPowerVideoSink instance.

You are not advised to call this function after OH_LowPowerVideoSink_StartRenderer or OH_LowPowerVideoSink_Resume.

Note that if the decoder has previously received data, you must input the codec data again.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_Stop()

OH_AVErrCode OH_LowPowerVideoSink_Stop(OH_LowPowerVideoSink* sink)

Description

Stops an OH_LowPowerVideoSink instance.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_Reset()

OH_AVErrCode OH_LowPowerVideoSink_Reset(OH_LowPowerVideoSink* sink)

Description

Resets an OH_LowPowerVideoSink instance.

To reuse the instance, you must call OH_LowPowerVideoSink_Configure to configure the instance again.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_Destroy()

OH_AVErrCode OH_LowPowerVideoSink_Destroy(OH_LowPowerVideoSink* sink)

Description

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

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_SetSyncAudioSink()

OH_AVErrCode OH_LowPowerVideoSink_SetSyncAudioSink(OH_LowPowerVideoSink* videoSink, OH_LowPowerAudioSink* audioSink)

Description

Sets an OH_LowPowerAudioSink instance for audio-video synchronization in an OH_LowPowerVideoSink instance.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* videoSinkPointer to an OH_LowPowerVideoSink instance.
OH_LowPowerAudioSink* audioSinkPointer to an OH_LowPowerAudioSink instance.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_SetTargetStartFrame()

OH_AVErrCode OH_LowPowerVideoSink_SetTargetStartFrame(OH_LowPowerVideoSink* sink, const int64_t framePts, OH_LowPowerVideoSink_OnTargetArrived onTargetArrived, const int64_t timeoutMs, void* userData)

Description

Sets the target rendering frame for an OH_LowPowerVideoSink instance.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.
const int64_t framePtsPresentation timestamp (PTS) of the target video frame to render.
OH_LowPowerVideoSink_OnTargetArrived onTargetArrivedOH_LowPowerVideoSink_OnTargetArrived, which is invoked when the target frame is rendered.
const int64_t timeoutMsTime wait for the first frame to finish rendering. If the first frame does not finish rendering within the specified time, the OH_LowPowerVideoSink_OnTargetArrived callback is directly invoked.
void* userDataPointer to the data on which the caller depends when executing the callback.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_SetPlaybackSpeed()

OH_AVErrCode OH_LowPowerVideoSink_SetPlaybackSpeed(OH_LowPowerVideoSink* sink, const float speed)

Description

Sets the playback speed for an OH_LowPowerVideoSink instance.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.
const float speedPlayback speed, in the range [0.1, 4.0].

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_ReturnSamples()

OH_AVErrCode OH_LowPowerVideoSink_ReturnSamples(OH_LowPowerVideoSink* sink, OH_AVSamplesBuffer* samples)

Description

Provides a buffer to an OH_LowPowerVideoSink instance for procesing.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.
OH_AVSamplesBuffer* samplesPointer to the OH_AVSamplesBuffer instance to be provided. Batch input of samples is supported.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_GetLatestPts()

OH_AVErrCode OH_LowPowerVideoSink_GetLatestPts(OH_LowPowerVideoSink *sink, int64_t *pts)

Description

Obtains the Presentation Timestamp (PTS) of the video that is playing.

Since: 21

Parameters

NameDescription
OH_LowPowerVideoSink *sinkPointer to an OH_LowPowerVideoSink instance.
int64_t *ptsPointer to the PTS of the video.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSink_RegisterCallback()

OH_AVErrCode OH_LowPowerVideoSink_RegisterCallback(OH_LowPowerVideoSink* sink, OH_LowPowerVideoSinkCallback* callback)

Description

Registers a callback for an OH_LowPowerVideoSink instance.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSink* sinkPointer to an OH_LowPowerVideoSink instance.
OH_LowPowerVideoSinkCallback* callbackPointer to an OH_LowPowerVideoSinkCallback instance.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSinkCallback_Create()

OH_LowPowerVideoSinkCallback* OH_LowPowerVideoSinkCallback_Create(void)

Description

Creates an OH_LowPowerVideoSinkCallback instance.

Since: 20

Returns

TypeDescription
OH_LowPowerVideoSinkCallback*Pointer to the OH_LowPowerVideoSinkCallback instance created. If the memory is insufficient, nullptr is returned.

OH_LowPowerVideoSinkCallback_Destroy()

OH_AVErrCode OH_LowPowerVideoSinkCallback_Destroy(OH_LowPowerVideoSinkCallback* callback)

Description

Destroys an OH_LowPowerVideoSinkCallback instance.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSinkCallback* callbackPointer to an OH_LowPowerVideoSinkCallback instance.

Returns

TypeDescription
OH_AVErrCodeAV_ERR_OK: The operation is successful.
AV_ERR_INVALID_VAL: An input parameter is nullptr or invalid.

OH_LowPowerVideoSinkCallback_SetDataNeededListener()

OH_AVErrCode OH_LowPowerVideoSinkCallback_SetDataNeededListener(OH_LowPowerVideoSinkCallback* callback, OH_LowPowerVideoSink_OnDataNeeded onDataNeeded, void* userData)

Description

Sets a data needed listener for an OH_LowPowerVideoSinkCallback instance.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSinkCallback* callbackPointer to an OH_LowPowerVideoSinkCallback instance.
OH_LowPowerVideoSink_OnDataNeeded onDataNeededOH_LowPowerVideoSink_OnDataNeeded, which is invoked when the OH_LowPowerVideoSink instance needs more data.
void* userDataPointer to the data on which the caller depends when executing the callback.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSinkCallback_SetErrorListener()

OH_AVErrCode OH_LowPowerVideoSinkCallback_SetErrorListener(OH_LowPowerVideoSinkCallback* callback, OH_LowPowerVideoSink_OnError onError, void* userData)

Description

Sets an error listener for an OH_LowPowerVideoSinkCallback instance.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSinkCallback* callbackPointer to an OH_LowPowerVideoSinkCallback instance.
OH_LowPowerVideoSink_OnError onErrorOH_LowPowerVideoSink_OnError, which is invoked when an error occurs in the OH_LowPowerVideoSink instance.
void* userDataPointer to the data on which the caller depends when executing the callback.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSinkCallback_SetRenderStartListener()

OH_AVErrCode OH_LowPowerVideoSinkCallback_SetRenderStartListener(OH_LowPowerVideoSinkCallback* callback, OH_LowPowerVideoSink_OnRenderStarted onRenderStarted, void* userData)

Description

Sets a render start listener for an OH_LowPowerVideoSinkCallback instance.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSinkCallback* callbackPointer to an OH_LowPowerVideoSinkCallback instance.
OH_LowPowerVideoSink_OnRenderStarted onRenderStartedOH_LowPowerVideoSink_OnRenderStarted, which is invoked when rendering starts in the OH_LowPowerVideoSink instance.
void* userDataPointer to the data on which the caller depends when executing the callback.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSinkCallback_SetStreamChangedListener()

OH_AVErrCode OH_LowPowerVideoSinkCallback_SetStreamChangedListener(OH_LowPowerVideoSinkCallback* callback, OH_LowPowerVideoSink_OnStreamChanged onStreamChanged, void* userData)

Description

Sets a stream change listener for an OH_LowPowerVideoSinkCallback instance.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSinkCallback* callbackPointer to an OH_LowPowerVideoSinkCallback instance.
OH_LowPowerVideoSink_OnStreamChanged onStreamChangedOH_LowPowerVideoSink_OnStreamChanged, which is invoked when the stream changes in the OH_LowPowerVideoSink instance.
void* userDataPointer to the data on which the caller depends when executing the callback.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSinkCallback_SetFirstFrameDecodedListener()

OH_AVErrCode OH_LowPowerVideoSinkCallback_SetFirstFrameDecodedListener(OH_LowPowerVideoSinkCallback* callback, OH_LowPowerVideoSink_OnFirstFrameDecoded onFirstFrameDecoded, void* userData)

Description

Sets a first-frame ready listener for an OH_LowPowerVideoSinkCallback instance.

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSinkCallback* callbackPointer to an OH_LowPowerVideoSinkCallback instance.
OH_LowPowerVideoSink_OnFirstFrameDecoded onFirstFrameDecodedOH_LowPowerVideoSink_OnFirstFrameReady, which is invoked when the first frame is ready in the OH_LowPowerVideoSink instance.
void* userDataPointer to the data on which the caller depends when executing the callback.

Returns

TypeDescription
OH_AVErrCodeAV_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_LowPowerVideoSinkCallback_SetEosListener()

OH_AVErrCode OH_LowPowerVideoSinkCallback_SetEosListener(OH_LowPowerVideoSinkCallback* callback, OH_LowPowerVideoSink_OnEos onEos, void* userData)

Description

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

Since: 20

Parameters

NameDescription
OH_LowPowerVideoSinkCallback* callbackPointer to an OH_LowPowerVideoSinkCallback instance.
OH_LowPowerVideoSink_OnEos onEosOH_LowPowerVideoSink_OnEos, which is invoked when playback is complete in the OH_LowPowerVideoSink instance.
void* userDataPointer to the data on which the caller depends when executing the callback.

Returns

TypeDescription
OH_AVErrCodeAV_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.

你可能感兴趣的鸿蒙文章

openharmony 鸿蒙 capi-avrecorder-oh-avrecorder-range

openharmony 鸿蒙 errorcode-media

openharmony 鸿蒙 capi-avplayer

openharmony 鸿蒙 capi-avplayer-base-h

openharmony 鸿蒙 capi-avimage-generator-h

openharmony 鸿蒙 capi-avscreencapture-oh-rect

openharmony 鸿蒙 capi-videoprocessing-videoprocessing-callback

openharmony 鸿蒙 capi-avsinkbase

openharmony 鸿蒙 capi-avmetadataextractor

openharmony 鸿蒙 capi-avscreencapture-oh-multidisplaycapability

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