1e41f4b71Sopenharmony_ci# video_processing.h 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci 4e41f4b71Sopenharmony_ci## Overview 5e41f4b71Sopenharmony_ci 6e41f4b71Sopenharmony_ciThe **video_processing.h** file declares the video processing functions. 7e41f4b71Sopenharmony_ci 8e41f4b71Sopenharmony_ciIt provides video processing capabilities, including color space conversion, metadata generation, and video scaling. 9e41f4b71Sopenharmony_ci 10e41f4b71Sopenharmony_ci**Library**: libvideo_processing.so 11e41f4b71Sopenharmony_ci 12e41f4b71Sopenharmony_ci**File to include**: <multimedia/video_processing_engine/video_processing.h> 13e41f4b71Sopenharmony_ci 14e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Multimedia.VideoProcessingEngine 15e41f4b71Sopenharmony_ci 16e41f4b71Sopenharmony_ci**Since**: 12 17e41f4b71Sopenharmony_ci 18e41f4b71Sopenharmony_ci**Related module**: [VideoProcessing](_video_processing.md) 19e41f4b71Sopenharmony_ci 20e41f4b71Sopenharmony_ci 21e41f4b71Sopenharmony_ci## Summary 22e41f4b71Sopenharmony_ci 23e41f4b71Sopenharmony_ci 24e41f4b71Sopenharmony_ci### Functions 25e41f4b71Sopenharmony_ci 26e41f4b71Sopenharmony_ci| Name| Description| 27e41f4b71Sopenharmony_ci| -------- | -------- | 28e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessing_InitializeEnvironment](_video_processing.md#oh_videoprocessing_initializeenvironment) (void) | Initializes the global video processing environment.| 29e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessing_DeinitializeEnvironment](_video_processing.md#oh_videoprocessing_deinitializeenvironment) (void) | Releases the global video processing environment.| 30e41f4b71Sopenharmony_ci| bool [OH_VideoProcessing_IsColorSpaceConversionSupported](_video_processing.md#oh_videoprocessing_iscolorspaceconversionsupported) (const [VideoProcessing_ColorSpaceInfo](_video_processing___color_space_info.md) \*sourceVideoInfo, const [VideoProcessing_ColorSpaceInfo](_video_processing___color_space_info.md) \*destinationVideoInfo) | Checks whether color space conversion is supported during video processing.| 31e41f4b71Sopenharmony_ci| bool [OH_VideoProcessing_IsMetadataGenerationSupported](_video_processing.md#oh_videoprocessing_ismetadatagenerationsupported) (const [VideoProcessing_ColorSpaceInfo](_video_processing___color_space_info.md) \*sourceVideoInfo) | Checks whether metadata generation is supported during video processing.| 32e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessing_Create](_video_processing.md#oh_videoprocessing_create) ([OH_VideoProcessing](_video_processing.md#oh_videoprocessing) \*\*videoProcessor, int type) | Creates a video processing instance.| 33e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessing_Destroy](_video_processing.md#oh_videoprocessing_destroy) ([OH_VideoProcessing](_video_processing.md#oh_videoprocessing) \*videoProcessor) | Destroys a video processing instance.| 34e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessing_RegisterCallback](_video_processing.md#oh_videoprocessing_registercallback) ([OH_VideoProcessing](_video_processing.md#oh_videoprocessing) \*videoProcessor, const [VideoProcessing_Callback](_video_processing.md#videoprocessing_callback) \*callback, void \*userData) | Registers a callback for video processing.| 35e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessing_SetSurface](_video_processing.md#oh_videoprocessing_setsurface) ([OH_VideoProcessing](_video_processing.md#oh_videoprocessing) \*videoProcessor, const [OHNativeWindow](_video_processing.md#ohnativewindow) \*window) | Sets an output surface for video processing.| 36e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessing_GetSurface](_video_processing.md#oh_videoprocessing_getsurface) ([OH_VideoProcessing](_video_processing.md#oh_videoprocessing) \*videoProcessor, [OHNativeWindow](_video_processing.md#ohnativewindow) \*\*window) | Creates a surface for video processing.| 37e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessing_SetParameter](_video_processing.md#oh_videoprocessing_setparameter) ([OH_VideoProcessing](_video_processing.md#oh_videoprocessing) \*videoProcessor, const [OH_AVFormat](_video_processing.md#oh_avformat) \*parameter) | Sets video processing parameters.| 38e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessing_GetParameter](_video_processing.md#oh_videoprocessing_getparameter) ([OH_VideoProcessing](_video_processing.md#oh_videoprocessing) \*videoProcessor, [OH_AVFormat](_video_processing.md#oh_avformat) \*parameter) | Obtains video processing parameters.| 39e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessing_Start](_video_processing.md#oh_videoprocessing_start) ([OH_VideoProcessing](_video_processing.md#oh_videoprocessing) \*videoProcessor) | Starts video processing.| 40e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessing_Stop](_video_processing.md#oh_videoprocessing_stop) ([OH_VideoProcessing](_video_processing.md#oh_videoprocessing) \*videoProcessor) | Stops video processing.| 41e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessing_RenderOutputBuffer](_video_processing.md#oh_videoprocessing_renderoutputbuffer) ([OH_VideoProcessing](_video_processing.md#oh_videoprocessing) \*videoProcessor, uint32_t index) | Renders and processes the buffer, and then outputs it.| 42e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessingCallback_Create](_video_processing.md#oh_videoprocessingcallback_create) ([VideoProcessing_Callback](_video_processing.md#videoprocessing_callback) \*\*callback) | Creates a video processing callback object.| 43e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessingCallback_Destroy](_video_processing.md#oh_videoprocessingcallback_destroy) ([VideoProcessing_Callback](_video_processing.md#videoprocessing_callback) \*callback) | Destroys a video processing callback object.| 44e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessingCallback_BindOnError](_video_processing.md#oh_videoprocessingcallback_bindonerror) ([VideoProcessing_Callback](_video_processing.md#videoprocessing_callback) \*callback, [OH_VideoProcessingCallback_OnError](_video_processing.md#oh_videoprocessingcallback_onerror) onError) | Binds the callback function [OH_VideoProcessingCallback_OnError](_video_processing.md#oh_videoprocessingcallback_onerror) to a video processing callback object.| 45e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessingCallback_BindOnState](_video_processing.md#oh_videoprocessingcallback_bindonstate) ([VideoProcessing_Callback](_video_processing.md#videoprocessing_callback) \*callback, [OH_VideoProcessingCallback_OnState](_video_processing.md#oh_videoprocessingcallback_onstate) onState) | Binds the callback function [OH_VideoProcessingCallback_OnState](_video_processing.md#oh_videoprocessingcallback_onstate) to a video processing callback object.| 46e41f4b71Sopenharmony_ci| [VideoProcessing_ErrorCode](_video_processing.md#videoprocessing_errorcode) [OH_VideoProcessingCallback_BindOnNewOutputBuffer](_video_processing.md#oh_videoprocessingcallback_bindonnewoutputbuffer) ([VideoProcessing_Callback](_video_processing.md#videoprocessing_callback) \*callback, [OH_VideoProcessingCallback_OnNewOutputBuffer](_video_processing.md#oh_videoprocessingcallback_onnewoutputbuffer) onNewOutputBuffer) | Binds the callback function [OH_VideoProcessingCallback_OnNewOutputBuffer](_video_processing.md#oh_videoprocessingcallback_onnewoutputbuffer) to a video processing callback object.| 47