• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# lowpower_video_sink_base.h
2
3## Overview
4
5The file declares the structs and enums of the LowPowerVideoSink.
6
7**File to include**: <multimedia/player_framework/lowpower_video_sink_base.h>
8
9**Library**: liblowpower_avsink.so
10
11**System capability**: SystemCapability.Multimedia.Media.LowPowerAVSink
12
13**Since**: 20
14
15**Related module**: [LowPowerVideoSink](capi-lowpowervideosink.md)
16
17## Summary
18
19### Structs
20
21| Name| typedef Keyword| Description|
22| -- | -- | -- |
23| [OH_LowPowerVideoSink](capi-lowpowervideosink-oh-lowpowervideosink.md) | OH_LowPowerVideoSink | Describes the declaration for the LowPowerVideoSink.|
24| [OH_LowPowerVideoSinkCallback](capi-lowpowervideosink-oh-lowpowervideosinkcallback.md) | OH_LowPowerVideoSinkCallback | Contains a set of callback function pointers for the LowPowerVideoSink.<br>To ensure the normal running of the LowPowerVideoSink, you must register the instance of this struct with the [OH_LowPowerVideoSink](capi-lowpowervideosink-oh-lowpowervideosink.md) instance and process the information reported by the callback functions.|
25
26### Functions
27
28| Name| typedef Keyword| Description|
29| -- | -- | -- |
30| [typedef void (\*OH_LowPowerVideoSink_OnDataNeeded)(OH_LowPowerVideoSink* sink, OH_AVSamplesBuffer* buffer, void *userData)](#oh_lowpowervideosink_ondataneeded) | OH_LowPowerVideoSink_OnDataNeeded | Called when the LowPowerVideoSink needs more data. This callback is included in [OH_LowPowerVideoSinkCallback](capi-lowpowervideosink-oh-lowpowervideosinkcallback.md).|
31| [typedef void (\*OH_LowPowerVideoSink_OnError)(OH_LowPowerVideoSink* sink, OH_AVErrCode errCode, const char* errMsg, void* userData)](#oh_lowpowervideosink_onerror) | OH_LowPowerVideoSink_OnError | Called when an error occurs in the LowPowerVideoSink.|
32| [typedef void (\*OH_LowPowerVideoSink_OnTargetArrived)(OH_LowPowerVideoSink* sink, const int64_t targetPts, const bool isTimeout, void* userData)](#oh_lowpowervideosink_ontargetarrived) | OH_LowPowerVideoSink_OnTargetArrived | Called when the LowPowerVideoSink reaches the target point. This callback is included in [OH_LowPowerVideoSinkCallback](capi-lowpowervideosink-oh-lowpowervideosinkcallback.md).|
33| [typedef void (\*OH_LowPowerVideoSink_OnRenderStarted)(OH_LowPowerVideoSink* sink, void* userData)](#oh_lowpowervideosink_onrenderstarted) | OH_LowPowerVideoSink_OnRenderStarted | Called when the LowPowerVideoSink starts rendering. This callback is included in [OH_LowPowerVideoSinkCallback](capi-lowpowervideosink-oh-lowpowervideosinkcallback.md).|
34| [typedef void (\*OH_LowPowerVideoSink_OnStreamChanged)(OH_LowPowerVideoSink* sink, OH_AVFormat* format, void* userData)](#oh_lowpowervideosink_onstreamchanged) | OH_LowPowerVideoSink_OnStreamChanged | Called when the stream changes in the LowPowerVideoSink. This callback is included in [OH_LowPowerVideoSinkCallback](capi-lowpowervideosink-oh-lowpowervideosinkcallback.md).|
35| [typedef void (\*OH_LowPowerVideoSink_OnFirstFrameDecoded)(OH_LowPowerVideoSink* sink, void* userData)](#oh_lowpowervideosink_onfirstframedecoded) | OH_LowPowerVideoSink_OnFirstFrameDecoded | Called when the first frame is successfully decoded in the LowPowerVideoSink. This callback is included in [OH_LowPowerVideoSinkCallback](capi-lowpowervideosink-oh-lowpowervideosinkcallback.md).|
36| [typedef void (\*OH_LowPowerVideoSink_OnEos)(OH_LowPowerVideoSink* sink, void* userData)](#oh_lowpowervideosink_oneos) | OH_LowPowerVideoSink_OnEos | Called when the playback is completed in the LowPowerVideoSink. This callback is included in [OH_LowPowerVideoSinkCallback](capi-lowpowervideosink-oh-lowpowervideosinkcallback.md).|
37
38## Function Description
39
40### OH_LowPowerVideoSink_OnDataNeeded()
41
42```
43typedef void (*OH_LowPowerVideoSink_OnDataNeeded)(OH_LowPowerVideoSink* sink,OH_AVSamplesBuffer* buffer,void *userData)
44```
45
46**Description**
47
48Called when the LowPowerVideoSink needs more data. This callback is included in [OH_LowPowerVideoSinkCallback](capi-lowpowervideosink-oh-lowpowervideosinkcallback.md).
49
50**Since**: 20
51
52
53**Parameters**
54
55| Name| Description|
56| -- | -- |
57| [OH_LowPowerVideoSink](capi-lowpowervideosink-oh-lowpowervideosink.md)* sink | Pointer to an OH_LowPowerVideoSink instance.|
58| [OH_AVSamplesBuffer](capi-avsinkbase-oh-avsamplesbuffer.md)* buffer | Pointer to an OH_AVSamplesBuffer instance.|
59| void *userData | Pointer to the data on which the caller depends when executing the callback.|
60
61### OH_LowPowerVideoSink_OnError()
62
63```
64typedef void (*OH_LowPowerVideoSink_OnError)(OH_LowPowerVideoSink* sink,OH_AVErrCode errCode,const char* errMsg,void* userData)
65```
66
67**Description**
68
69Called when an error occurs in the LowPowerVideoSink.
70
71**Since**: 20
72
73
74**Parameters**
75
76| Name| Description|
77| -- | -- |
78| [OH_LowPowerVideoSink](capi-lowpowervideosink-oh-lowpowervideosink.md)* sink | Pointer to an OH_LowPowerVideoSink instance.|
79| [OH_AVErrCode](../apis-avcodec-kit/_core.md#oh_averrcode-1) errCode | Error code returned when an error occurs during service operations.|
80| const char* errMsg | Pointer to the error message returned when an error occurs during service operations.|
81| void* userData | Pointer to the data on which the caller depends when executing the callback.|
82
83### OH_LowPowerVideoSink_OnTargetArrived()
84
85```
86typedef void (*OH_LowPowerVideoSink_OnTargetArrived)(OH_LowPowerVideoSink* sink,const int64_t targetPts,const bool isTimeout,void* userData)
87```
88
89**Description**
90
91Called when the LowPowerVideoSink reaches the target point. This callback is included in [OH_LowPowerVideoSinkCallback](capi-lowpowervideosink-oh-lowpowervideosinkcallback.md).
92
93**Since**: 20
94
95
96**Parameters**
97
98| Name| Description|
99| -- | -- |
100| [OH_LowPowerVideoSink](capi-lowpowervideosink-oh-lowpowervideosink.md)* sink | Pointer to an OH_LowPowerVideoSink instance.|
101| const int64_t targetPts | Presentation timestamp (PTS) of the target point.|
102| const bool isTimeout | Whether the wait for the target point has timed out. If it has timed out, this value is **false**.|
103| void* userData | Pointer to the data on which the caller depends when executing the callback.|
104
105### OH_LowPowerVideoSink_OnRenderStarted()
106
107```
108typedef void (*OH_LowPowerVideoSink_OnRenderStarted)(OH_LowPowerVideoSink* sink, void* userData)
109```
110
111**Description**
112
113Called when the LowPowerVideoSink starts rendering. This callback is included in [OH_LowPowerVideoSinkCallback](capi-lowpowervideosink-oh-lowpowervideosinkcallback.md).
114
115**Since**: 20
116
117
118**Parameters**
119
120| Name| Description|
121| -- | -- |
122| [OH_LowPowerVideoSink](capi-lowpowervideosink-oh-lowpowervideosink.md)* sink | Pointer to an OH_LowPowerVideoSink instance.|
123|  void* userData | Pointer to the data on which the caller depends when executing the callback.|
124
125### OH_LowPowerVideoSink_OnStreamChanged()
126
127```
128typedef void (*OH_LowPowerVideoSink_OnStreamChanged)(OH_LowPowerVideoSink* sink, OH_AVFormat* format, void* userData)
129```
130
131**Description**
132
133Called when the stream changes in the LowPowerVideoSink. This callback is included in [OH_LowPowerVideoSinkCallback](capi-lowpowervideosink-oh-lowpowervideosinkcallback.md).
134
135**Since**: 20
136
137
138**Parameters**
139
140| Name| Description|
141| -- | -- |
142| [OH_LowPowerVideoSink](capi-lowpowervideosink-oh-lowpowervideosink.md)* sink | Pointer to an OH_LowPowerVideoSink instance.|
143| [OH_AVFormat](../apis-avcodec-kit/_core.md#oh_avformat)* format | Pointer to the changed parameters and their values.|
144|  void* userData | Pointer to the data on which the caller depends when executing the callback.|
145
146### OH_LowPowerVideoSink_OnFirstFrameDecoded()
147
148```
149typedef void (*OH_LowPowerVideoSink_OnFirstFrameDecoded)(OH_LowPowerVideoSink* sink, void* userData)
150```
151
152**Description**
153
154Called when the first frame is successfully decoded in the LowPowerVideoSink. This callback is included in [OH_LowPowerVideoSinkCallback](capi-lowpowervideosink-oh-lowpowervideosinkcallback.md).
155
156**Since**: 20
157
158
159**Parameters**
160
161| Name| Description|
162| -- | -- |
163| [OH_LowPowerVideoSink](capi-lowpowervideosink-oh-lowpowervideosink.md)* sink | Pointer to an OH_LowPowerVideoSink instance.|
164|  void* userData | Pointer to the data on which the caller depends when executing the callback.|
165
166### OH_LowPowerVideoSink_OnEos()
167
168```
169typedef void (*OH_LowPowerVideoSink_OnEos)(OH_LowPowerVideoSink* sink, void* userData)
170```
171
172**Description**
173
174Called when the playback is completed in the LowPowerVideoSink. This callback is included in [OH_LowPowerVideoSinkCallback](capi-lowpowervideosink-oh-lowpowervideosinkcallback.md).
175
176**Since**: 20
177
178
179**Parameters**
180
181| Name| Description|
182| -- | -- |
183| [OH_LowPowerVideoSink](capi-lowpowervideosink-oh-lowpowervideosink.md)* sink | Pointer to an OH_LowPowerVideoSink instance.|
184|  void* userData | Pointer to the data on which the caller depends when executing the callback.|
185