1# video_output.h
2
3
4## Overview
5
6The **video_output.h** file declares the video output concepts.
7
8**Library**: libohcamera.so
9
10**File to include**: <ohcamera/video_output.h>
11
12**System capability**: SystemCapability.Multimedia.Camera.Core
13
14**Since**: 11
15
16**Related module**: [OH_Camera](_o_h___camera.md)
17
18
19## Summary
20
21
22### Structs
23
24| Name| Description|
25| -------- | -------- |
26| struct  [VideoOutput_Callbacks](_video_output___callbacks.md) | Describes the callbacks related to video output.|
27
28
29### Types
30
31| Name| Description|
32| -------- | -------- |
33| typedef struct [Camera_VideoOutput](_o_h___camera.md#camera_videooutput) [Camera_VideoOutput](_o_h___camera.md#camera_videooutput) | Defines a struct for the video output object.|
34| typedef void(\* [OH_VideoOutput_OnFrameStart](_o_h___camera.md#oh_videooutput_onframestart)) ([Camera_VideoOutput](_o_h___camera.md#camera_videooutput) \*videoOutput) | Defines the callback defined in the [VideoOutput_Callbacks](_video_output___callbacks.md) struct and used to report video output frame start events.|
35| typedef void(\* [OH_VideoOutput_OnFrameEnd](_o_h___camera.md#oh_videooutput_onframeend)) ([Camera_VideoOutput](_o_h___camera.md#camera_videooutput) \*videoOutput, int32_t frameCount) | Defines the callback defined in the [VideoOutput_Callbacks](_video_output___callbacks.md) struct and used to report video output frame end events.|
36| typedef void(\* [OH_VideoOutput_OnError](_o_h___camera.md#oh_videooutput_onerror)) ([Camera_VideoOutput](_o_h___camera.md#camera_videooutput) \*videoOutput, [Camera_ErrorCode](_o_h___camera.md#camera_errorcode) errorCode) | Defines to the callback defined in the [VideoOutput_Callbacks](_video_output___callbacks.md) struct and used to report video output errors.|
37| typedef struct [VideoOutput_Callbacks](_video_output___callbacks.md) [VideoOutput_Callbacks](_o_h___camera.md#videooutput_callbacks) | Defines a struct for the callbacks related to video output.|
38
39
40### Functions
41
42| Name| Description|
43| -------- | -------- |
44| [Camera_ErrorCode](_o_h___camera.md#camera_errorcode) [OH_VideoOutput_RegisterCallback](_o_h___camera.md#oh_videooutput_registercallback) ([Camera_VideoOutput](_o_h___camera.md#camera_videooutput) \*videoOutput, [VideoOutput_Callbacks](_video_output___callbacks.md) \*callback) | Registers a callback to listen for video output events.|
45| [Camera_ErrorCode](_o_h___camera.md#camera_errorcode) [OH_VideoOutput_UnregisterCallback](_o_h___camera.md#oh_videooutput_unregistercallback) ([Camera_VideoOutput](_o_h___camera.md#camera_videooutput) \*videoOutput, [VideoOutput_Callbacks](_video_output___callbacks.md) \*callback) | Unregisters the callback used to listen for video output events.|
46| [Camera_ErrorCode](_o_h___camera.md#camera_errorcode) [OH_VideoOutput_Start](_o_h___camera.md#oh_videooutput_start) ([Camera_VideoOutput](_o_h___camera.md#camera_videooutput) \*videoOutput) | Starts video output.|
47| [Camera_ErrorCode](_o_h___camera.md#camera_errorcode) [OH_VideoOutput_Stop](_o_h___camera.md#oh_videooutput_stop) ([Camera_VideoOutput](_o_h___camera.md#camera_videooutput) \*videoOutput) | Stops video output.|
48| [Camera_ErrorCode](_o_h___camera.md#camera_errorcode) [OH_VideoOutput_Release](_o_h___camera.md#oh_videooutput_release) ([Camera_VideoOutput](_o_h___camera.md#camera_videooutput) \*videoOutput) | Releases a **VideoOutput** instance.|
49| [Camera_ErrorCode](_o_h___camera.md#camera_errorcode) [OH_VideoOutput_GetActiveProfile](_o_h___camera.md#oh_videooutput_getactiveprofile) ([Camera_VideoOutput](_o_h___camera.md#camera_videooutput) \*videoOutput, [Camera_VideoProfile](_camera___video_profile.md) \*\*profile) | Obtains the profile of a **VideoOutput** instance.|
50| [Camera_ErrorCode](_o_h___camera.md#camera_errorcode) [OH_VideoOutput_DeleteProfile](_o_h___camera.md#oh_videooutput_deleteprofile) ([Camera_VideoProfile](_camera___video_profile.md) \*profile) | Deletes the profile of this **VideoOutput** instance.|
51| [Camera_ErrorCode](_o_h___camera.md#camera_errorcode) [OH_VideoOutput_GetSupportedFrameRates](_o_h___camera.md#oh_videooutput_getsupportedframerates) ([Camera_VideoOutput](_o_h___camera.md#camera_videooutput) \*videoOutput, [Camera_FrameRateRange](_camera___frame_rate_range.md) \*\*frameRateRange, uint32_t \*size) | Obtains the list of frame rates supported by a **VideoOutput** instance.|
52| [Camera_ErrorCode](_o_h___camera.md#camera_errorcode) [OH_VideoOutput_DeleteFrameRates](_o_h___camera.md#oh_videooutput_deleteframerates) ([Camera_VideoOutput](_o_h___camera.md#camera_videooutput) \*videoOutput, [Camera_FrameRateRange](_camera___frame_rate_range.md) \*frameRateRange) | Deletes the frame rate list.|
53| [Camera_ErrorCode](_o_h___camera.md#camera_errorcode) [OH_VideoOutput_SetFrameRate](_o_h___camera.md#oh_videooutput_setframerate) ([Camera_VideoOutput](_o_h___camera.md#camera_videooutput) \*videoOutput, int32_t minFps, int32_t maxFps) | Sets the frame rates for a **VideoOutput** instance.|
54| [Camera_ErrorCode](_o_h___camera.md#camera_errorcode) [OH_VideoOutput_GetActiveFrameRate](_o_h___camera.md#oh_videooutput_getactiveframerate) ([Camera_VideoOutput](_o_h___camera.md#camera_videooutput) \*videoOutput, [Camera_FrameRateRange](_camera___frame_rate_range.md) \*frameRateRange) | Obtains the active frame rates of a **VideoOutput** instance.|
55