@byteplus/react-native-live-push 1.0.1 → 1.0.3-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/build.gradle +2 -2
- package/android/src/main/java/com/volcengine/velive/rn/push/NativeVariableManager.java +1 -1
- package/android/src/main/java/com/volcengine/velive/rn/push/VeLivePushModule.java +5 -3
- package/android/src/main/java/com/volcengine/velive/rn/push/VeLivePushViewManager.java +10 -5
- package/ios/VeLivePushView.m +1 -1
- package/ios/VeLivePushViewManager.m +5 -1
- package/lib/commonjs/index.js +21799 -17839
- package/lib/module/index.js +21799 -17832
- package/lib/typescript/android/index.d.ts +3 -0
- package/lib/typescript/codegen/android/api.d.ts +1350 -75
- package/lib/typescript/codegen/android/keytype.d.ts +439 -62
- package/lib/typescript/codegen/android/types.d.ts +7 -6
- package/lib/typescript/codegen/ios/api.d.ts +11 -19
- package/lib/typescript/codegen/ios/callback.d.ts +17 -25
- package/lib/typescript/codegen/ios/external.d.ts +1 -0
- package/lib/typescript/codegen/ios/index.d.ts +1 -0
- package/lib/typescript/codegen/ios/keytype.d.ts +6 -34
- package/lib/typescript/codegen/ios/types.d.ts +16 -5
- package/lib/typescript/codegen/pack/api.d.ts +1250 -1216
- package/lib/typescript/codegen/pack/callback.d.ts +153 -295
- package/lib/typescript/codegen/pack/errorcode.d.ts +11 -150
- package/lib/typescript/codegen/pack/index.d.ts +1 -1
- package/lib/typescript/codegen/pack/keytype.d.ts +806 -1366
- package/lib/typescript/codegen/pack/types.d.ts +67 -0
- package/lib/typescript/component.d.ts +10 -3
- package/lib/typescript/core/api.d.ts +2 -2
- package/lib/typescript/core/callback.d.ts +2 -2
- package/lib/typescript/core/errorcode.d.ts +2 -2
- package/lib/typescript/core/keytype.d.ts +2 -7
- package/lib/typescript/platforms/ios/extends.d.ts +17 -0
- package/package.json +2 -1
- package/react-native-velive-push.podspec +3 -3
|
@@ -1,372 +1,1647 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { VeLiveVideoBufferType, VeLivePixelFormat, VeLiveVideoRotation, VeLiveVideoEffectLicenseConfiguration, VeLivePusherLogLevel, VeLivePusherLogConfig, VeLivePusherRenderMode, VeLiveVideoMirrorType, VeLiveVideoCaptureType, VeLiveAudioCaptureType, VeLiveVideoEncoderConfiguration, VeLiveAudioEncoderConfiguration, VeLiveFileRecorderConfiguration, VeLiveOrientation, VeLiveAudioMixType, VeLiveStreamMixDescription, VeLiveAudioBufferType, VeLiveAudioSampleRate, VeLiveAudioChannel, VeLiveVideoCaptureConfiguration, VeLiveAudioCaptureConfiguration } from './keytype';
|
|
2
|
+
import { int, long, Matrix, ByteBuffer, Runnable, float, String, EGLContext, View, Bitmap, Intent, Context, LiveSdkSetting } from './types';
|
|
3
3
|
import { VeLiveVideoEffectCallback, VeLiveVideoEffectHandleCallback, VeLivePusherObserver, VeLivePusherStatisticsObserver, VeLiveFileRecordingListener, VeLiveVideoFrameFilter, VeLiveAudioFrameFilter, VeLiveVideoFrameListener, VeLiveAudioFrameListener, VeLiveSnapshotListener, VeLiveMediaPlayerListener, VeLiveMediaPlayerFrameListener } from './callback';
|
|
4
4
|
export declare class VeLiveVideoFrame {
|
|
5
|
+
constructor(width: int, height: int, pts: long, texId: int, isOes: boolean, matrix: Matrix);
|
|
6
|
+
constructor(width: int, height: int, pts: long, byteBuffer: ByteBuffer);
|
|
7
|
+
constructor(width: int, height: int, pts: long, data: ArrayBuffer);
|
|
8
|
+
constructor();
|
|
5
9
|
width: number;
|
|
6
10
|
height: number;
|
|
7
11
|
ptsUs: number;
|
|
8
12
|
textureId: number;
|
|
9
13
|
data: any;
|
|
10
|
-
static new_VeLiveVideoFrame(): VeLiveVideoFrame;
|
|
11
|
-
static new_VeLiveVideoFrame_int$int$long$int$boolean$Matrix(width: int, height: int, pts: long, texId: int, isOes: boolean, matrix: Matrix): VeLiveVideoFrame;
|
|
12
|
-
static new_VeLiveVideoFrame_int$int$long$ByteBuffer(width: int, height: int, pts: long, byteBuffer: ByteBuffer): VeLiveVideoFrame;
|
|
13
|
-
static new_VeLiveVideoFrame_int$int$long$byte(width: int, height: int, pts: long, data: ArrayBuffer): VeLiveVideoFrame;
|
|
14
14
|
|
|
15
|
+
/** {en}
|
|
16
|
+
* @detail api
|
|
17
|
+
* @brief Increases the reference count of the `VeLiveVideoFrame` object. Call this method to increase the reference count by 1 if you need to continue using the `VeLiveVideoFrame` object.
|
|
18
|
+
*
|
|
19
|
+
*/
|
|
15
20
|
retain(): void;
|
|
16
21
|
|
|
22
|
+
/** {en}
|
|
23
|
+
* @detail api
|
|
24
|
+
* @brief Releases the reference to the `VeLiveVideoFrame` object. Call this method to reduce the reference count by 1 when you no longer need to use the `VeLiveVideoFrame` object. When the reference count is reduced to 0, it means there is no reference to the object, and the object can be safely released or destroyed.
|
|
25
|
+
*
|
|
26
|
+
*/
|
|
17
27
|
release(): void;
|
|
18
28
|
|
|
29
|
+
/** {en}
|
|
30
|
+
* @detail api
|
|
31
|
+
* @brief Gets the data type of the video.
|
|
32
|
+
* @return <br>
|
|
33
|
+
* The data type of the video. See VeLiveVideoBufferType {@link #VeLiveVideoBufferType} for details.
|
|
34
|
+
*
|
|
35
|
+
*/
|
|
19
36
|
getBufferType(): VeLiveVideoBufferType;
|
|
20
37
|
|
|
21
|
-
|
|
22
|
-
|
|
38
|
+
/** {en}
|
|
39
|
+
* @detail api
|
|
40
|
+
* @brief Sets the data type of the video.
|
|
41
|
+
* @param bufferType The data type of the video. See VeLiveVideoBufferType {@link #VeLiveVideoBufferType} for details.
|
|
42
|
+
* @return <br>
|
|
43
|
+
* The video frame object. See VeLiveVideoFrame {@link #VeLiveVideoFrame} for details.
|
|
44
|
+
*
|
|
45
|
+
*/
|
|
46
|
+
setBufferType(bufferType: VeLiveVideoBufferType): this;
|
|
47
|
+
|
|
48
|
+
/** {en}
|
|
49
|
+
* @detail api
|
|
50
|
+
* @brief Gets the pixel format.
|
|
51
|
+
* @return <br>
|
|
52
|
+
* The pixel format. See VeLivePixelFormat {@link #VeLivePixelFormat} for details.
|
|
53
|
+
*
|
|
54
|
+
*/
|
|
23
55
|
getPixelFormat(): VeLivePixelFormat;
|
|
24
56
|
|
|
25
|
-
|
|
26
|
-
|
|
57
|
+
/** {en}
|
|
58
|
+
* @detail api
|
|
59
|
+
* @brief Sets the pixel format.
|
|
60
|
+
* @param pixelFormat The pixel format. See VeLivePixelFormat {@link #VeLivePixelFormat} for details.
|
|
61
|
+
* @return <br>
|
|
62
|
+
* The video frame object. See VeLiveVideoFrame {@link #VeLiveVideoFrame} for details.
|
|
63
|
+
*
|
|
64
|
+
*/
|
|
65
|
+
setPixelFormat(pixelFormat: VeLivePixelFormat): this;
|
|
66
|
+
|
|
67
|
+
/** {en}
|
|
68
|
+
* @detail api
|
|
69
|
+
* @brief Gets the rotation angle in a clockwise direction.
|
|
70
|
+
* @return <br>
|
|
71
|
+
* The rotation angle in a clockwise direction. See VeLiveVideoRotation {@link #VeLiveVideoRotation} for details.
|
|
72
|
+
*
|
|
73
|
+
*/
|
|
27
74
|
getRotation(): VeLiveVideoRotation;
|
|
28
75
|
|
|
29
|
-
|
|
30
|
-
|
|
76
|
+
/** {en}
|
|
77
|
+
* @detail api
|
|
78
|
+
* @brief Sets the rotation angle in a clockwise direction.
|
|
79
|
+
* @param rotation The rotation angle in a clockwise direction. See VeLiveVideoRotation {@link #VeLiveVideoRotation} for details.
|
|
80
|
+
* @return <br>
|
|
81
|
+
* The video frame object. See VeLiveVideoFrame {@link #VeLiveVideoFrame} for details.
|
|
82
|
+
*
|
|
83
|
+
*/
|
|
84
|
+
setRotation(rotation: VeLiveVideoRotation): this;
|
|
85
|
+
|
|
86
|
+
/** {en}
|
|
87
|
+
* @detail api
|
|
88
|
+
* @brief Gets the width of the video frame.
|
|
89
|
+
* @return <br>
|
|
90
|
+
* The width of the video frame.
|
|
91
|
+
*
|
|
92
|
+
*/
|
|
31
93
|
getWidth(): int;
|
|
32
94
|
|
|
95
|
+
/** {en}
|
|
96
|
+
* @detail api
|
|
97
|
+
* @brief Gets the height of the video frame.
|
|
98
|
+
* @return <br>
|
|
99
|
+
* The height of the video frame.
|
|
100
|
+
*
|
|
101
|
+
*/
|
|
33
102
|
getHeight(): int;
|
|
34
103
|
|
|
104
|
+
/** {en}
|
|
105
|
+
* @detail api
|
|
106
|
+
* @brief Gets the width of the rotated video frame.
|
|
107
|
+
* @return <br>
|
|
108
|
+
* The width of the rotated video frame.
|
|
109
|
+
*
|
|
110
|
+
*/
|
|
35
111
|
getRotatedWidth(): int;
|
|
36
112
|
|
|
113
|
+
/** {en}
|
|
114
|
+
* @detail api
|
|
115
|
+
* @brief Gets the height of the rotated video frame.
|
|
116
|
+
* @return <br>
|
|
117
|
+
* The height of the rotated video frame.
|
|
118
|
+
*
|
|
119
|
+
*/
|
|
37
120
|
getRotatedHeight(): int;
|
|
38
121
|
|
|
122
|
+
/** {en}
|
|
123
|
+
* @detail api
|
|
124
|
+
* @brief Gets the timestamp of the video frame.
|
|
125
|
+
* @return <br>
|
|
126
|
+
* The timestamp of the video frame, in μs.
|
|
127
|
+
*
|
|
128
|
+
*/
|
|
39
129
|
getPts(): long;
|
|
40
130
|
|
|
131
|
+
/** {en}
|
|
132
|
+
* @detail api
|
|
133
|
+
* @brief Gets the texture ID.
|
|
134
|
+
* @return <br>
|
|
135
|
+
* The texture ID.
|
|
136
|
+
*
|
|
137
|
+
*/
|
|
41
138
|
getTextureId(): int;
|
|
42
139
|
|
|
140
|
+
/** {en}
|
|
141
|
+
* @detail api
|
|
142
|
+
* @brief Gets the texture matrix.
|
|
143
|
+
* @return <br>
|
|
144
|
+
* The texture matrix.
|
|
145
|
+
*
|
|
146
|
+
*/
|
|
43
147
|
getTextureMatrix(): Matrix;
|
|
44
148
|
|
|
149
|
+
/** {en}
|
|
150
|
+
* @detail api
|
|
151
|
+
* @brief Gets the video data in the format of ByteBuffer.
|
|
152
|
+
* @return <br>
|
|
153
|
+
* The video data in the format of ByteBuffer.
|
|
154
|
+
*
|
|
155
|
+
*/
|
|
45
156
|
getBuffer(): ByteBuffer;
|
|
46
157
|
|
|
158
|
+
/** {en}
|
|
159
|
+
* @detail api
|
|
160
|
+
* @brief Gets the video data in the format of byte [].
|
|
161
|
+
* @return <br>
|
|
162
|
+
* The video data in the format of byte [].
|
|
163
|
+
*
|
|
164
|
+
*/
|
|
47
165
|
getData(): ArrayBuffer;
|
|
48
166
|
|
|
167
|
+
/** {en}
|
|
168
|
+
* @detail api
|
|
169
|
+
* @brief Gets the internal release callback.
|
|
170
|
+
* @return <br>
|
|
171
|
+
* The internal release callback.
|
|
172
|
+
*
|
|
173
|
+
*/
|
|
49
174
|
getReleaseCallback(): Runnable;
|
|
50
175
|
|
|
51
|
-
|
|
176
|
+
/** {en}
|
|
177
|
+
* @detail api
|
|
178
|
+
* @brief Sets the internal release callback.
|
|
179
|
+
* @param releaseCallback The internal release callback.
|
|
180
|
+
* @return <br>
|
|
181
|
+
* The video frame object. See VeLiveVideoFrame {@link #VeLiveVideoFrame} for details.
|
|
182
|
+
*
|
|
183
|
+
*/
|
|
184
|
+
setReleaseCallback(releaseCallback: Runnable): this;
|
|
52
185
|
}
|
|
53
186
|
export declare class VeLiveCameraDevice {
|
|
54
187
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
188
|
+
/** {en}
|
|
189
|
+
* @detail api
|
|
190
|
+
* @brief Gets the frame rate range supported by the camera.
|
|
191
|
+
* @return <br>
|
|
192
|
+
* The frame rate range supported by the camera.
|
|
193
|
+
* @notes <br>Call this method after calling [startVideoCapture](#VeLivePusher-startvideocapture) to start camera capture.
|
|
194
|
+
* @order 66
|
|
195
|
+
*
|
|
196
|
+
*/
|
|
197
|
+
getRealFpsRange(): Array<int>;
|
|
198
|
+
|
|
199
|
+
/** {en}
|
|
200
|
+
* @detail api
|
|
201
|
+
* @brief Enables or disables the flashlight.
|
|
202
|
+
* @return <br>
|
|
203
|
+
* - 0: Success;
|
|
204
|
+
* - ≠ 0: Failure.
|
|
205
|
+
* @notes <br>Call this method after calling [startVideoCapture](#VeLivePusher-startvideocapture) to start camera capture.
|
|
206
|
+
* @order 67
|
|
207
|
+
* @param enable Whether to enable the flashlight. <br>
|
|
208
|
+
* - true: Enable;
|
|
209
|
+
* - false: (Default) Disable.
|
|
210
|
+
*
|
|
211
|
+
*/
|
|
71
212
|
enableTorch(enable: boolean): int;
|
|
72
213
|
|
|
214
|
+
/** {en}
|
|
215
|
+
* @detail api
|
|
216
|
+
* @brief Sets the zoom factor of the camera.
|
|
217
|
+
* @return <br>
|
|
218
|
+
* - 0: Success;
|
|
219
|
+
* - ≠ 0: Failure.
|
|
220
|
+
* @notes <br>Call this method after calling [startVideoCapture](#VeLivePusher-startvideocapture) to start camera capture.
|
|
221
|
+
* @order 68
|
|
222
|
+
* @param ratio The zoom factor. The SDK uses the original size by default. The range of the zoom factor is [[getMinZoomRatio](#VeLiveCameraDevice-getminzoomratio),[getMaxZoomRatio](#VeLiveCameraDevice-getmaxzoomratio)].
|
|
223
|
+
*
|
|
224
|
+
*/
|
|
73
225
|
setZoomRatio(ratio: float): int;
|
|
74
226
|
|
|
227
|
+
/** {en}
|
|
228
|
+
* @detail api
|
|
229
|
+
* @brief Gets the current zoom factor of the camera.
|
|
230
|
+
* @return <br>
|
|
231
|
+
* - ≤ 0: The camera does not support zooming;
|
|
232
|
+
* - \\\\> 0: The zoom factor.
|
|
233
|
+
* @notes <br>Call this method after calling [startVideoCapture](#VeLivePusher-startvideocapture) to start camera capture.
|
|
234
|
+
* @order 68
|
|
235
|
+
*
|
|
236
|
+
*/
|
|
75
237
|
getCurrentZoomRatio(): float;
|
|
76
238
|
|
|
239
|
+
/** {en}
|
|
240
|
+
* @detail api
|
|
241
|
+
* @brief Gets the maximum zoom factor of the camera.
|
|
242
|
+
* @return <br>
|
|
243
|
+
* - ≤ 0: The camera does not support zooming;
|
|
244
|
+
* - \\\\> 0: The maximum zoom factor.
|
|
245
|
+
* @notes <br>Call this method after calling [startVideoCapture](#VeLivePusher-startvideocapture) to start camera capture.
|
|
246
|
+
* @order 69
|
|
247
|
+
*
|
|
248
|
+
*/
|
|
77
249
|
getMaxZoomRatio(): float;
|
|
78
250
|
|
|
251
|
+
/** {en}
|
|
252
|
+
* @detail api
|
|
253
|
+
* @brief Gets the minimum zoom factor of the camera.
|
|
254
|
+
* @return <br>
|
|
255
|
+
* - ≤ 0: The camera does not support zooming;
|
|
256
|
+
* - \\\\> 0: The minimum zoom factor.
|
|
257
|
+
* @notes <br>Call this method after calling [startVideoCapture](#VeLivePusher-startvideocapture) to start camera capture.
|
|
258
|
+
* @order 70
|
|
259
|
+
*
|
|
260
|
+
*/
|
|
79
261
|
getMinZoomRatio(): float;
|
|
80
262
|
|
|
263
|
+
/** {en}
|
|
264
|
+
* @detail api
|
|
265
|
+
* @brief Checks whether autofocus is supported.
|
|
266
|
+
* @return <br>
|
|
267
|
+
* - true: Supported;
|
|
268
|
+
* - false: Not supported.
|
|
269
|
+
* @notes <br>Call this method after calling [startVideoCapture](#VeLivePusher-startvideocapture) to start camera capture.
|
|
270
|
+
* @order 71
|
|
271
|
+
*
|
|
272
|
+
*/
|
|
81
273
|
isAutoFocusEnabled(): boolean;
|
|
82
274
|
|
|
275
|
+
/** {en}
|
|
276
|
+
* @detail api
|
|
277
|
+
* @brief Enables or disables autofocus.
|
|
278
|
+
* @return <br>
|
|
279
|
+
* - 0: Success;
|
|
280
|
+
* - ≠ 0: Failure.
|
|
281
|
+
* @notes <br>Call this method after calling [startVideoCapture](#VeLivePusher-startvideocapture) to start camera capture.
|
|
282
|
+
* @order 72
|
|
283
|
+
* @param enable Whether to enable autofocus.
|
|
284
|
+
* - true: (Default) Enable;
|
|
285
|
+
* - false: Disable.
|
|
286
|
+
*
|
|
287
|
+
*/
|
|
83
288
|
enableAutoFocus(enable: boolean): int;
|
|
84
289
|
|
|
290
|
+
/** {en}
|
|
291
|
+
* @detail api
|
|
292
|
+
* @brief Sets the focus position of the camera.
|
|
293
|
+
* @return <br>
|
|
294
|
+
* - 0: Success;
|
|
295
|
+
* - ≠ 0: Failure.
|
|
296
|
+
* @notes <br>Call this method after calling [startVideoCapture](#VeLivePusher-startvideocapture) to start camera capture.
|
|
297
|
+
* @order 73
|
|
298
|
+
* @param viewW The width of the current view.
|
|
299
|
+
* @param viewH The height of the current view.
|
|
300
|
+
* @param x The horizontal coordinate of the focus point from the upper left corner of the current view.
|
|
301
|
+
* @param y The vertical coordinate of the focus point from the upper left corner of the current view.
|
|
302
|
+
*
|
|
303
|
+
*/
|
|
85
304
|
setFocusPosition(viewW: int, viewH: int, x: int, y: int): int;
|
|
86
305
|
|
|
306
|
+
/** {en}
|
|
307
|
+
* @detail api
|
|
308
|
+
* @brief Checks if manual exposure setting is available for the currently used camera.
|
|
309
|
+
* @return - YES: Available.
|
|
310
|
+
* - NO: Unavailable.
|
|
311
|
+
* @notes You must call [startVideoCapture](#VeLivePusher-startvideocapture) to start SDK internal video capturing before calling this API.
|
|
312
|
+
* @order 74
|
|
313
|
+
*
|
|
314
|
+
*/
|
|
87
315
|
isExposurePositionSupported(): boolean;
|
|
88
316
|
|
|
317
|
+
/** {en}
|
|
318
|
+
* @return - =0: Success.
|
|
319
|
+
* - ≠0: Failure.
|
|
320
|
+
* @detail api
|
|
321
|
+
* @brief Sets the manual exposure position for the currently used camera.
|
|
322
|
+
* @notes - You must call [startVideoCapture](#VeLivePusher-startvideocapture) to start SDK internal video capturing, and use SDK internal rendering before calling this API.
|
|
323
|
+
* - The camera exposure point setting will be invalid after calling [stopVideoCapture](#VeLivePusher-stopvideocapture) to stop internal capturing.
|
|
324
|
+
* @order 75
|
|
325
|
+
* @param viewW The width of the current view.
|
|
326
|
+
* @param viewH The height of the current view.
|
|
327
|
+
* @param x The horizontal coordinate of the focus point from the upper left corner of the current view.
|
|
328
|
+
* @param y The vertical coordinate of the focus point from the upper left corner of the current view.
|
|
329
|
+
*
|
|
330
|
+
*/
|
|
89
331
|
setExposurePosition(viewW: int, viewH: int, x: int, y: int): int;
|
|
90
332
|
|
|
333
|
+
/** {en}
|
|
334
|
+
* @return - ≤0: The camera does not support exposure;
|
|
335
|
+
* - \\>0: The minimum exposure compensation.
|
|
336
|
+
* @detail api
|
|
337
|
+
* @brief Gets the minimum exposure compensation of the camera.
|
|
338
|
+
* @notes Call this method after calling [startVideoCapture](#VeLivePusher-startvideocapture) to start camera capture.
|
|
339
|
+
* @order 76
|
|
340
|
+
*
|
|
341
|
+
*/
|
|
91
342
|
getMinExposureCompensation(): float;
|
|
92
343
|
|
|
344
|
+
/** {en}
|
|
345
|
+
* @return - ≤0: The camera does not support exposure;
|
|
346
|
+
* - \\>0: The maximum exposure compensation.
|
|
347
|
+
* @detail api
|
|
348
|
+
* @brief Gets the maximum exposure compensation of the camera.
|
|
349
|
+
* @notes Call this method after calling [startVideoCapture](#VeLivePusher-startvideocapture) to start camera capture.
|
|
350
|
+
* @order 77
|
|
351
|
+
*
|
|
352
|
+
*/
|
|
93
353
|
getMaxExposureCompensation(): float;
|
|
94
354
|
|
|
355
|
+
/** {en}
|
|
356
|
+
* @return - =0: Success.
|
|
357
|
+
* - ≠0: Failure.
|
|
358
|
+
* @detail api
|
|
359
|
+
* @brief Sets the exposure compensation for the currently used camera.
|
|
360
|
+
* @notes <br>
|
|
361
|
+
* - You must call [startVideoCapture](#VeLivePusher-startvideocapture) to start SDK internal video capturing, and use SDK internal rendering before calling this API.
|
|
362
|
+
* - The camera exposure compensation setting will be invalid after calling [stopVideoCapture](#VeLivePusher-stopvideocapture) to stop internal capturing.
|
|
363
|
+
* @order 78
|
|
364
|
+
* @param value The range of the exposure compensation is [[getMinExposureCompensation](#VeLiveCameraDevice-getminexposurecompensation),[getMaxExposureCompensation](#VeLiveCameraDevice-getmaxexposurecompensation)], Default to 0, which means no exposure compensation.
|
|
365
|
+
*
|
|
366
|
+
*/
|
|
95
367
|
setExposureCompensation(value: float): int;
|
|
96
368
|
}
|
|
97
369
|
export declare class VeLiveVideoEffectManager {
|
|
98
370
|
|
|
371
|
+
/** {en}
|
|
372
|
+
* @detail api
|
|
373
|
+
* @brief Initializes the special effects manager.
|
|
374
|
+
* @return <br>
|
|
375
|
+
* - 0: Success;
|
|
376
|
+
* - -1: Failure.
|
|
377
|
+
* @order 89
|
|
378
|
+
* @param config The special effects configurations. See VeLiveVideoEffectLicenseConfiguration for details.
|
|
379
|
+
*
|
|
380
|
+
*/
|
|
99
381
|
setupWithConfig(config: VeLiveVideoEffectLicenseConfiguration): int;
|
|
100
382
|
|
|
383
|
+
/** {en}
|
|
384
|
+
* @detail api
|
|
385
|
+
* @brief Updates the special effects license. This method is effective only if you authenticate the license online.
|
|
386
|
+
* @param callback The result callback.
|
|
387
|
+
* @notes <br>
|
|
388
|
+
* - Call this method after you set the video effects license by calling setupWithConfig {@link #setupWithConfig};
|
|
389
|
+
* - This method is an asynchronous operation.
|
|
390
|
+
* @order 90
|
|
391
|
+
*
|
|
392
|
+
*/
|
|
101
393
|
updateLicense(callback: VeLiveVideoEffectCallback): void;
|
|
102
394
|
|
|
395
|
+
/** {en}
|
|
396
|
+
* @detail api
|
|
397
|
+
* @brief Creates or destroys the special effects engine.
|
|
398
|
+
* @return <br>
|
|
399
|
+
* - 0: Success;
|
|
400
|
+
* - -1: Failure.
|
|
401
|
+
* @notes <br>
|
|
402
|
+
* - Call this method after calling [setupWithConfig](broadcast-sdk-for-android-api#VeLiveVideoEffectManager-setupwithconfig) and [setAlgorithmModelPath](broadcast-sdk-for-android-api#VeLiveVideoEffectManager-setalgorithmmodelpath) ;
|
|
403
|
+
* - This method does not enable or disable video special effects. Call [setComposeNodes](broadcast-sdk-for-android-api#VeLiveVideoEffectManager-setcomposenodes) after calling this method to enable video special effects;
|
|
404
|
+
* - In most cases, the special effects engine will be destroyed when the effects manager is destroyed. However, if you have high performance requirements, you can call this method to manually destroy the special effects engine when you are not using special effects-related features;
|
|
405
|
+
* - Creating or destroying the special effects engine repeatedly can result in increased processing time.
|
|
406
|
+
* @order 92
|
|
407
|
+
* @param enable Whether to create or destroy the special effects engine.<br>
|
|
408
|
+
* - true: Create;
|
|
409
|
+
* - false: (Default) Destroy.
|
|
410
|
+
* @param callback [VeLiveVideoEffectCallback](broadcast-sdk-for-android-callback\\#VeLiveVideoEffectCallback), the listener for special effect events.
|
|
411
|
+
*
|
|
412
|
+
*/
|
|
103
413
|
setEnable(enable: boolean, callback: VeLiveVideoEffectCallback): void;
|
|
104
414
|
|
|
415
|
+
/** {en}
|
|
416
|
+
* @detail api
|
|
417
|
+
* @brief Sets the path to the algorithm model package of the special effects.
|
|
418
|
+
* @param path The path to the algorithm model package of the special effects.
|
|
419
|
+
* @return <br>
|
|
420
|
+
* - 0: Success;
|
|
421
|
+
* - -1: Failure.
|
|
422
|
+
* @notes <br>
|
|
423
|
+
* Call this method after you set the special effects license by calling setupWithConfig {@link #setupWithConfig}.
|
|
424
|
+
* @order 91
|
|
425
|
+
*
|
|
426
|
+
*/
|
|
105
427
|
setAlgorithmModelPath(path: String): int;
|
|
106
428
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
429
|
+
/** {en}
|
|
430
|
+
* @detail api
|
|
431
|
+
* @brief Sets the special effects you want to apply to the video. You can choose effects from ComposeMakeup.bundle.
|
|
432
|
+
* @param nodes The paths to the special effects resource.
|
|
433
|
+
* @return <br>
|
|
434
|
+
* - 0: Success;
|
|
435
|
+
* - -1: Failure.
|
|
436
|
+
* @notes <br>
|
|
437
|
+
* - Call this method after calling setEnable {@link #VeLiveVideoEffectManager #setEnable};
|
|
438
|
+
* - If you make multiple calls to this method, only the last call takes effect;
|
|
439
|
+
* - To add more effects to the existing effects settings, call appendComposeNodes {@link #VeLiveVideoEffectManager#appendComposeNodes}.
|
|
440
|
+
* @order 93
|
|
441
|
+
*
|
|
442
|
+
*/
|
|
443
|
+
setComposeNodes(nodes: Array<String>): int;
|
|
444
|
+
|
|
445
|
+
/** {en}
|
|
446
|
+
* @detail api
|
|
447
|
+
* @brief Adds one or more effects to the existing effects settings that you have configured by calling setComposeNodes {@link #VeLiveVideoEffectManager#setComposeNodes}.
|
|
448
|
+
* @param nodes The paths to the special effects resource.
|
|
449
|
+
* @return <br>
|
|
450
|
+
* - 0: Success;
|
|
451
|
+
* - -1: Failure.
|
|
452
|
+
* @notes <br>
|
|
453
|
+
* - Call this method after calling setEnable {@link #VeLiveVideoEffectManager #setEnable}.
|
|
454
|
+
* @order 94
|
|
455
|
+
*
|
|
456
|
+
*/
|
|
457
|
+
appendComposeNodes(nodes: Array<String>): int;
|
|
458
|
+
|
|
459
|
+
/** {en}
|
|
460
|
+
* @detail api
|
|
461
|
+
* @brief Removes one or more special effects resource set by the setComposeNodes{@link #VeLiveVideoEffectManager#setComposeNodes} or appendComposeNodes{@link #VeLiveVideoEffectManager#appendComposeNodes} methods.
|
|
462
|
+
* @param nodes The paths to the special effects resource.
|
|
463
|
+
* @return <br>
|
|
464
|
+
* - 0: Success;
|
|
465
|
+
* - -1: Failure.
|
|
466
|
+
* @notes <br>
|
|
467
|
+
* - Call this method after calling setEnable {@link #VeLiveVideoEffectManager #setEnable}.
|
|
468
|
+
* @order 94
|
|
469
|
+
*
|
|
470
|
+
*/
|
|
471
|
+
removeComposeNodes(nodes: Array<String>): int;
|
|
472
|
+
|
|
473
|
+
/** {en}
|
|
474
|
+
* @detail api
|
|
475
|
+
* @brief Sets the intensity of a special effect.
|
|
476
|
+
* @param node The path to the special effects resource.
|
|
477
|
+
* @param key The key of the resource.
|
|
478
|
+
* @param intensity The intensity of the effect. The value range is [0.0, 1.0].
|
|
479
|
+
* @return <br>
|
|
480
|
+
* - 0: Success;
|
|
481
|
+
* - -1: Failure.
|
|
482
|
+
* @notes <br>
|
|
483
|
+
* - Call this method after calling setComposeNodes {@link #VeLiveVideoEffectManager#setComposeNodes} or appendComposeNodes {@link #VeLiveVideoEffectManager#appendComposeNodes};
|
|
484
|
+
* - This method is only applicable to special effects that contain the three parameters mentioned above. For effects that do not have the intensity parameter, such as stickers, the method does not have any effect.
|
|
485
|
+
* @order 95
|
|
486
|
+
*
|
|
487
|
+
*/
|
|
113
488
|
updateComposerNodeIntensity(node: String, key: String, intensity: float): int;
|
|
114
489
|
|
|
490
|
+
/** {en}
|
|
491
|
+
* @detail api
|
|
492
|
+
* @brief Sets the color filter.
|
|
493
|
+
* @param path The absolute path to the filter resource.
|
|
494
|
+
* @return <br>
|
|
495
|
+
* - 0: Success;
|
|
496
|
+
* - -1: Failure.
|
|
497
|
+
* @notes <br>
|
|
498
|
+
* Call this method after calling setEnable {@link #VeLiveVideoEffectManager #setEnable}.
|
|
499
|
+
* @order 96
|
|
500
|
+
*
|
|
501
|
+
*/
|
|
115
502
|
setFilter(path: String): int;
|
|
116
503
|
|
|
504
|
+
/** {en}
|
|
505
|
+
* @detail api
|
|
506
|
+
* @brief Sets the intensity of the color filter.
|
|
507
|
+
* @return <br>
|
|
508
|
+
* - 0: Success;
|
|
509
|
+
* - -1: Failure.
|
|
510
|
+
* @notes <br>Call this method after calling setFilter.
|
|
511
|
+
* @order 97
|
|
512
|
+
* @param intensity The intensity. The value range is [0.0, 1.0].
|
|
513
|
+
*
|
|
514
|
+
*/
|
|
117
515
|
updateFilterIntensity(intensity: float): int;
|
|
118
516
|
|
|
517
|
+
/** {en}
|
|
518
|
+
* @detail api
|
|
519
|
+
* @brief Sets the sticker.
|
|
520
|
+
* @param path The absolute path to the sticker resource.
|
|
521
|
+
* @return <br>
|
|
522
|
+
* - 0: Success;
|
|
523
|
+
* - -1: Failure.
|
|
524
|
+
* @notes <br>
|
|
525
|
+
* Call this method after calling setEnable {@link #VeLiveVideoEffectManager #setEnable}.
|
|
526
|
+
* @order 98
|
|
527
|
+
*
|
|
528
|
+
*/
|
|
119
529
|
setSticker(path: String): int;
|
|
120
530
|
|
|
531
|
+
/** {en}
|
|
532
|
+
* @detail api
|
|
533
|
+
* @brief Advanced settings for special effects.
|
|
534
|
+
* @param callback A callback function that takes a handle as an argument.
|
|
535
|
+
* @param isGLThread Whether the callback is called in the GL thread.
|
|
536
|
+
* @param isAsync Whether the callback is executed synchronously.
|
|
537
|
+
* @notes <br>
|
|
538
|
+
* Call the method after calling setEnable {@link #VeLiveVideoEffectManager #setEnable}. Do not perform frequent synchronization operations in the main thread.
|
|
539
|
+
* @order 99
|
|
540
|
+
*
|
|
541
|
+
*/
|
|
121
542
|
setAdvancedFeature(callback: VeLiveVideoEffectHandleCallback, isGLThread: boolean, isAsync: boolean): int;
|
|
122
543
|
}
|
|
123
|
-
export declare class WrappedI420BufferFrame {
|
|
124
|
-
constructor(width: int, height: int, pts: long, rotation: VeLiveVideoRotation);
|
|
125
|
-
getDataY(): ByteBuffer;
|
|
126
|
-
getDataU(): ByteBuffer;
|
|
127
|
-
getDataV(): ByteBuffer;
|
|
128
|
-
}
|
|
129
544
|
export declare class VeLivePusher {
|
|
130
545
|
|
|
546
|
+
/** {en}
|
|
547
|
+
* @detail api
|
|
548
|
+
* @hidden
|
|
549
|
+
* @brief Gets the version number of the current SDK.
|
|
550
|
+
* @return <br>
|
|
551
|
+
* The version number of the current SDK.
|
|
552
|
+
*
|
|
553
|
+
*/
|
|
131
554
|
static getVersion(): String;
|
|
132
555
|
|
|
556
|
+
/** {en}
|
|
557
|
+
* @detail api
|
|
558
|
+
* @brief Sets the level of the output log.
|
|
559
|
+
* @param logLevel The log level. See VeLivePusherLogLevel {@link #VeLivePusherLogLevel} for details.
|
|
560
|
+
* @order 60
|
|
561
|
+
*
|
|
562
|
+
*/
|
|
133
563
|
static setLogLevel(logLevel: VeLivePusherLogLevel): void;
|
|
134
564
|
|
|
565
|
+
/** {en}
|
|
566
|
+
* @detail api
|
|
567
|
+
* @hidden
|
|
568
|
+
* @brief Sets log configurations.
|
|
569
|
+
* @param config The log level. See VeLivePusherLogConfig {@link #VeLivePusherLogConfig} for details。
|
|
570
|
+
*
|
|
571
|
+
*/
|
|
135
572
|
static setLogConfig(config: VeLivePusherLogConfig): void;
|
|
136
573
|
|
|
137
|
-
|
|
138
|
-
|
|
574
|
+
/** {en}
|
|
575
|
+
* @detail api
|
|
576
|
+
* @brief Sets the context of OpenGL.
|
|
577
|
+
* @param context The context of OpenGL.
|
|
578
|
+
* @order 61
|
|
579
|
+
*
|
|
580
|
+
*/
|
|
139
581
|
static setEGLContext(context: EGLContext): void;
|
|
140
582
|
|
|
141
|
-
|
|
142
|
-
|
|
583
|
+
/** {en}
|
|
584
|
+
* @detail api
|
|
585
|
+
* @brief Stops capturing and pushing streams and destroys the pusher. Call this method after stopPush {@link #VeLivePusher#stopPush} is called.
|
|
586
|
+
* @order 13
|
|
587
|
+
*
|
|
588
|
+
*/
|
|
143
589
|
release(): void;
|
|
144
590
|
|
|
591
|
+
/** {en}
|
|
592
|
+
* @detail api
|
|
593
|
+
* @brief Sets an observer to listen for live pusher events, including errors, statuses, network quality, device information, and first frame rendering.
|
|
594
|
+
* @param observer The observer. Refer to VeLivePusherObserver {@link #VeLivePusherObserver} for details.
|
|
595
|
+
* @notes <br>
|
|
596
|
+
* - This method must be called after the live pusher is created;
|
|
597
|
+
* - If you make multiple calls to this method, only the last call takes effect.
|
|
598
|
+
* @order 1
|
|
599
|
+
*
|
|
600
|
+
*/
|
|
145
601
|
setObserver(observer: VeLivePusherObserver): void;
|
|
146
602
|
|
|
603
|
+
/** {en}
|
|
604
|
+
* @detail api
|
|
605
|
+
* @brief Sets an observer to periodically report push-stream statistics.
|
|
606
|
+
* @param observer The observer. Refer to VeLivePusherStatisticsObserver {@link #VeLivePusherStatisticsObserver} for details.
|
|
607
|
+
* @param interval The time interval between two callbacks, in seconds. The default value is `5`.
|
|
608
|
+
* @notes <br>
|
|
609
|
+
* - This method must be called after the live pusher is created;
|
|
610
|
+
* - If you make multiple calls to this method, only the last call takes effect.
|
|
611
|
+
* @order 15
|
|
612
|
+
*
|
|
613
|
+
*/
|
|
147
614
|
setStatisticsObserver(observer: VeLivePusherStatisticsObserver, interval: int): void;
|
|
148
615
|
|
|
616
|
+
/** {en}
|
|
617
|
+
* @detail api
|
|
618
|
+
* @brief Sets the preview for the local camera. If beauty AR is applied to the captured video or if it undergoes any other processing, the preview will display the processed video.
|
|
619
|
+
* @param view The preview view.
|
|
620
|
+
* @order 16
|
|
621
|
+
*
|
|
622
|
+
*/
|
|
149
623
|
setRenderView(view: View): Promise<void>;
|
|
150
624
|
|
|
625
|
+
/** {en}
|
|
626
|
+
* @detail api
|
|
627
|
+
* @brief Sets fill mode for the local camera preview.
|
|
628
|
+
* @param mode The fill mode.
|
|
629
|
+
*
|
|
630
|
+
*/
|
|
151
631
|
setRenderFillMode(mode: VeLivePusherRenderMode): void;
|
|
152
632
|
|
|
633
|
+
/** {en}
|
|
634
|
+
* @detail api
|
|
635
|
+
* @brief Enables or disables mirroring for the local preview and the streamed video.
|
|
636
|
+
* @param type Mirror mode. See VeLiveVideoMirrorType {@link #VeLiveVideoMirrorType} for details.
|
|
637
|
+
* @param mirror Whether to enable mirroring. <br>
|
|
638
|
+
* - true: Enable;
|
|
639
|
+
* - false: Disable.
|
|
640
|
+
* @order 17
|
|
641
|
+
*
|
|
642
|
+
*/
|
|
153
643
|
setVideoMirror(type: VeLiveVideoMirrorType, mirror: boolean): void;
|
|
154
644
|
|
|
645
|
+
/** {en}
|
|
646
|
+
* @detail api
|
|
647
|
+
* @brief Starts video capture.
|
|
648
|
+
* @notes <br>After calling this method, you can stop video capture by calling [stopVideoCapture](#VeLivePusher-stopvideocapture).
|
|
649
|
+
* @order 18
|
|
650
|
+
* @param type The video capture type. See VeLiveVideoCaptureType{@link #VeLiveVideoCaptureType} for details.
|
|
651
|
+
*
|
|
652
|
+
*
|
|
653
|
+
*/
|
|
155
654
|
startVideoCapture(type: VeLiveVideoCaptureType): void;
|
|
156
655
|
|
|
656
|
+
/** {en}
|
|
657
|
+
* @detail api
|
|
658
|
+
* @brief Stops video capture.
|
|
659
|
+
* @notes <br>After calling this method, you can start video capture by calling [startVideoCapture](#VeLivePusher-startvideocapture).
|
|
660
|
+
* @order 19
|
|
661
|
+
*
|
|
662
|
+
*/
|
|
157
663
|
stopVideoCapture(): void;
|
|
158
664
|
|
|
665
|
+
/** {en}
|
|
666
|
+
* @detail api
|
|
667
|
+
* @brief Starts audio capture.
|
|
668
|
+
* @notes <br>After calling this method, you can stop audio capture by calling [stopAudioCapture](#VeLivePusher-stopaudiocapture).
|
|
669
|
+
* @order 20
|
|
670
|
+
* @param type The audio capture type. See VeLiveAudioCaptureType {@link #VeLiveAudioCaptureType} for details.
|
|
671
|
+
*
|
|
672
|
+
*/
|
|
159
673
|
startAudioCapture(type: VeLiveAudioCaptureType): void;
|
|
160
674
|
|
|
675
|
+
/** {en}
|
|
676
|
+
* @detail api
|
|
677
|
+
* @brief Stops audio capture.
|
|
678
|
+
* @notes <br>After calling this method, you can start audio capture by calling [startAudioCapture](#VeLivePusher-startaudiocapture).
|
|
679
|
+
* @order 21
|
|
680
|
+
*
|
|
681
|
+
*/
|
|
161
682
|
stopAudioCapture(): void;
|
|
162
683
|
|
|
684
|
+
/** {en}
|
|
685
|
+
* @detail api
|
|
686
|
+
* @brief Switches the video capture type.
|
|
687
|
+
* @notes <br>This method must be called after [startVideoCapture](#VeLivePusher-startvideocapture) is called.
|
|
688
|
+
* @order 22
|
|
689
|
+
* @param type The video capture type. See VeLiveVideoCaptureType {@link #VeLiveVideoCaptureType} for details.
|
|
690
|
+
*
|
|
691
|
+
*/
|
|
163
692
|
switchVideoCapture(type: VeLiveVideoCaptureType): void;
|
|
164
693
|
|
|
694
|
+
/** {en}
|
|
695
|
+
* @detail api
|
|
696
|
+
* @brief Switches audio capture type.
|
|
697
|
+
* @notes <br>This method must be called after [startVideoCapture](#VeLivePusher-startvideocapture) is called.
|
|
698
|
+
* @order 23
|
|
699
|
+
* @param type The audio capture type. See VeLiveAudioCaptureType {@link #VeLiveAudioCaptureType} for details.
|
|
700
|
+
*
|
|
701
|
+
*/
|
|
165
702
|
switchAudioCapture(type: VeLiveAudioCaptureType): void;
|
|
166
703
|
|
|
704
|
+
/** {en}
|
|
705
|
+
* @detail api
|
|
706
|
+
* @brief Gets the current video capture type.
|
|
707
|
+
* @return <br>
|
|
708
|
+
* The video capture type. See VeLiveVideoCaptureType {@link #VeLiveVideoCaptureType} for details.
|
|
709
|
+
* @order 24
|
|
710
|
+
*
|
|
711
|
+
*/
|
|
167
712
|
getCurrentVideoCaptureType(): VeLiveVideoCaptureType;
|
|
168
713
|
|
|
714
|
+
/** {en}
|
|
715
|
+
* @detail api
|
|
716
|
+
* @brief Gets the current audio capture type.
|
|
717
|
+
* @return <br>
|
|
718
|
+
* The audio capture type. See VeLiveAudioCaptureType {@link #VeLiveAudioCaptureType} for details.
|
|
719
|
+
* @order 25
|
|
720
|
+
*
|
|
721
|
+
*/
|
|
169
722
|
getCurrentAudioCaptureType(): VeLiveAudioCaptureType;
|
|
170
723
|
|
|
724
|
+
/** {en}
|
|
725
|
+
* @detail api
|
|
726
|
+
* @brief Sets a static image to push. When using this method, you must call startVideoCapture {@link #VeLivePusher#startVideoCapture} and set VeLiveVideoCaptureType {@link #VeLiveVideoCaptureType} to `VeLiveVideoCaptureCustomImage`.
|
|
727
|
+
* @param image The static image to push.
|
|
728
|
+
* @order 26
|
|
729
|
+
*
|
|
730
|
+
*/
|
|
171
731
|
updateCustomImage(image: Bitmap): Promise<void>;
|
|
172
732
|
|
|
733
|
+
/** {en}
|
|
734
|
+
* @detail api
|
|
735
|
+
* @brief Gets the camera manager. With the camera manager, you can do the following:
|
|
736
|
+
* - Control the flashlight
|
|
737
|
+
* - Set the camera zoom
|
|
738
|
+
* - Set autofocus
|
|
739
|
+
* @return <br>
|
|
740
|
+
* The camera manager. See VeLiveCameraDevice {@link #VeLiveCameraDevice} for details.
|
|
741
|
+
* @notes <br>
|
|
742
|
+
* To use this method, you must first call startVideoCapture {@link #startVideoCapture} and set VeLiveVideoCaptureType {@link #VeLiveVideoCaptureType} to `VeLiveVideoCaptureFrontCamera` or `VeLiveVideoCaptureBackCamera`.
|
|
743
|
+
* @order 27
|
|
744
|
+
*
|
|
745
|
+
*/
|
|
173
746
|
getCameraDevice(): VeLiveCameraDevice;
|
|
174
747
|
|
|
748
|
+
/** {en}
|
|
749
|
+
* @detail api
|
|
750
|
+
* @brief Sets video encoding parameters for the pushed stream.
|
|
751
|
+
* @notes This method can be called before or after live streaming starts.
|
|
752
|
+
* @order 28
|
|
753
|
+
* @param config The video encoding parameters, including the video resolution, encoding format, target bitrate, and GOP size. For details, see VeLiveVideoEncoderConfiguration {@link #VeLiveVideoEncoderConfiguration}.
|
|
754
|
+
*
|
|
755
|
+
*/
|
|
175
756
|
setVideoEncoderConfiguration(config: VeLiveVideoEncoderConfiguration): void;
|
|
176
757
|
|
|
758
|
+
/** {en}
|
|
759
|
+
* @detail api
|
|
760
|
+
* @brief Gets video encoding parameters for the pushed stream.
|
|
761
|
+
* @return <br>
|
|
762
|
+
* The video encoding parameters, including the video resolution, encoding format, target bitrate, and GOP size. For details, see VeLiveVideoEncoderConfiguration {@link #VeLiveVideoEncoderConfiguration}.
|
|
763
|
+
* @order 29
|
|
764
|
+
*
|
|
765
|
+
*/
|
|
177
766
|
getVideoEncoderConfiguration(): VeLiveVideoEncoderConfiguration;
|
|
178
767
|
|
|
768
|
+
/** {en}
|
|
769
|
+
* @detail api
|
|
770
|
+
* @brief Sets audio encoding parameters for the pushed stream.
|
|
771
|
+
* @notes <br>This method must be called before calling [startPush](#VeLivePusher-startpush) or [startPushWithUrls](#VeLivePusher-startpushwithurls).
|
|
772
|
+
* @order 30
|
|
773
|
+
* @param config The audio encoding parameters. See [VeLiveAudioEncoderConfiguration](147521#VeLiveAudioEncoderConfiguration) for details.
|
|
774
|
+
*
|
|
775
|
+
*/
|
|
179
776
|
setAudioEncoderConfiguration(config: VeLiveAudioEncoderConfiguration): void;
|
|
180
777
|
|
|
778
|
+
/** {en}
|
|
779
|
+
* @detail api
|
|
780
|
+
* @brief Gets audio encoding parameters for the pushed stream.
|
|
781
|
+
* @return <br>The audio encoding parameters. See VeLiveAudioEncoderConfiguration for details.
|
|
782
|
+
* @order 31
|
|
783
|
+
*
|
|
784
|
+
*/
|
|
181
785
|
getAudioEncoderConfiguration(): VeLiveAudioEncoderConfiguration;
|
|
182
786
|
|
|
787
|
+
/** {en}
|
|
788
|
+
* @detail api
|
|
789
|
+
* @brief Starts streaming.
|
|
790
|
+
* @param url The push stream address.
|
|
791
|
+
* @order 32
|
|
792
|
+
*
|
|
793
|
+
*/
|
|
183
794
|
startPush(url: String): void;
|
|
184
795
|
|
|
185
|
-
|
|
186
|
-
|
|
796
|
+
/** {en}
|
|
797
|
+
* @detail api
|
|
798
|
+
* @brief Starts streaming with one or more push stream addresses.
|
|
799
|
+
* @param urls A list of push stream addresses.
|
|
800
|
+
* @notes <br>
|
|
801
|
+
* When the first push stream address in the array is unavailable, the SDK will automatically switch to the subsequent addresses.
|
|
802
|
+
* @order 33
|
|
803
|
+
*
|
|
804
|
+
*/
|
|
805
|
+
startPushWithUrls(urls: Array<String>): void;
|
|
806
|
+
|
|
807
|
+
/** {en}
|
|
808
|
+
* @detail api
|
|
809
|
+
* @brief Stops streaming.
|
|
810
|
+
* @notes <br>
|
|
811
|
+
* After you have stopped streaming, you can restart streaming by calling startPush {@link #startPush} or startPushWithUrls {@link #startPushWithUrls}.
|
|
812
|
+
* @order 34
|
|
813
|
+
*
|
|
814
|
+
*/
|
|
187
815
|
stopPush(): void;
|
|
188
816
|
|
|
817
|
+
/** {en}
|
|
818
|
+
* @detail api
|
|
819
|
+
* @brief Checks whether the streaming is currently ongoing. You can use this method to query the status of the live pusher.
|
|
820
|
+
* @return <br>
|
|
821
|
+
* Whether the streaming is currently ongoing. <br>
|
|
822
|
+
* - true: The streaming is currently ongoing;
|
|
823
|
+
* - false: The streaming has stopped.
|
|
824
|
+
* @order 35
|
|
825
|
+
*
|
|
826
|
+
*/
|
|
189
827
|
isPushing(): boolean;
|
|
190
828
|
|
|
829
|
+
/** {en}
|
|
830
|
+
* @detail api
|
|
831
|
+
* @brief Sets a watermark for the pushed stream.
|
|
832
|
+
* @param image The watermark image. Setting it to null means disabling watermarking.
|
|
833
|
+
* @param x The horizontal offset of the watermark, which represents the ratio of the distance between the left edge of the watermark and the left edge of the video to the width of the video. The value range is [0.0,1.0].
|
|
834
|
+
* @param y The vertical offset of the watermark, which represents the ratio of the distance between the top edge of the watermark and the top edge of the video to the height of the video. The value range is [0.0,1.0].
|
|
835
|
+
* @param scale The uniform scaling of the watermark. The value range is [0.0, 1.0].
|
|
836
|
+
* @return <br>
|
|
837
|
+
* - 0: Success;
|
|
838
|
+
* - < 0: Failure.
|
|
839
|
+
* @order 36
|
|
840
|
+
*
|
|
841
|
+
*/
|
|
191
842
|
setWatermark(image: Bitmap, x: float, y: float, scale: float): Promise<int>;
|
|
192
843
|
|
|
844
|
+
/** {en}
|
|
845
|
+
* @detail api
|
|
846
|
+
* @brief Starts local recording.
|
|
847
|
+
* @order 37
|
|
848
|
+
* @param path The directory for saving the recording file. You cannot leave this parameter empty.
|
|
849
|
+
* @param config The recording configurations. See VeLiveFileRecorderConfiguration for details.
|
|
850
|
+
* @param listener The listener for recording events. See VeLiveFileRecordingListener for details.
|
|
851
|
+
*
|
|
852
|
+
*/
|
|
193
853
|
startFileRecording(path: String, config: VeLiveFileRecorderConfiguration, listener: VeLiveFileRecordingListener): void;
|
|
194
854
|
|
|
855
|
+
/** {en}
|
|
856
|
+
* @detail api
|
|
857
|
+
* @brief Stops local recording.
|
|
858
|
+
* @notes <br>This method must be called after calling [startFileRecording](#VeLivePusher-startfilerecording).
|
|
859
|
+
* @order 38
|
|
860
|
+
*
|
|
861
|
+
*/
|
|
195
862
|
stopFileRecording(): void;
|
|
196
863
|
|
|
864
|
+
/** {en}
|
|
865
|
+
* @detail api
|
|
866
|
+
* @brief Set advanced configurations. You can contact BytePlus technical support for more information about how to use this method.
|
|
867
|
+
* @param key The JSON key.
|
|
868
|
+
* @param value The JSON value.
|
|
869
|
+
* @return <br>
|
|
870
|
+
* - 0: Success;
|
|
871
|
+
* - -1: Failure.
|
|
872
|
+
* @order 39
|
|
873
|
+
*
|
|
874
|
+
*/
|
|
197
875
|
setProperty(key: String, value: Object): int;
|
|
198
876
|
|
|
877
|
+
/** {en}
|
|
878
|
+
* @detail api
|
|
879
|
+
* @brief Pushes an external video frame.
|
|
880
|
+
* @param frame The external video frame. See VeLiveVideoFrame {@link #VeLiveVideoFrame} for details.
|
|
881
|
+
* @return <br>
|
|
882
|
+
* - 0: Success;
|
|
883
|
+
* - < 0: Failure.
|
|
884
|
+
* @notes <br>
|
|
885
|
+
* To use this method, you must first call startVideoCapture {@link #startVideoCapture} and set VeLiveVideoCaptureType {@link #VeLiveVideoCaptureType} to `VeLiveVideoCaptureExternal`.
|
|
886
|
+
* @order 40
|
|
887
|
+
*
|
|
888
|
+
*/
|
|
199
889
|
pushExternalVideoFrame(frame: VeLiveVideoFrame): int;
|
|
200
890
|
|
|
891
|
+
/** {en}
|
|
892
|
+
* @detail api
|
|
893
|
+
* @brief Pushes an external audio frame.
|
|
894
|
+
* @param frame The external audio frame. See VeLiveAudioFrame {@link #VeLiveAudioFrame} for details.
|
|
895
|
+
* @return <br>
|
|
896
|
+
* - 0: Success;
|
|
897
|
+
* - < 0: Failure.
|
|
898
|
+
* @notes <br>
|
|
899
|
+
* To use this method, you must first call startAudioCapture {@link #AustartdioCapture} and set VeLiveAudioCaptureType {@link #VeLiveAudioCaptureType} to `VeLiveAudioCaptureExternal`.
|
|
900
|
+
* @order 41
|
|
901
|
+
*
|
|
902
|
+
*/
|
|
201
903
|
pushExternalAudioFrame(frame: VeLiveAudioFrame): int;
|
|
202
904
|
|
|
905
|
+
/** {en}
|
|
906
|
+
* @detail api
|
|
907
|
+
* @brief Sets the orientation of the pushed video frame. The default orientation is portrait.
|
|
908
|
+
* @param orientation The orientation of the pushed video frame. See VeLiveOrientation {@link #VeLiveOrientation} for details.
|
|
909
|
+
* @order 42
|
|
910
|
+
*
|
|
911
|
+
*/
|
|
203
912
|
setOrientation(orientation: VeLiveOrientation): void;
|
|
204
913
|
|
|
914
|
+
/** {en}
|
|
915
|
+
* @detail api
|
|
916
|
+
* @brief Sends an SEI message through the video frame. The SEI messages are strings in JSON format.
|
|
917
|
+
* @return <br>
|
|
918
|
+
* - 0: Success;
|
|
919
|
+
* - < 0: Failure.
|
|
920
|
+
* @notes <br>This method must be called after calling [startPush](#VeLivePusher-startpush) or [startPushWithUrls](#VeLivePusher-startpushwithurls).
|
|
921
|
+
* @order 43
|
|
922
|
+
* @param key The JSON key.
|
|
923
|
+
* @param value The JSON value.
|
|
924
|
+
* @param repeat The number of times the message is sent. For example, if you set `repeat` to `20` and set `isKeyFrame` to `true`, the SDK will add the SEI message to 20 consecutive key frames starting from the time the method is called.
|
|
925
|
+
* @param isKeyFrame Whether SEI messages are only included in key frames. <br>
|
|
926
|
+
* - true: Add the SEI message to key frames only;
|
|
927
|
+
* - false: Add the SEI message to all types of frames.
|
|
928
|
+
* @param allowsCovered Whether to allow overwriting. <br>
|
|
929
|
+
* - true: Allow overwriting;
|
|
930
|
+
* - false: Do not allow overwriting.
|
|
931
|
+
*
|
|
932
|
+
*/
|
|
205
933
|
sendSeiMessage(key: String, value: Object, repeat: int, isKeyFrame: boolean, allowsCovered: boolean): int;
|
|
206
934
|
|
|
935
|
+
/** {en}
|
|
936
|
+
* @detail api
|
|
937
|
+
* @brief Sets whether to mute the stream.
|
|
938
|
+
* @param mute Whether to mute the stream. <br>
|
|
939
|
+
* - true: Mute;
|
|
940
|
+
* - false: (Default) Do not mute.
|
|
941
|
+
* @order 44
|
|
942
|
+
*
|
|
943
|
+
*/
|
|
207
944
|
setMute(mute: boolean): void;
|
|
208
945
|
|
|
946
|
+
/** {en}
|
|
947
|
+
* @detail api
|
|
948
|
+
* @brief Checks whether the stream is muted.
|
|
949
|
+
* @return <br>
|
|
950
|
+
* - true: The stream is muted;
|
|
951
|
+
* - false: The stream is not muted.
|
|
952
|
+
* @order 45
|
|
953
|
+
*
|
|
954
|
+
*/
|
|
209
955
|
isMute(): boolean;
|
|
210
956
|
|
|
957
|
+
/** {en}
|
|
958
|
+
* @detail api
|
|
959
|
+
* @brief Gets the special effects manager. With the special effects manager, you can do the following:
|
|
960
|
+
* - Set beauty AR
|
|
961
|
+
* - Set special effects
|
|
962
|
+
* - Set materials
|
|
963
|
+
* - Set stickers
|
|
964
|
+
* - Set filters
|
|
965
|
+
* @return <br>
|
|
966
|
+
* The special effects manager. See VeLiveVideoEffectManager {@link #VeLiveVideoEffectManager} for details.
|
|
967
|
+
* @notes <br>
|
|
968
|
+
* You must first integrate the BytePlus Effects SDK before calling this method.
|
|
969
|
+
* @order 46
|
|
970
|
+
*
|
|
971
|
+
*/
|
|
211
972
|
getVideoEffectManager(): VeLiveVideoEffectManager;
|
|
212
973
|
|
|
974
|
+
/** {en}
|
|
975
|
+
* @detail api
|
|
976
|
+
* @brief Sets custom video processing.
|
|
977
|
+
* @order 47
|
|
978
|
+
* @param filter The video filter. See VeLiveVideoFrameFilter for details.
|
|
979
|
+
*
|
|
980
|
+
*/
|
|
213
981
|
setVideoFrameFilter(filter: VeLiveVideoFrameFilter): void;
|
|
214
982
|
|
|
983
|
+
/** {en}
|
|
984
|
+
* @detail api
|
|
985
|
+
* @brief Gets the audio device manager.
|
|
986
|
+
* @return <br>
|
|
987
|
+
* The audio device manager. See VeLiveAudioDevice {@link #VeLiveAudioDevice} for details.
|
|
988
|
+
* @notes <br>
|
|
989
|
+
* To use this method, you must first call startAudioCapture {@link #startAudioCapture} and set VeLiveAudioCaptureType {@link #VeLiveAudioCaptureType} to `VeLiveAudioCaptureMicrophone`.
|
|
990
|
+
* @order 48
|
|
991
|
+
*
|
|
992
|
+
*/
|
|
215
993
|
getAudioDevice(): VeLiveAudioDevice;
|
|
216
994
|
|
|
995
|
+
/** {en}
|
|
996
|
+
* @detail api
|
|
997
|
+
* @brief Sets custom audio processing.
|
|
998
|
+
* @order 49
|
|
999
|
+
* @param filter The audio filter. See VeLiveAudioFrameFilter for details.
|
|
1000
|
+
*
|
|
1001
|
+
*/
|
|
217
1002
|
setAudioFrameFilter(filter: VeLiveAudioFrameFilter): void;
|
|
218
1003
|
|
|
1004
|
+
/** {en}
|
|
1005
|
+
* @detail api
|
|
1006
|
+
* @brief Creates the media player.
|
|
1007
|
+
* @return <br>
|
|
1008
|
+
* The media player. See VeLiveMediaPlayer {@link #VeLiveMediaPlayer} for details.
|
|
1009
|
+
* @order 50
|
|
1010
|
+
*
|
|
1011
|
+
*/
|
|
219
1012
|
createPlayer(): VeLiveMediaPlayer;
|
|
220
1013
|
|
|
1014
|
+
/** {en}
|
|
1015
|
+
* @detail api
|
|
1016
|
+
* @brief Gets the audio and video mixer.
|
|
1017
|
+
* @return <br>
|
|
1018
|
+
* The audio and video mixer. See VeLiveMixerManager {@link #VeLiveMixerManager} for details.
|
|
1019
|
+
* @order 51
|
|
1020
|
+
*
|
|
1021
|
+
*/
|
|
221
1022
|
getMixerManager(): VeLiveMixerManager;
|
|
222
1023
|
|
|
1024
|
+
/** {en}
|
|
1025
|
+
* @detail api
|
|
1026
|
+
* @brief Starts screen capture.
|
|
1027
|
+
* @param enableAppAudio Whether to record in-app audio data. Currently, you can only set it to `true`, which is the default value.
|
|
1028
|
+
* @param screenIntent The system screen recording permission.
|
|
1029
|
+
* @order 52
|
|
1030
|
+
*
|
|
1031
|
+
*
|
|
1032
|
+
*/
|
|
223
1033
|
startScreenRecording(enableAppAudio: boolean, screenIntent: Intent): void;
|
|
224
1034
|
|
|
1035
|
+
/** {en}
|
|
1036
|
+
* @detail api
|
|
1037
|
+
* @brief Stops screen capture.
|
|
1038
|
+
* @order 53
|
|
1039
|
+
*
|
|
1040
|
+
*/
|
|
225
1041
|
stopScreenRecording(): void;
|
|
226
1042
|
|
|
1043
|
+
/** {en}
|
|
1044
|
+
* @detail api
|
|
1045
|
+
* @brief Gets whether the SDK is capturing the screen at this moment.
|
|
1046
|
+
* @order 54
|
|
1047
|
+
*
|
|
1048
|
+
*/
|
|
227
1049
|
isScreenRecording(): boolean;
|
|
228
1050
|
|
|
1051
|
+
/** {en}
|
|
1052
|
+
* @detail api
|
|
1053
|
+
* @brief Adds a video frame listener.
|
|
1054
|
+
* @return <br>
|
|
1055
|
+
* - 0: Success;
|
|
1056
|
+
* - < 0: Failure.
|
|
1057
|
+
* @order 55
|
|
1058
|
+
* @param listener The listener. See VeLiveVideoFrameListener for details.
|
|
1059
|
+
*
|
|
1060
|
+
*/
|
|
229
1061
|
addVideoFrameListener(listener: VeLiveVideoFrameListener): int;
|
|
230
1062
|
|
|
1063
|
+
/** {en}
|
|
1064
|
+
* @detail api
|
|
1065
|
+
* @brief Removes the video frame listener.
|
|
1066
|
+
* @return <br>
|
|
1067
|
+
* - 0: Success;
|
|
1068
|
+
* - < 0: Failure.
|
|
1069
|
+
* @notes <br>
|
|
1070
|
+
* Calling this method will return a failure if the listener has not been added or has been removed.
|
|
1071
|
+
* @order 56
|
|
1072
|
+
* @param listener The listener. See VeLiveVideoFrameListener for details.
|
|
1073
|
+
*
|
|
1074
|
+
*/
|
|
231
1075
|
removeVideoFrameListener(listener: VeLiveVideoFrameListener): int;
|
|
232
1076
|
|
|
1077
|
+
/** {en}
|
|
1078
|
+
* @detail api
|
|
1079
|
+
* @brief Adds an audio frame listener.
|
|
1080
|
+
* @return <br>
|
|
1081
|
+
* - 0: Success;
|
|
1082
|
+
* - < 0: Failure.
|
|
1083
|
+
* @order 57
|
|
1084
|
+
* @param listener The listener. See VeLiveAudioFrameListener for details.
|
|
1085
|
+
*
|
|
1086
|
+
*/
|
|
233
1087
|
addAudioFrameListener(listener: VeLiveAudioFrameListener): int;
|
|
234
1088
|
|
|
1089
|
+
/** {en}
|
|
1090
|
+
* @detail api
|
|
1091
|
+
* @brief Removes the audio frame listener.
|
|
1092
|
+
* @return <br>
|
|
1093
|
+
* - 0: Success;
|
|
1094
|
+
* - < 0: Failure.
|
|
1095
|
+
* @notes <br>
|
|
1096
|
+
* Calling this method will return a failure if the listener has not been added or has been removed.
|
|
1097
|
+
* @order 58
|
|
1098
|
+
* @param listener The listener. See VeLiveAudioFrameListener for details.
|
|
1099
|
+
*
|
|
1100
|
+
*/
|
|
235
1101
|
removeAudioFrameListener(listener: VeLiveAudioFrameListener): int;
|
|
236
1102
|
|
|
1103
|
+
/** {en}
|
|
1104
|
+
* @detail api
|
|
1105
|
+
* @brief Takes a screenshot.
|
|
1106
|
+
* @order 59
|
|
1107
|
+
* @param listener The listener for the screenshot. See VeLiveSnapshotListener for details.
|
|
1108
|
+
*
|
|
1109
|
+
*/
|
|
237
1110
|
snapshot(listener: VeLiveSnapshotListener): void;
|
|
238
1111
|
}
|
|
239
|
-
export declare class Parameter {
|
|
240
|
-
static readonly WIDTH: String;
|
|
241
|
-
static readonly HEIGHT: String;
|
|
242
|
-
static readonly FPS: String;
|
|
243
|
-
static readonly ZOOM: String;
|
|
244
|
-
static readonly FOCUS_MODE: String;
|
|
245
|
-
static readonly FOCUS_MODE_AUTO: String;
|
|
246
|
-
static readonly CURRENT_ISO: String;
|
|
247
|
-
setInt(key: String, value: int): int;
|
|
248
|
-
getInt(key: String): int;
|
|
249
|
-
setFloat(key: String, value: float): int;
|
|
250
|
-
getFloat(key: String): float;
|
|
251
|
-
}
|
|
252
1112
|
export declare class VeLiveMixerManager {
|
|
253
1113
|
|
|
1114
|
+
/** {en}
|
|
1115
|
+
* @detail api
|
|
1116
|
+
* @brief Adds a video stream to the mixer.
|
|
1117
|
+
* @return <br>
|
|
1118
|
+
* The video stream ID.
|
|
1119
|
+
* @order 79
|
|
1120
|
+
*
|
|
1121
|
+
*/
|
|
254
1122
|
addVideoStream(): int;
|
|
255
1123
|
|
|
1124
|
+
/** {en}
|
|
1125
|
+
* @detail api
|
|
1126
|
+
* @brief Adds an audio stream to the mixer.
|
|
1127
|
+
* @return <br>
|
|
1128
|
+
* The audio stream ID.
|
|
1129
|
+
* @order 80
|
|
1130
|
+
*
|
|
1131
|
+
*/
|
|
256
1132
|
addAudioStream(): int;
|
|
257
1133
|
|
|
258
|
-
|
|
259
|
-
|
|
1134
|
+
/** {en}
|
|
1135
|
+
* @detail api
|
|
1136
|
+
* @brief Adds an audio stream to the mixer.
|
|
1137
|
+
* @return <br>
|
|
1138
|
+
* The audio stream ID.
|
|
1139
|
+
* @order 80
|
|
1140
|
+
*
|
|
1141
|
+
*/
|
|
1142
|
+
addAudioStream_type(type: VeLiveAudioMixType): int;
|
|
1143
|
+
|
|
1144
|
+
/** {en}
|
|
1145
|
+
* @detail api
|
|
1146
|
+
* @brief Gets the ID of the primary video stream.
|
|
1147
|
+
* @order 83
|
|
1148
|
+
*
|
|
1149
|
+
*/
|
|
260
1150
|
getOriginVideoStream(): int;
|
|
261
1151
|
|
|
1152
|
+
/** {en}
|
|
1153
|
+
* @detail api
|
|
1154
|
+
* @brief Gets the ID of the primary audio stream.
|
|
1155
|
+
* @order 84
|
|
1156
|
+
*
|
|
1157
|
+
*/
|
|
262
1158
|
getOriginAudioStream(): int;
|
|
263
1159
|
|
|
1160
|
+
/** {en}
|
|
1161
|
+
* @detail api
|
|
1162
|
+
* @brief Gets the ID of the primary screen stream.
|
|
1163
|
+
* @order 85
|
|
1164
|
+
*
|
|
1165
|
+
*/
|
|
264
1166
|
getOriginScreenStream(): int;
|
|
265
1167
|
|
|
1168
|
+
/** {en}
|
|
1169
|
+
* @detail api
|
|
1170
|
+
* @brief Gets the ID of the primary system audio stream.
|
|
1171
|
+
* @order 86
|
|
1172
|
+
*
|
|
1173
|
+
*/
|
|
266
1174
|
getOriginSystemAudioStream(): int;
|
|
267
1175
|
|
|
1176
|
+
/** {en}
|
|
1177
|
+
* @detail api
|
|
1178
|
+
* @brief Sends a custom video frame with a specified stream ID.
|
|
1179
|
+
* @param frame The custom video frame. See VeLiveVideoFrame {@link #VeLiveVideoFrame} for details.
|
|
1180
|
+
* @param streamId The ID of the video stream to mix.
|
|
1181
|
+
* @order 87
|
|
1182
|
+
*
|
|
1183
|
+
*/
|
|
268
1184
|
sendCustomVideoFrame(frame: VeLiveVideoFrame, streamId: int): void;
|
|
269
1185
|
|
|
1186
|
+
/** {en}
|
|
1187
|
+
* @detail api
|
|
1188
|
+
* @brief Sends a custom audio frame with a specified stream ID.
|
|
1189
|
+
* @param frame The custom audio frame. See VeLiveAudioFrame {@link #VeLiveAudioFrame} for details.
|
|
1190
|
+
* @param streamId The ID of the audio stream to mix.
|
|
1191
|
+
* @order 88
|
|
1192
|
+
*
|
|
1193
|
+
*/
|
|
270
1194
|
sendCustomAudioFrame(frame: VeLiveAudioFrame, streamId: int): void;
|
|
271
1195
|
|
|
1196
|
+
/** {en}
|
|
1197
|
+
* @detail api
|
|
1198
|
+
* @brief Updates the configurations for audio and video mixing.
|
|
1199
|
+
* @param mixDescription The updated configurations for audio and video mixing. See VeLiveStreamMixDescription {@link #VeLiveStreamMixDescription} for details.
|
|
1200
|
+
*
|
|
1201
|
+
*/
|
|
272
1202
|
updateStreamMixDescription(mixDescription: VeLiveStreamMixDescription): void;
|
|
273
1203
|
|
|
1204
|
+
/** {en}
|
|
1205
|
+
* @detail api
|
|
1206
|
+
* @brief Removes a non-primary video stream from the mixer.
|
|
1207
|
+
* @param streamId The ID of the video stream to remove.
|
|
1208
|
+
* @order 80
|
|
1209
|
+
*
|
|
1210
|
+
*/
|
|
274
1211
|
removeVideoStream(streamId: int): void;
|
|
275
1212
|
|
|
1213
|
+
/** {en}
|
|
1214
|
+
* @detail api
|
|
1215
|
+
* @brief Removes a non-primary audio stream from the mixer.
|
|
1216
|
+
* @param streamId The ID of the audio stream to remove.
|
|
1217
|
+
* @order 82
|
|
1218
|
+
*
|
|
1219
|
+
*/
|
|
276
1220
|
removeAudioStream(streamId: int): void;
|
|
277
1221
|
}
|
|
278
1222
|
export declare class VeLiveMediaPlayer {
|
|
279
1223
|
|
|
1224
|
+
/** {en}
|
|
1225
|
+
* @detail api
|
|
1226
|
+
* @brief Destroys the media player instance.
|
|
1227
|
+
* @order 100
|
|
1228
|
+
*
|
|
1229
|
+
*/
|
|
280
1230
|
release(): void;
|
|
281
1231
|
|
|
1232
|
+
/** {en}
|
|
1233
|
+
* @detail api
|
|
1234
|
+
* @brief Sets the observer for playback statuses.
|
|
1235
|
+
* @notes <br>
|
|
1236
|
+
* If you make multiple calls to this method, only the last call takes effect.
|
|
1237
|
+
* @order 101
|
|
1238
|
+
* @param listener The observer that listens for playback statuses. For details, see VeLiveMediaPlayerListener.
|
|
1239
|
+
*
|
|
1240
|
+
*/
|
|
282
1241
|
setListener(listener: VeLiveMediaPlayerListener): void;
|
|
283
1242
|
|
|
1243
|
+
/** {en}
|
|
1244
|
+
* @detail api
|
|
1245
|
+
* @brief Sets the file path. Supported file formats include MP3, AAC, M4A, WAV.
|
|
1246
|
+
* @param url The file path.
|
|
1247
|
+
* @return <br>
|
|
1248
|
+
* - 0: Success;
|
|
1249
|
+
* - ≠ 0: Failure.
|
|
1250
|
+
* @order 102
|
|
1251
|
+
*
|
|
1252
|
+
*/
|
|
284
1253
|
prepare(url: String): int;
|
|
285
1254
|
|
|
1255
|
+
/** {en}
|
|
1256
|
+
* @detail api
|
|
1257
|
+
* @brief Pauses playback.
|
|
1258
|
+
* @notes <br>
|
|
1259
|
+
* This method must be called after you call start {@link #start} to start playback.
|
|
1260
|
+
* @order 103
|
|
1261
|
+
*
|
|
1262
|
+
*/
|
|
286
1263
|
start(): int;
|
|
287
1264
|
|
|
1265
|
+
/** {en}
|
|
1266
|
+
* @detail api
|
|
1267
|
+
* @brief Stops playback.
|
|
1268
|
+
* @return <br>
|
|
1269
|
+
* - 0: Success;
|
|
1270
|
+
* - ≠ 0: Failure.
|
|
1271
|
+
* @notes <br>
|
|
1272
|
+
* This method must be called after you call start {@link #start} to start playback.
|
|
1273
|
+
* @order 104
|
|
1274
|
+
*
|
|
1275
|
+
*/
|
|
288
1276
|
stop(): int;
|
|
289
1277
|
|
|
1278
|
+
/** {en}
|
|
1279
|
+
* @detail api
|
|
1280
|
+
* @brief Pauses playback.
|
|
1281
|
+
* @notes <br>
|
|
1282
|
+
* This method must be called after you call start {@link #start} to start playback.
|
|
1283
|
+
* @order 105
|
|
1284
|
+
*
|
|
1285
|
+
*/
|
|
290
1286
|
pause(): void;
|
|
291
1287
|
|
|
1288
|
+
/** {en}
|
|
1289
|
+
* @detail api
|
|
1290
|
+
* @brief Resumes playback.
|
|
1291
|
+
* @notes <br>This method must be called after you call [pause](#VeLiveMediaPlayer-pause) to pause playback.
|
|
1292
|
+
* @order 106
|
|
1293
|
+
*
|
|
1294
|
+
*/
|
|
292
1295
|
resume(): void;
|
|
293
1296
|
|
|
1297
|
+
/** {en}
|
|
1298
|
+
* @detail api
|
|
1299
|
+
* @brief Gets the duration of the media file.
|
|
1300
|
+
* @return <br>
|
|
1301
|
+
* - \\\\> 0: The duration of the media file, in milliseconds;
|
|
1302
|
+
* - ≤ 0: Failure.
|
|
1303
|
+
* @notes <br>This method must be called after you call [start](#VeLiveMediaPlayer-start) to start playback.
|
|
1304
|
+
* @order 107
|
|
1305
|
+
*
|
|
1306
|
+
*/
|
|
294
1307
|
getDuration(): long;
|
|
295
1308
|
|
|
1309
|
+
/** {en}
|
|
1310
|
+
* @detail api
|
|
1311
|
+
* @brief Sets the playback progress.
|
|
1312
|
+
* @param posMs The playback progress, in milliseconds.
|
|
1313
|
+
* @return <br>
|
|
1314
|
+
* - 0: Success;
|
|
1315
|
+
* - ≠ 0: Failure.
|
|
1316
|
+
* @order 108
|
|
1317
|
+
*
|
|
1318
|
+
*/
|
|
296
1319
|
seek(posMs: long): int;
|
|
297
1320
|
|
|
1321
|
+
/** {en}
|
|
1322
|
+
* @detail api
|
|
1323
|
+
* @brief Enables or disables mixing the audio to the live stream.
|
|
1324
|
+
* @param enable Whether to enable or disable mixing the audio to the live stream. <br>
|
|
1325
|
+
* - ture: Enable;
|
|
1326
|
+
* - false: (Default) Disable.
|
|
1327
|
+
* @order 109
|
|
1328
|
+
*
|
|
1329
|
+
*/
|
|
298
1330
|
enableMixer(enable: boolean): void;
|
|
299
1331
|
|
|
1332
|
+
/** {en}
|
|
1333
|
+
* @detail api
|
|
1334
|
+
* @brief Enables or disables automatic volume equalization.
|
|
1335
|
+
* @param sourceLufs The source volume.
|
|
1336
|
+
* @param targetLufs The target volume.
|
|
1337
|
+
* @order 110
|
|
1338
|
+
*
|
|
1339
|
+
*/
|
|
300
1340
|
enableAutoEq(sourceLufs: float, targetLufs: float): void;
|
|
301
1341
|
|
|
1342
|
+
/** {en}
|
|
1343
|
+
* @detail api
|
|
1344
|
+
* @brief Sets the view for rendering the video. Supports MP4 format.
|
|
1345
|
+
* @param view The view used by the media player to render video.
|
|
1346
|
+
* @order 111
|
|
1347
|
+
*
|
|
1348
|
+
*/
|
|
302
1349
|
setRenderView(view: View): void;
|
|
303
1350
|
|
|
1351
|
+
/** {en}
|
|
1352
|
+
* @detail api
|
|
1353
|
+
* @brief Sets the observer for audio and video frames.
|
|
1354
|
+
* @notes <br>
|
|
1355
|
+
* If you make multiple calls to this method, only the last call takes effect.
|
|
1356
|
+
* @order 112
|
|
1357
|
+
* @param listener The observer that listens for audio and video frames. For details, see VeLiveMediaPlayerFrameListener
|
|
1358
|
+
*
|
|
1359
|
+
*/
|
|
304
1360
|
setFrameListener(listener: VeLiveMediaPlayerFrameListener): void;
|
|
305
1361
|
|
|
1362
|
+
/** {en}
|
|
1363
|
+
* @detail api
|
|
1364
|
+
* @brief Sets the playback volume.
|
|
1365
|
+
* @param volume The playback volume. The value range is [0.0, 4.0].
|
|
1366
|
+
* @order 113
|
|
1367
|
+
*
|
|
1368
|
+
*/
|
|
306
1369
|
setBGMVolume(volume: float): void;
|
|
307
1370
|
|
|
1371
|
+
/** {en}
|
|
1372
|
+
* @detail api
|
|
1373
|
+
* @brief Sets the audio capture volume.
|
|
1374
|
+
* @notes <br>This method must be called after you call [start](#VeLiveMediaPlayer-start) to start playing background music.
|
|
1375
|
+
* @order 114
|
|
1376
|
+
* @param volume The audio capture volume. The value range is [0.0, 4.0].
|
|
1377
|
+
*
|
|
1378
|
+
*/
|
|
308
1379
|
setVoiceVolume(volume: float): void;
|
|
309
1380
|
|
|
1381
|
+
/** {en}
|
|
1382
|
+
* @detail api
|
|
1383
|
+
* @brief Sets whether to loop the video.
|
|
1384
|
+
* @param loop Whether to loop the video. <br>
|
|
1385
|
+
* - true: Loop;
|
|
1386
|
+
* - false: (Default) Do not loop.
|
|
1387
|
+
* @order 115
|
|
1388
|
+
*
|
|
1389
|
+
*/
|
|
310
1390
|
enableBGMLoop(loop: boolean): void;
|
|
311
1391
|
}
|
|
312
1392
|
export declare class VeLiveAudioFrame {
|
|
1393
|
+
constructor();
|
|
1394
|
+
constructor(sampleRate: VeLiveAudioSampleRate, channel: VeLiveAudioChannel, pts: long, buffer: ByteBuffer);
|
|
313
1395
|
bufferType: any;
|
|
314
1396
|
sampleRate: any;
|
|
315
1397
|
channels: any;
|
|
316
1398
|
ptsUs: any;
|
|
317
1399
|
buffer: any;
|
|
318
1400
|
samplesPerChannel: any;
|
|
319
|
-
static new_VeLiveAudioFrame_VeLiveAudioSampleRate$VeLiveAudioChannel$long$ByteBuffer(sampleRate: VeLiveAudioSampleRate, channel: VeLiveAudioChannel, pts: long, buffer: ByteBuffer): VeLiveAudioFrame;
|
|
320
1401
|
|
|
1402
|
+
/** {en}
|
|
1403
|
+
* @detail api
|
|
1404
|
+
* @brief Gets the audio data type.
|
|
1405
|
+
* @return <br>
|
|
1406
|
+
* The audio data type. See VeLiveAudioBufferType {@link #VeLiveAudioBufferType} for details.
|
|
1407
|
+
*
|
|
1408
|
+
*/
|
|
321
1409
|
getBufferType(): VeLiveAudioBufferType;
|
|
322
1410
|
|
|
1411
|
+
/** {en}
|
|
1412
|
+
* @detail api
|
|
1413
|
+
* @brief Gets the audio sample rate.
|
|
1414
|
+
* @return <br>
|
|
1415
|
+
* The audio sample rate. See VeLiveAudioSampleRate {@link #VeLiveAudioSampleRate} for details.
|
|
1416
|
+
*
|
|
1417
|
+
*/
|
|
323
1418
|
getSampleRate(): VeLiveAudioSampleRate;
|
|
324
1419
|
|
|
1420
|
+
/** {en}
|
|
1421
|
+
* @detail api
|
|
1422
|
+
* @brief Gets the number of audio channels.
|
|
1423
|
+
* @return <br>
|
|
1424
|
+
* The number of audio channels. See VeLiveAudioChannel {@link #VeLiveAudioChannel} for details.
|
|
1425
|
+
*
|
|
1426
|
+
*/
|
|
325
1427
|
getChannels(): VeLiveAudioChannel;
|
|
326
1428
|
|
|
1429
|
+
/** {en}
|
|
1430
|
+
* @detail api
|
|
1431
|
+
* @brief Gets the audio bit depth.
|
|
1432
|
+
* @return <br>
|
|
1433
|
+
* The audio bit depth.
|
|
1434
|
+
*
|
|
1435
|
+
*/
|
|
327
1436
|
getSamplesPerChannel(): int;
|
|
328
1437
|
|
|
1438
|
+
/** {en}
|
|
1439
|
+
* @detail api
|
|
1440
|
+
* @brief Gets the audio timestamp, in μs.
|
|
1441
|
+
* @return <br>
|
|
1442
|
+
* The timestamp of the audio frame, in μs.
|
|
1443
|
+
*
|
|
1444
|
+
*/
|
|
329
1445
|
getPts(): long;
|
|
330
1446
|
|
|
1447
|
+
/** {en}
|
|
1448
|
+
* @detail api
|
|
1449
|
+
* @brief Gets the audio data. The audio data is of type float32 and is stored in little-endian byte order.
|
|
1450
|
+
* @return <br>
|
|
1451
|
+
* The audio data in the format of ByteBuffer.
|
|
1452
|
+
*
|
|
1453
|
+
*/
|
|
331
1454
|
getBuffer(): ByteBuffer;
|
|
332
1455
|
}
|
|
333
1456
|
export declare class VeLiveAudioDevice {
|
|
334
1457
|
|
|
1458
|
+
/** {en}
|
|
1459
|
+
* @detail api
|
|
1460
|
+
* @brief Sets the volume.
|
|
1461
|
+
* @param level The volume. The value range is [0.0, 4.0].
|
|
1462
|
+
* @order 74
|
|
1463
|
+
*
|
|
1464
|
+
*/
|
|
335
1465
|
setVoiceLoudness(level: float): void;
|
|
336
1466
|
|
|
1467
|
+
/** {en}
|
|
1468
|
+
* @detail api
|
|
1469
|
+
* @brief Gets the current volume.
|
|
1470
|
+
* @return <br>
|
|
1471
|
+
* The current volume.
|
|
1472
|
+
* @order 75
|
|
1473
|
+
*
|
|
1474
|
+
*/
|
|
337
1475
|
getVoiceLoudness(): float;
|
|
338
1476
|
|
|
1477
|
+
/** {en}
|
|
1478
|
+
* @detail api
|
|
1479
|
+
* @brief Checks whether in-ear monitoring is supported.
|
|
1480
|
+
* @return <br>
|
|
1481
|
+
* - true: Supported;
|
|
1482
|
+
* - false: Not supported.
|
|
1483
|
+
* @order 76
|
|
1484
|
+
*
|
|
1485
|
+
*/
|
|
339
1486
|
isSupportHardwareEcho(): boolean;
|
|
340
1487
|
|
|
1488
|
+
/** {en}
|
|
1489
|
+
* @detail api
|
|
1490
|
+
* @brief Enables or disables in-ear monitoring.
|
|
1491
|
+
* @param enable Whether to enable in-ear monitoring. <br>
|
|
1492
|
+
* - true: Enable;
|
|
1493
|
+
* - false: (Default) Disable.
|
|
1494
|
+
* @order 77
|
|
1495
|
+
*
|
|
1496
|
+
*/
|
|
341
1497
|
enableEcho(enable: boolean): void;
|
|
342
1498
|
|
|
1499
|
+
/** {en}
|
|
1500
|
+
* @detail api
|
|
1501
|
+
* @brief Checks whether in-ear monitoring is enabled.
|
|
1502
|
+
* @return <br>
|
|
1503
|
+
* - true: Enabled;
|
|
1504
|
+
* - false: Disabled.
|
|
1505
|
+
* @order 78
|
|
1506
|
+
*
|
|
1507
|
+
*/
|
|
343
1508
|
isEnableEcho(): boolean;
|
|
344
1509
|
}
|
|
345
1510
|
export declare class VeLivePusherConfiguration {
|
|
346
1511
|
|
|
347
|
-
|
|
348
|
-
|
|
1512
|
+
/** {en}
|
|
1513
|
+
* @detail api
|
|
1514
|
+
* @brief Sets the time interval between each attempt to reconnect.
|
|
1515
|
+
* @param interval The time interval between each attempt to reconnect, in seconds. The default value is `5`.
|
|
1516
|
+
* @order 2
|
|
1517
|
+
*
|
|
1518
|
+
*/
|
|
1519
|
+
setReconnectIntervalSeconds(interval: int): this;
|
|
1520
|
+
|
|
1521
|
+
/** {en}
|
|
1522
|
+
* @detail api
|
|
1523
|
+
* @brief Gets the time interval between each attempt to reconnect.
|
|
1524
|
+
* @return <br>
|
|
1525
|
+
* The time interval between each attempt to reconnect, in seconds.
|
|
1526
|
+
* @order 3
|
|
1527
|
+
*
|
|
1528
|
+
*/
|
|
349
1529
|
getReconnectIntervalSeconds(): int;
|
|
350
1530
|
|
|
351
|
-
|
|
352
|
-
|
|
1531
|
+
/** {en}
|
|
1532
|
+
* @detail api
|
|
1533
|
+
* @brief Sets the number of attempts to reconnect after the initial attempt fails.
|
|
1534
|
+
* @param maxCount The number of attempts to reconnect after the initial attempt fails. The default value is `3`.
|
|
1535
|
+
* @order 4
|
|
1536
|
+
*
|
|
1537
|
+
*/
|
|
1538
|
+
setReconnectCount(maxCount: int): this;
|
|
1539
|
+
|
|
1540
|
+
/** {en}
|
|
1541
|
+
* @detail api
|
|
1542
|
+
* @brief Gets the number of attempts to reconnect after the initial attempt fails.
|
|
1543
|
+
* @return <br>
|
|
1544
|
+
* The number of attempts to reconnect after the initial attempt fails.
|
|
1545
|
+
* @order 5
|
|
1546
|
+
*
|
|
1547
|
+
*
|
|
1548
|
+
*/
|
|
353
1549
|
getReconnectCount(): int;
|
|
354
1550
|
|
|
355
|
-
|
|
356
|
-
|
|
1551
|
+
/** {en}
|
|
1552
|
+
* @detail api
|
|
1553
|
+
* @brief Sets the video capture configurations.
|
|
1554
|
+
* @return <br>
|
|
1555
|
+
* The pusher configurations. See VeLivePusherConfiguration {@link #VeLivePusherConfiguration} for details.
|
|
1556
|
+
* @order 6
|
|
1557
|
+
* @param config The video capture configurations. See VeLiveVideoCaptureConfiguration for details.
|
|
1558
|
+
*
|
|
1559
|
+
*/
|
|
1560
|
+
setVideoCaptureConfig(config: VeLiveVideoCaptureConfiguration): this;
|
|
1561
|
+
|
|
1562
|
+
/** {en}
|
|
1563
|
+
* @detail api
|
|
1564
|
+
* @brief Gets the video capture configurations.
|
|
1565
|
+
* @return <br>The video capture configurations. See VeLiveVideoCaptureConfiguration for details.
|
|
1566
|
+
* @order 7
|
|
1567
|
+
*
|
|
1568
|
+
*/
|
|
357
1569
|
getVideoCaptureConfig(): VeLiveVideoCaptureConfiguration;
|
|
358
1570
|
|
|
359
|
-
|
|
360
|
-
|
|
1571
|
+
/** {en}
|
|
1572
|
+
* @detail api
|
|
1573
|
+
* @brief Sets the audio capture configurations.
|
|
1574
|
+
* @return <br>
|
|
1575
|
+
* The pusher configurations. See VeLivePusherConfiguration {@link #VeLivePusherConfiguration} for details.
|
|
1576
|
+
* @order 7
|
|
1577
|
+
* @param config The audio capture configurations. See VeLiveAudioCaptureConfiguration for details.
|
|
1578
|
+
*
|
|
1579
|
+
*/
|
|
1580
|
+
setAudioCaptureConfig(config: VeLiveAudioCaptureConfiguration): this;
|
|
1581
|
+
|
|
1582
|
+
/** {en}
|
|
1583
|
+
* @detail api
|
|
1584
|
+
* @brief Gets the audio capture configurations.
|
|
1585
|
+
* @return <br>The audio capture configurations. See VeLiveAudioCaptureConfiguration for details.
|
|
1586
|
+
* @order 8
|
|
1587
|
+
*
|
|
1588
|
+
*
|
|
1589
|
+
*/
|
|
361
1590
|
getAudioCaptureConfig(): VeLiveAudioCaptureConfiguration;
|
|
362
1591
|
|
|
363
|
-
|
|
364
|
-
|
|
1592
|
+
/** {en}
|
|
1593
|
+
* @detail api
|
|
1594
|
+
* @brief Sets the context of the application.
|
|
1595
|
+
* @param context The context of the application.
|
|
1596
|
+
* @return <br>
|
|
1597
|
+
* The pusher configurations. See VeLivePusherConfiguration {@link #VeLivePusherConfiguration} for details.
|
|
1598
|
+
* @order 9
|
|
1599
|
+
*
|
|
1600
|
+
*/
|
|
1601
|
+
setContext(context: Context): this;
|
|
1602
|
+
|
|
1603
|
+
/** {en}
|
|
1604
|
+
* @detail api
|
|
1605
|
+
* @brief Gets the context of the application.
|
|
1606
|
+
* @return <br>
|
|
1607
|
+
* The context of the application.
|
|
1608
|
+
* @order 10
|
|
1609
|
+
*
|
|
1610
|
+
*
|
|
1611
|
+
*/
|
|
365
1612
|
getContext(): Context;
|
|
366
1613
|
|
|
367
|
-
|
|
368
|
-
|
|
1614
|
+
/** {en}
|
|
1615
|
+
* @detail api
|
|
1616
|
+
* @brief Sets advanced parameters. You can leave this parameter empty. If you need to use it, please contact BytePlus technical support.
|
|
1617
|
+
* @param params Extension parameters.
|
|
1618
|
+
* @return <br>
|
|
1619
|
+
* The pusher configurations. See VeLivePusherConfiguration {@link #VeLivePusherConfiguration} for details.
|
|
1620
|
+
* @order 11
|
|
1621
|
+
*
|
|
1622
|
+
*
|
|
1623
|
+
*/
|
|
1624
|
+
setExtraParameters(params: String): this;
|
|
1625
|
+
|
|
1626
|
+
/** {en}
|
|
1627
|
+
* @detail api
|
|
1628
|
+
* @brief Gets advanced parameters.
|
|
1629
|
+
* @return <br>
|
|
1630
|
+
* Advanced parameters.
|
|
1631
|
+
* @order 12
|
|
1632
|
+
*
|
|
1633
|
+
*
|
|
1634
|
+
*/
|
|
369
1635
|
getExtraParams(): LiveSdkSetting;
|
|
370
1636
|
|
|
1637
|
+
/** {en}
|
|
1638
|
+
* @detail api
|
|
1639
|
+
* @brief Creates the live pusher.
|
|
1640
|
+
* @return <br>
|
|
1641
|
+
* The live pusher. See VeLivePusher {@link #VeLivePusher} for details.
|
|
1642
|
+
* @order 1
|
|
1643
|
+
*
|
|
1644
|
+
*
|
|
1645
|
+
*/
|
|
371
1646
|
build(): VeLivePusher;
|
|
372
1647
|
}
|