@byteplus/react-native-live-push 1.0.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.
Files changed (54) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +2 -0
  3. package/android/build.gradle +92 -0
  4. package/android/gradle.properties +5 -0
  5. package/android/src/main/AndroidManifest.xml +16 -0
  6. package/android/src/main/AndroidManifestNew.xml +16 -0
  7. package/android/src/main/java/com/volcengine/velive/rn/push/ExternalSourceHelper.java +58 -0
  8. package/android/src/main/java/com/volcengine/velive/rn/push/NativeVariableManager.java +19 -0
  9. package/android/src/main/java/com/volcengine/velive/rn/push/ScreenCaptureHelper.java +73 -0
  10. package/android/src/main/java/com/volcengine/velive/rn/push/VeLivePushModule.java +182 -0
  11. package/android/src/main/java/com/volcengine/velive/rn/push/VeLivePushModuleSpec.java +16 -0
  12. package/android/src/main/java/com/volcengine/velive/rn/push/VeLivePushPackage.java +27 -0
  13. package/android/src/main/java/com/volcengine/velive/rn/push/VeLivePushView.java +45 -0
  14. package/android/src/main/java/com/volcengine/velive/rn/push/VeLivePushViewManager.java +87 -0
  15. package/ios/VeLivePushSDK.h +24 -0
  16. package/ios/VeLivePushSDK.m +109 -0
  17. package/ios/VeLivePushView.h +24 -0
  18. package/ios/VeLivePushView.m +74 -0
  19. package/ios/VeLivePushViewManager.m +59 -0
  20. package/lib/commonjs/index.js +24238 -0
  21. package/lib/module/index.js +24186 -0
  22. package/lib/typescript/android/index.d.ts +44 -0
  23. package/lib/typescript/codegen/android/api.d.ts +372 -0
  24. package/lib/typescript/codegen/android/callback.d.ts +91 -0
  25. package/lib/typescript/codegen/android/errorcode.d.ts +26 -0
  26. package/lib/typescript/codegen/android/index.d.ts +5 -0
  27. package/lib/typescript/codegen/android/keytype.d.ts +469 -0
  28. package/lib/typescript/codegen/android/types.d.ts +32 -0
  29. package/lib/typescript/codegen/ios/api.d.ts +257 -0
  30. package/lib/typescript/codegen/ios/callback.d.ts +88 -0
  31. package/lib/typescript/codegen/ios/errorcode.d.ts +54 -0
  32. package/lib/typescript/codegen/ios/index.d.ts +5 -0
  33. package/lib/typescript/codegen/ios/keytype.d.ts +488 -0
  34. package/lib/typescript/codegen/ios/types.d.ts +35 -0
  35. package/lib/typescript/codegen/pack/api.d.ts +1933 -0
  36. package/lib/typescript/codegen/pack/callback.d.ts +542 -0
  37. package/lib/typescript/codegen/pack/errorcode.d.ts +174 -0
  38. package/lib/typescript/codegen/pack/index.d.ts +5 -0
  39. package/lib/typescript/codegen/pack/keytype.d.ts +1952 -0
  40. package/lib/typescript/codegen/pack/types.d.ts +1 -0
  41. package/lib/typescript/codegen/type-shim.d.ts +6 -0
  42. package/lib/typescript/component.d.ts +8 -0
  43. package/lib/typescript/core/api.d.ts +2 -0
  44. package/lib/typescript/core/callback.d.ts +2 -0
  45. package/lib/typescript/core/env.d.ts +29 -0
  46. package/lib/typescript/core/errorcode.d.ts +2 -0
  47. package/lib/typescript/core/index.d.ts +6 -0
  48. package/lib/typescript/core/keytype.d.ts +7 -0
  49. package/lib/typescript/core/pusher.d.ts +16 -0
  50. package/lib/typescript/index.d.ts +2 -0
  51. package/lib/typescript/ios/extends.d.ts +41 -0
  52. package/lib/typescript/runtime.d.ts +1 -0
  53. package/package.json +31 -0
  54. package/react-native-velive-push.podspec +45 -0
@@ -0,0 +1,1952 @@
1
+ import * as $p_a from '../android/index';
2
+ import * as $p_i from '../ios/index';
3
+
4
+ /** {en}
5
+ * @detail keytype
6
+ * @brief The video encoding configurations.
7
+ */
8
+ export declare class VeLiveVideoEncoderConfiguration {
9
+ protected _instance: any;
10
+ protected __init(...args: any[]): void;
11
+ protected __new_instance(...args: any[]): $p_a.VeLiveVideoEncoderConfiguration | $p_i.VeLiveVideoEncoderConfiguration;
12
+
13
+ /** {en}
14
+ * @detail api
15
+ * @brief Gets the video resolution.
16
+ * @return <br>
17
+ * The video resolution. See VeLiveVideoResolution {@link #VeLiveVideoResolution} for details.
18
+ */
19
+ getResolution(): VeLiveVideoResolution;
20
+
21
+ /** {en}
22
+ * @detail api
23
+ * @brief Sets the video resolution.
24
+ * @param resolution The video resolution. The default value is `VeLiveVideoResolution720P`. See VeLiveVideoResolution {@link #VeLiveVideoResolution} for details.
25
+ * @return <br>
26
+ * The video encoding configurations. See VeLiveVideoEncoderConfiguration {@link #VeLiveVideoEncoderConfiguration} for details.
27
+ */
28
+ setResolution(resolution: VeLiveVideoResolution): VeLiveVideoEncoderConfiguration;
29
+
30
+ /** {en}
31
+ * @detail api
32
+ * @brief Gets the video codec.
33
+ * @return <br>
34
+ * The video codec. See VeLiveVideoCodec {@link #VeLiveVideoCodec} for details.
35
+ */
36
+ getCodec(): VeLiveVideoCodec;
37
+
38
+ /** {en}
39
+ * @detail api
40
+ * @brief Sets the video codec.
41
+ * @return The video encoding configurations. See [VeLiveVideoEncoderConfiguration](broadcast-sdk-for-android-type-definition#VeLiveVideoEncoderConfiguration) for details.
42
+ * @param codec <br>The video codec. See [VeLiveVideoCodec](broadcast-sdk-for-android-type-definition#VeLiveVideoCodec) for details.
43
+ */
44
+ setCodec(codec: VeLiveVideoCodec): VeLiveVideoEncoderConfiguration;
45
+
46
+ /** {en}
47
+ * @detail api
48
+ * @brief Get the encoded video bitrate.
49
+ * @return <br>
50
+ * The encoded video bitrate.
51
+ */
52
+ getBitrate(): number;
53
+
54
+ /** {en}
55
+ * @detail api
56
+ * @brief Sets the encoded video bitrate.
57
+ * @param bitrate The encoded video bitrate, in Kbps. The default value depends on the value of the `resolution` parameter.
58
+ * @return <br>
59
+ * The video encoding configurations. See VeLiveVideoEncoderConfiguration {@link #VeLiveVideoEncoderConfiguration} for details.
60
+ */
61
+ setBitrate(bitrate: number): VeLiveVideoEncoderConfiguration;
62
+
63
+ /** {en}
64
+ * @detail api
65
+ * @brief Gets the minimum encoded video bitrate.
66
+ * @return <br>
67
+ * The minimum encoded video bitrate.
68
+ */
69
+ getMinBitrate(): number;
70
+
71
+ /** {en}
72
+ * @detail api
73
+ * @brief Sets the minimum encoded video bitrate.
74
+ * @param minBitrate The minimum encoded video bitrate, in Kbps, when the adaptive bitrate (ABR) feature is enabled. The default value depends on the value of the `resolution` parameter.
75
+ * @return <br>
76
+ * The video encoding configurations. See VeLiveVideoEncoderConfiguration {@link #VeLiveVideoEncoderConfiguration} for details.
77
+ */
78
+ setMinBitrate(minBitrate: number): VeLiveVideoEncoderConfiguration;
79
+
80
+ /** {en}
81
+ * @detail api
82
+ * @brief Gets the maximum encoded video bitrate.
83
+ * @return <br>
84
+ * The maximum encoded video bitrate.
85
+ */
86
+ getMaxBitrate(): number;
87
+
88
+ /** {en}
89
+ * @detail api
90
+ * @brief Sets the maximum encoded video bitrate.
91
+ * @param maxBitrate The maximum video encoding bitrate, in Kbps, when the adaptive bitrate (ABR) feature is enabled. The default value depends on the value of the `resolution` parameter.
92
+ * @return <br>
93
+ * The video encoding configurations. See VeLiveVideoEncoderConfiguration {@link #VeLiveVideoEncoderConfiguration} for details.
94
+ */
95
+ setMaxBitrate(maxBitrate: number): VeLiveVideoEncoderConfiguration;
96
+
97
+ /** {en}
98
+ * @detail api
99
+ * @brief Gets the encoded video GOP size.
100
+ * @return <br>
101
+ * The encoded video GOP size.
102
+ */
103
+ getGopSize(): number;
104
+
105
+ /** {en}
106
+ * @detail api
107
+ * @brief Sets the encoded video GOP size.
108
+ * @param gopSize The encoded video GOP size, in seconds. The default value is `2`.
109
+ * @return <br>
110
+ * The video encoding configurations. See VeLiveVideoEncoderConfiguration {@link #VeLiveVideoEncoderConfiguration} for details.
111
+ */
112
+ setGopSize(gopSize: number): VeLiveVideoEncoderConfiguration;
113
+
114
+ /** {en}
115
+ * @detail api
116
+ * @brief Gets the encoded frame rate.
117
+ * @return <br>
118
+ * The encoded frame rate.
119
+ */
120
+ getFps(): number;
121
+
122
+ /** {en}
123
+ * @detail api
124
+ * @brief Sets the encoded frame rate.
125
+ * @param fps The encoded frame rate, in fps. The default value is `15`.
126
+ * @return <br>
127
+ * The video encoding configurations. See VeLiveVideoEncoderConfiguration {@link #VeLiveVideoEncoderConfiguration} for details.
128
+ */
129
+ setFps(fps: number): VeLiveVideoEncoderConfiguration;
130
+
131
+ /** {en}
132
+ * @platform android
133
+ * @detail api
134
+ * @brief Gets whether to enable B frames.
135
+ * @return <br>
136
+ * Whether to enable B frames. <br>
137
+ * - true: Enable;
138
+ * - false: Disable.
139
+ */
140
+ android_isEnableBFrame(): boolean;
141
+
142
+ /** {en}
143
+ * @detail api
144
+ * @brief Sets whether to enable B frames.
145
+ * @param enableBFrame Whether to enable B frames. <br>
146
+ * - true: Enable;
147
+ * - false: (Default) Disable.
148
+ * @return <br>
149
+ * The video encoding configurations. See VeLiveVideoEncoderConfiguration {@link #VeLiveVideoEncoderConfiguration} for details.
150
+ */
151
+ setEnableBFrame(enableBFrame: boolean): VeLiveVideoEncoderConfiguration;
152
+
153
+ /** {en}
154
+ * @platform android
155
+ * @detail api
156
+ * @brief Gets whether to enable hardware encoding.
157
+ * @return <br>
158
+ * Whether to enable hardware encoding. <br>
159
+ * - true: Enable;
160
+ * - false: Disable.
161
+ */
162
+ android_isEnableAccelerate(): boolean;
163
+
164
+ /** {en}
165
+ * @detail api
166
+ * @brief Enables hardware encoding.
167
+ * @param enableAccelerate Whether to enable hardware encoding. <br>
168
+ * - true: (Default) Enable;
169
+ * - false: Disable.
170
+ * @return <br>
171
+ * The video encoding configurations. See VeLiveVideoEncoderConfiguration {@link #VeLiveVideoEncoderConfiguration} for details.
172
+ */
173
+ setEnableAccelerate(enableAccelerate: boolean): VeLiveVideoEncoderConfiguration;
174
+
175
+ /** {en}
176
+ * @platform ios
177
+ * @brief Creates a VeLiveVideoEncoderConfiguration {@link #VeLiveVideoEncoderConfiguration} object and specifies the video resolution.
178
+ * @param resolution The video resolution. See VeLiveVideoResolution {@link #VeLiveVideoResolution} for details.
179
+ * @return <br>
180
+ * The VeLiveVideoEncoderConfiguration {@link #VeLiveVideoEncoderConfiguration} object.
181
+ */
182
+ ios_initWithResolution(resolution: VeLiveVideoResolution): this;
183
+ }
184
+
185
+ /** {en}
186
+ * @platform android
187
+ * @detail keytype
188
+ * @brief The audio encoding format.
189
+ */
190
+ export declare enum VeLiveAudioCodec {
191
+
192
+ /** {en}
193
+ * @platform android
194
+ * @brief FDKAAC.
195
+ */
196
+ VeLiveAudioCodecFdkAAC = 0,
197
+
198
+ /** {en}
199
+ * @platform android
200
+ * @brief Mediacodec AAC.
201
+ */
202
+ VeLiveAudioCodecMediaCodecAAC = 1,
203
+
204
+ /** {en}
205
+ * @platform android
206
+ * @brief FFMPEG AAC.
207
+ */
208
+ VeLiveAudioCodecFFmpegAAC = 2
209
+ }
210
+ export declare class t_VeLiveAudioCodec {
211
+ static ts_to_android(value: VeLiveAudioCodec): $p_a.VeLiveAudioCodec;
212
+ static android_to_ts(value: $p_a.VeLiveAudioCodec): VeLiveAudioCodec;
213
+ static ts_to_ios(value: VeLiveAudioCodec): never;
214
+ static ios_to_ts(value: unknown): never;
215
+ }
216
+
217
+ /** {en}
218
+ * @detail keytype
219
+ * @brief The video encoding format.
220
+ */
221
+ export declare enum VeLiveVideoCodec {
222
+
223
+ /** {en}
224
+ * @brief H.264.
225
+ */
226
+ VeLiveVideoCodecH264 = "h264",
227
+
228
+ /** {en}
229
+ * @brief ByteVC1, an encoding format developed by BytePlus.
230
+ */
231
+ VeLiveVideoCodecByteVC1 = "bytevc1"
232
+ }
233
+ export declare class t_VeLiveVideoCodec {
234
+ static ts_to_android(value: VeLiveVideoCodec): $p_a.VeLiveVideoCodec;
235
+ static android_to_ts(value: $p_a.VeLiveVideoCodec): VeLiveVideoCodec;
236
+ static ts_to_ios(value: VeLiveVideoCodec): $p_i.VeLiveVideoCodec;
237
+ static ios_to_ts(value: $p_i.VeLiveVideoCodec): VeLiveVideoCodec;
238
+ }
239
+
240
+ /** {en}
241
+ * @detail keytype
242
+ * @brief Push-stream statistics.
243
+ */
244
+ export declare class VeLivePusherStatistics {
245
+ protected _instance: any;
246
+ protected __init(...args: any[]): void;
247
+ protected __new_instance(...args: any[]): $p_a.VeLivePusherStatistics | $p_i.VeLivePusherStatistics;
248
+
249
+ /** {en}
250
+ * @brief The width of the encoded video, in pixels.
251
+ */
252
+ get encodeWidth(): number;
253
+ set encodeWidth(value: number);
254
+
255
+ /** {en}
256
+ * @brief The height of the encoded video, in pixels.
257
+ */
258
+ get encodeHeight(): number;
259
+ set encodeHeight(value: number);
260
+
261
+ /** {en}
262
+ * @brief The width of the captured video, in pixels.
263
+ */
264
+ get captureWidth(): number;
265
+ set captureWidth(value: number);
266
+
267
+ /** {en}
268
+ * @brief The height of the captured video, in pixels.
269
+ */
270
+ get captureHeight(): number;
271
+ set captureHeight(value: number);
272
+
273
+ /** {en}
274
+ * @brief The captured frame rate, in fps.
275
+ */
276
+ get captureFps(): number;
277
+ set captureFps(value: number);
278
+
279
+ /** {en}
280
+ * @brief The encoded frame rate, in fps.
281
+ */
282
+ get encodeFps(): number;
283
+ set encodeFps(value: number);
284
+
285
+ /** {en}
286
+ * @brief The transmission frame rate, in fps. You can use this parameter to showcase the real-time frame rate on the user interface.
287
+ */
288
+ get transportFps(): number;
289
+ set transportFps(value: number);
290
+
291
+ /** {en}
292
+ * @brief The encoded frame rate you specify in the setVideoEncoderConfiguration {@link #VeLivePusher#setVideoEncoderConfiguration} method, in fps.
293
+ */
294
+ get fps(): number;
295
+ set fps(value: number);
296
+
297
+ /** {en}
298
+ * @brief The encoded bitrate you specify in the setVideoEncoderConfiguration {@link #VeLivePusher#setVideoEncoderConfiguration} method, in Kbps.
299
+ */
300
+ get videoBitrate(): number;
301
+ set videoBitrate(value: number);
302
+
303
+ /** {en}
304
+ * @brief The minimum encoded bitrate you specify in the setVideoEncoderConfiguration {@link #VeLivePusher#setVideoEncoderConfiguration} method, in Kbps.
305
+ */
306
+ get minVideoBitrate(): number;
307
+ set minVideoBitrate(value: number);
308
+
309
+ /** {en}
310
+ * @brief The maximum encoded bitrate you specify in the setVideoEncoderConfiguration {@link #VeLivePusher#setVideoEncoderConfiguration} method, in Kbps.
311
+ */
312
+ get maxVideoBitrate(): number;
313
+ set maxVideoBitrate(value: number);
314
+
315
+ /** {en}
316
+ * @brief The encoded video bitrate, in Kbps.
317
+ */
318
+ get encodeVideoBitrate(): number;
319
+ set encodeVideoBitrate(value: number);
320
+
321
+ /** {en}
322
+ * @brief The transmission bitrate, in Kbps. You can use this parameter to showcase the real-time bitrate on the user interface.
323
+ */
324
+ get transportVideoBitrate(): number;
325
+ set transportVideoBitrate(value: number);
326
+
327
+ /** {en}
328
+ * @brief The audio encoding bitrate, in Kbps.
329
+ */
330
+ get encodeAudioBitrate(): number;
331
+ set encodeAudioBitrate(value: number);
332
+
333
+ /** {en}
334
+ * @brief The push stream address.
335
+ */
336
+ get url(): string;
337
+ set url(value: string);
338
+
339
+ /** {en}
340
+ * @brief The video codec.
341
+ */
342
+ get codec(): string;
343
+ set codec(value: string);
344
+ }
345
+
346
+ /** {en}
347
+ * @detail keytype
348
+ * @brief The render mode.
349
+ */
350
+ export declare enum VeLivePusherRenderMode {
351
+
352
+ /** {en}
353
+ * @brief Stretch the video to fill the screen. The aspect ratio of the video might change.
354
+ */
355
+ VeLivePusherRenderModeFill = 0,
356
+
357
+ /** {en}
358
+ * @brief Display the full video. The video is uniformly scaled until one dimension of the video hits the boundary of the screen. Any remaining space on the screen will be filled with background color.
359
+ */
360
+ VeLivePusherRenderModeFit = 1,
361
+
362
+ /** {en}
363
+ * @brief Uniformly scale the video until the screen is completely filled. Part of the video may be cropped.
364
+ */
365
+ VeLivePusherRenderModeHidden = 2
366
+ }
367
+ export declare class t_VeLivePusherRenderMode {
368
+ static ts_to_android(value: VeLivePusherRenderMode): $p_a.VeLivePusherRenderMode;
369
+ static android_to_ts(value: $p_a.VeLivePusherRenderMode): VeLivePusherRenderMode;
370
+ static ts_to_ios(value: VeLivePusherRenderMode): $p_i.VeLivePusherRenderMode;
371
+ static ios_to_ts(value: $p_i.VeLivePusherRenderMode): VeLivePusherRenderMode;
372
+ }
373
+
374
+ /** {en}
375
+ * @detail keytype
376
+ * @brief The authentication method for the special effects license.
377
+ */
378
+ export declare enum VeLiveVideoEffectLicenseType {
379
+
380
+ /** {en}
381
+ * @brief Authenticate offline.
382
+ */
383
+ VeLiveVideoEffectLicenseTypeOffLine = 0,
384
+
385
+ /** {en}
386
+ * @brief Authenticate online.
387
+ */
388
+ VeLiveVideoEffectLicenseTypeOnLine = 1
389
+ }
390
+ export declare class t_VeLiveVideoEffectLicenseType {
391
+ static ts_to_android(value: VeLiveVideoEffectLicenseType): $p_a.VeLiveVideoEffectLicenseType;
392
+ static android_to_ts(value: $p_a.VeLiveVideoEffectLicenseType): VeLiveVideoEffectLicenseType;
393
+ static ts_to_ios(value: VeLiveVideoEffectLicenseType): $p_i.VeLiveVideoEffectLicenseType;
394
+ static ios_to_ts(value: $p_i.VeLiveVideoEffectLicenseType): VeLiveVideoEffectLicenseType;
395
+ }
396
+
397
+ /** {en}
398
+ * @detail keytype
399
+ * @brief The data type of the pushed audio.
400
+ */
401
+ export declare enum VeLiveAudioBufferType {
402
+
403
+ /** {en}
404
+ * @brief Unknown data type.
405
+ */
406
+ VeLiveAudioBufferTypeUnknown = 0,
407
+
408
+ /** {en}
409
+ * @platform android
410
+ * @brief ByteBuffer.
411
+ */
412
+ VeLiveAudioBufferTypeByteBuffer = 1,
413
+
414
+ /** {en}
415
+ * @platform ios
416
+ * @brief CMSampleBufferRef.
417
+ */
418
+ VeLiveAudioBufferTypeSampleBuffer = 3,
419
+
420
+ /** {en}
421
+ * @platform ios
422
+ * @brief NSData.
423
+ */
424
+ VeLiveAudioBufferTypeNSData = 2
425
+ }
426
+ export declare class t_VeLiveAudioBufferType {
427
+ static ts_to_android(value: VeLiveAudioBufferType): $p_a.VeLiveAudioBufferType;
428
+ static android_to_ts(value: $p_a.VeLiveAudioBufferType): VeLiveAudioBufferType;
429
+ static ts_to_ios(value: VeLiveAudioBufferType): $p_i.VeLiveAudioBufferType;
430
+ static ios_to_ts(value: $p_i.VeLiveAudioBufferType): VeLiveAudioBufferType;
431
+ }
432
+
433
+ /** {en}
434
+ * @detail keytype
435
+ * @brief The number of audio channels for streaming.
436
+ */
437
+ export declare enum VeLiveAudioChannel {
438
+
439
+ /** {en}
440
+ * @brief Mono, which is suitable for voice communication and saves bandwidth.
441
+ */
442
+ VeLiveAudioChannelMono = 1,
443
+
444
+ /** {en}
445
+ * @brief Stereo, which provides a richer audio experience and is suitable for music playback.
446
+ */
447
+ VeLiveAudioChannelStereo = 2
448
+ }
449
+ export declare class t_VeLiveAudioChannel {
450
+ static ts_to_android(value: VeLiveAudioChannel): $p_a.VeLiveAudioChannel;
451
+ static android_to_ts(value: $p_a.VeLiveAudioChannel): VeLiveAudioChannel;
452
+ static ts_to_ios(value: VeLiveAudioChannel): $p_i.VeLiveAudioChannel;
453
+ static ios_to_ts(value: $p_i.VeLiveAudioChannel): VeLiveAudioChannel;
454
+ }
455
+
456
+ /** {en}
457
+ * @detail keytype
458
+ * @brief The type of the first frame.
459
+ */
460
+ export declare enum VeLiveFirstFrameType {
461
+
462
+ /** {en}
463
+ * @brief The first audio or video frame captured by the microphone or the camera.
464
+ */
465
+ VeLiveFirstCaptureFrame = 0,
466
+
467
+ /** {en}
468
+ * @brief The first video frame rendered, which is the first frame displayed on the screen.
469
+ */
470
+ VeLiveFirstRenderFrame = 1,
471
+
472
+ /** {en}
473
+ * @brief The first audio or video frame encoded in a certain format.
474
+ */
475
+ VeLiveFirstEncodedFrame = 2,
476
+
477
+ /** {en}
478
+ * @brief The first audio or video frame transmitted through the network.
479
+ */
480
+ VeLiveFirstSendFrame = 3,
481
+
482
+ /** {en}
483
+ * @platform ios
484
+ * @brief The first audio frame captured from the app after screen streaming starts.
485
+ */
486
+ VeLiveFirstAppAudioCaptureFrame = 4
487
+ }
488
+ export declare class t_VeLiveFirstFrameType {
489
+ static ts_to_android(value: VeLiveFirstFrameType): $p_a.VeLiveFirstFrameType;
490
+ static android_to_ts(value: $p_a.VeLiveFirstFrameType): VeLiveFirstFrameType;
491
+ static ts_to_ios(value: VeLiveFirstFrameType): $p_i.VeLiveFirstFrameType;
492
+ static ios_to_ts(value: $p_i.VeLiveFirstFrameType): VeLiveFirstFrameType;
493
+ }
494
+
495
+ /** {en}
496
+ * @detail keytype
497
+ * @hidden
498
+ * @brief The fluency level of the video.
499
+ */
500
+ export declare enum VeLiveVideoFluencyLevel {
501
+
502
+ /** {en}
503
+ * @brief Smooth. The frame rate reaches the expected rate.
504
+ */
505
+ VeLiveVideoFluencyLevelSmooth = 0,
506
+
507
+ /** {en}
508
+ * @brief Minor freeze. The frame rate is 1 to 3 fps less than the expected rate.
509
+ */
510
+ VeLiveVideoFluencyLevelSluggish = 1,
511
+
512
+ /** {en}
513
+ * @brief Severe freeze. The frame rate is 4 fps lower than the expected rate.
514
+ */
515
+ VeLiveVideoFluencyLevelBlocked = 2,
516
+
517
+ /** {en}
518
+ * @platform ios
519
+ * @brief Completely frozen. The frame rate is below 2 fps.
520
+ */
521
+ VeLiveVideoFluencyLevelStuck = 3
522
+ }
523
+ export declare class t_VeLiveVideoFluencyLevel {
524
+ static ts_to_android(value: VeLiveVideoFluencyLevel): $p_a.VeLiveVideoFluencyLevel;
525
+ static android_to_ts(value: $p_a.VeLiveVideoFluencyLevel): VeLiveVideoFluencyLevel;
526
+ static ts_to_ios(value: VeLiveVideoFluencyLevel): $p_i.VeLiveVideoFluencyLevel;
527
+ static ios_to_ts(value: $p_i.VeLiveVideoFluencyLevel): VeLiveVideoFluencyLevel;
528
+ }
529
+
530
+ /** {en}
531
+ * @detail keytype
532
+ * @brief Video capture type.
533
+ */
534
+ export declare enum VeLiveVideoCaptureType {
535
+
536
+ /** {en}
537
+ * @brief Capture the video with the front-facing camera.
538
+ */
539
+ VeLiveVideoCaptureFrontCamera = 0,
540
+
541
+ /** {en}
542
+ * @brief Capture the video with the rear camera.
543
+ */
544
+ VeLiveVideoCaptureBackCamera = 1,
545
+
546
+ /** {en}
547
+ * @brief Capture the video with dual cameras.
548
+ */
549
+ VeLiveVideoCaptureDualCamera = 2,
550
+
551
+ /** {en}
552
+ * @platform android
553
+ * @brief Capture the screen.
554
+ */
555
+ VeLiveVideoCaptureScreen = 3,
556
+
557
+ /** {en}
558
+ * @brief Capture the video with an external device or source.
559
+ */
560
+ VeLiveVideoCaptureExternal = 4,
561
+
562
+ /** {en}
563
+ * @brief Use a static image as the video source.
564
+ */
565
+ VeLiveVideoCaptureCustomImage = 5,
566
+
567
+ /** {en}
568
+ * @brief Use the last frame as the video source.
569
+ */
570
+ VeLiveVideoCaptureLastFrame = 6,
571
+
572
+ /** {en}
573
+ * @brief Use a black frame as the video source. This is usually used for debugging purposes or in special circumstances.
574
+ */
575
+ VeLiveVideoCaptureDummyFrame = 7
576
+ }
577
+ export declare class t_VeLiveVideoCaptureType {
578
+ static ts_to_android(value: VeLiveVideoCaptureType): $p_a.VeLiveVideoCaptureType;
579
+ static android_to_ts(value: $p_a.VeLiveVideoCaptureType): VeLiveVideoCaptureType;
580
+ static ts_to_ios(value: VeLiveVideoCaptureType): $p_i.VeLiveVideoCaptureType;
581
+ static ios_to_ts(value: $p_i.VeLiveVideoCaptureType): VeLiveVideoCaptureType;
582
+ }
583
+
584
+ /** {en}
585
+ * @platform android
586
+ * @detail keytype
587
+ * @brief The enumeration type of camera configurations.
588
+ */
589
+ export declare enum VeLiveVideoProfile {
590
+
591
+ /** {en}
592
+ * @platform android
593
+ * @brief Unknown codec.
594
+ */
595
+ VeLiveVideoProfileUnknown = 0,
596
+
597
+ /** {en}
598
+ * @platform android
599
+ * @brief H.264, using Baseline level.
600
+ */
601
+ VeLiveVideoProfileH264Baseline = 1,
602
+
603
+ /** {en}
604
+ * @platform android
605
+ * @brief H.264, using Main level.
606
+ */
607
+ VeLiveVideoProfileH264Main = 2,
608
+
609
+ /** {en}
610
+ * @platform android
611
+ * @brief H.264, using High level.
612
+ */
613
+ VeLiveVideoProfileH264High = 3,
614
+
615
+ /** {en}
616
+ * @platform android
617
+ * @brief ByteVC1, using Main level.
618
+ */
619
+ VeLiveVideoProfileByteVC1Main = 4
620
+ }
621
+ export declare class t_VeLiveVideoProfile {
622
+ static ts_to_android(value: VeLiveVideoProfile): $p_a.VeLiveVideoProfile;
623
+ static android_to_ts(value: $p_a.VeLiveVideoProfile): VeLiveVideoProfile;
624
+ static ts_to_ios(value: VeLiveVideoProfile): never;
625
+ static ios_to_ts(value: unknown): never;
626
+ }
627
+
628
+ /** {en}
629
+ * @detail keytype
630
+ * @brief The rotation angle of the video frame relative to the app.
631
+ */
632
+ export declare enum VeLiveVideoRotation {
633
+
634
+ /** {en}
635
+ * @brief Do not rotate.
636
+ */
637
+ VeLiveVideoRotation0 = 0,
638
+
639
+ /** {en}
640
+ * @brief Rotate by 90 degrees clockwise.
641
+ */
642
+ VeLiveVideoRotation90 = 1,
643
+
644
+ /** {en}
645
+ * @brief Rotate by 180 degrees clockwise.
646
+ */
647
+ VeLiveVideoRotation180 = 2,
648
+
649
+ /** {en}
650
+ * @brief Rotate by 270 degrees clockwise.
651
+ */
652
+ VeLiveVideoRotation270 = 3
653
+ }
654
+ export declare class t_VeLiveVideoRotation {
655
+ static ts_to_android(value: VeLiveVideoRotation): $p_a.VeLiveVideoRotation;
656
+ static android_to_ts(value: $p_a.VeLiveVideoRotation): VeLiveVideoRotation;
657
+ static ts_to_ios(value: VeLiveVideoRotation): $p_i.VeLiveVideoRotation;
658
+ static ios_to_ts(value: $p_i.VeLiveVideoRotation): VeLiveVideoRotation;
659
+ }
660
+
661
+ /** {en}
662
+ * @detail keytype
663
+ * @brief The source of the video frame.
664
+ */
665
+ export declare enum VeLiveVideoFrameSource {
666
+
667
+ /** {en}
668
+ * @brief The original video frame captured by the camera or other video sources.
669
+ */
670
+ VeLiveVideoFrameSourceCapture = "1<<0",
671
+
672
+ /** {en}
673
+ * @brief The video frame to be encoded after undergoing various processes, such as filtering and rotation.
674
+ */
675
+ VeLiveVideoFrameSourcePreEncode = "1<<1"
676
+ }
677
+ export declare class t_VeLiveVideoFrameSource {
678
+ static ts_to_android(value: VeLiveVideoFrameSource): $p_a.VeLiveVideoFrameSource;
679
+ static android_to_ts(value: $p_a.VeLiveVideoFrameSource): VeLiveVideoFrameSource;
680
+ static ts_to_ios(value: VeLiveVideoFrameSource): $p_i.VeLiveVideoFrameSource;
681
+ static ios_to_ts(value: $p_i.VeLiveVideoFrameSource): VeLiveVideoFrameSource;
682
+ }
683
+
684
+ /** {en}
685
+ * @detail keytype
686
+ * @brief AAC encoding format.
687
+ */
688
+ export declare enum VeLiveAudioProfile {
689
+
690
+ /** {en}
691
+ * @brief LC-AAC.
692
+ */
693
+ VeLiveAudioAACProfileLC = 0,
694
+
695
+ /** {en}
696
+ * @brief HEv1-AAC.
697
+ */
698
+ VeLiveAudioAACProfileHEv1 = 1,
699
+
700
+ /** {en}
701
+ * @brief HEv2-AAC.
702
+ */
703
+ VeLiveAudioAACProfileHEv2 = 2
704
+ }
705
+ export declare class t_VeLiveAudioProfile {
706
+ static ts_to_android(value: VeLiveAudioProfile): $p_a.VeLiveAudioProfile;
707
+ static android_to_ts(value: $p_a.VeLiveAudioProfile): VeLiveAudioProfile;
708
+ static ts_to_ios(value: VeLiveAudioProfile): $p_i.VeLiveAudioProfile;
709
+ static ios_to_ts(value: $p_i.VeLiveAudioProfile): VeLiveAudioProfile;
710
+ }
711
+
712
+ /** {en}
713
+ * @detail keytype
714
+ * @brief The data type of the video.
715
+ */
716
+ export declare enum VeLiveVideoBufferType {
717
+
718
+ /** {en}
719
+ * @brief Unknown data type, which is the default type if you do not specify any type.
720
+ */
721
+ VeLiveVideoBufferTypeUnknown = 0,
722
+
723
+ /** {en}
724
+ * @brief OpenGL texture.
725
+ */
726
+ VeLiveVideoBufferTypeTexture = 1,
727
+
728
+ /** {en}
729
+ * @platform android
730
+ * @brief ByteBuffer.
731
+ */
732
+ VeLiveVideoBufferTypeByteBuffer = 2,
733
+
734
+ /** {en}
735
+ * @platform android
736
+ * @brief ByteArray.
737
+ */
738
+ VeLiveVideoBufferTypeByteArray = 3,
739
+
740
+ /** {en}
741
+ * @platform ios
742
+ * @brief CVPixelBuffer.
743
+ */
744
+ VeLiveVideoBufferTypePixelBuffer = 5,
745
+
746
+ /** {en}
747
+ * @platform ios
748
+ * @brief CMSampleBufferRef.
749
+ */
750
+ VeLiveVideoBufferTypeSampleBuffer = 6,
751
+
752
+ /** {en}
753
+ * @platform ios
754
+ * @brief NSData.
755
+ */
756
+ VeLiveVideoBufferTypeNSData = 7
757
+ }
758
+ export declare class t_VeLiveVideoBufferType {
759
+ static ts_to_android(value: VeLiveVideoBufferType): $p_a.VeLiveVideoBufferType;
760
+ static android_to_ts(value: $p_a.VeLiveVideoBufferType): VeLiveVideoBufferType;
761
+ static ts_to_ios(value: VeLiveVideoBufferType): $p_i.VeLiveVideoBufferType;
762
+ static ios_to_ts(value: $p_i.VeLiveVideoBufferType): VeLiveVideoBufferType;
763
+ }
764
+
765
+ /** {en}
766
+ * @detail keytype
767
+ * @brief The audio capture configurations.
768
+ */
769
+ export declare class VeLiveAudioCaptureConfiguration {
770
+ protected _instance: any;
771
+ protected __init(...args: any[]): void;
772
+ protected __new_instance(...args: any[]): $p_a.VeLiveAudioCaptureConfiguration | $p_i.VeLiveAudioCaptureConfiguration;
773
+
774
+ /** {en}
775
+ * @detail api
776
+ * @brief Gets the sample rate.
777
+ * @return <br>
778
+ * The sample rate. See VeLiveAudioSampleRate {@link #VeLiveAudioSampleRate} for details.
779
+ */
780
+ getSampleRate(): VeLiveAudioSampleRate;
781
+
782
+ /** {en}
783
+ * @detail api
784
+ * @brief Sets the sample rate.
785
+ * @return <br>The audio capture configurations. See VeLiveAudioCaptureConfiguration for details.
786
+ * @param sampleRate The sample rate. The default value is `VeLiveAudioSampleRate44100`. See VeLiveAudioSampleRate {@link #VeLiveAudioSampleRate} for details.
787
+ */
788
+ setSampleRate(sampleRate: VeLiveAudioSampleRate): VeLiveAudioCaptureConfiguration;
789
+
790
+ /** {en}
791
+ * @detail api
792
+ * @brief Gets the number of audio channels.
793
+ * @return <br>
794
+ * The number of audio channels. See VeLiveAudioChannel {@link #VeLiveAudioChannel} for details.
795
+ */
796
+ getChannel(): VeLiveAudioChannel;
797
+
798
+ /** {en}
799
+ * @detail api
800
+ * @brief Sets the number of audio channels.
801
+ * @return <br>The audio capture configurations. See VeLiveAudioCaptureConfiguration for details.
802
+ * @param channel The number of audio channels. The default value is `VeLiveAudioChannelStereo`. See VeLiveAudioChannel {@link #VeLiveAudioChannel} for details.
803
+ */
804
+ setChannel(channel: VeLiveAudioChannel): VeLiveAudioCaptureConfiguration;
805
+ }
806
+
807
+ /** {en}
808
+ * @detail keytype
809
+ * @brief The configurations for audio and video mixing.
810
+ */
811
+ export declare class VeLiveStreamMixDescription {
812
+ protected _instance: any;
813
+ protected __init(...args: any[]): void;
814
+ protected __new_instance(...args: any[]): $p_a.VeLiveStreamMixDescription | $p_i.VeLiveStreamMixDescription;
815
+
816
+ /** {en}
817
+ * @brief An array of video mixing configurations, where each array element represents the mixing configurations of a video stream. See VeLiveMixVideoLayout {@link #VeLiveMixVideoLayout} for details.
818
+ */
819
+ get mixVideoStreams(): Array<VeLiveMixVideoLayout>;
820
+ set mixVideoStreams(value: Array<VeLiveMixVideoLayout>);
821
+
822
+ /** {en}
823
+ * @brief An array of audio mixing configurations, where each array element represents the mixing configurations of an audio stream. See VeLiveMixAudioLayout for details.
824
+ */
825
+ get mixAudioStreams(): Array<VeLiveMixAudioLayout>;
826
+ set mixAudioStreams(value: Array<VeLiveMixAudioLayout>);
827
+
828
+ /** {en}
829
+ * @brief The background color of the mixed video, in #RRGGBB format.
830
+ */
831
+ get backgroundColor(): string;
832
+ set backgroundColor(value: string);
833
+ }
834
+
835
+ /** {en}
836
+ * @detail keytype
837
+ * @brief The sample rate of the pushed audio.
838
+ */
839
+ export declare enum VeLiveAudioSampleRate {
840
+
841
+ /** {en}
842
+ * @platform android
843
+ * @brief 8K.
844
+ */
845
+ VeLiveAudioSampleRate8000 = 8000,
846
+
847
+ /** {en}
848
+ * @platform android
849
+ * @brief 16K.
850
+ */
851
+ VeLiveAudioSampleRate16000 = 16000,
852
+
853
+ /** {en}
854
+ * @platform android
855
+ * @brief 32K.
856
+ */
857
+ VeLiveAudioSampleRate32000 = 32000,
858
+
859
+ /** {en}
860
+ * @brief 44.1K.
861
+ */
862
+ VeLiveAudioSampleRate44100 = 44100,
863
+
864
+ /** {en}
865
+ * @platform android
866
+ * @brief 48K.
867
+ */
868
+ VeLiveAudioSampleRate48000 = 48000
869
+ }
870
+ export declare class t_VeLiveAudioSampleRate {
871
+ static ts_to_android(value: VeLiveAudioSampleRate): $p_a.VeLiveAudioSampleRate;
872
+ static android_to_ts(value: $p_a.VeLiveAudioSampleRate): VeLiveAudioSampleRate;
873
+ static ts_to_ios(value: VeLiveAudioSampleRate): $p_i.VeLiveAudioSampleRate;
874
+ static ios_to_ts(value: $p_i.VeLiveAudioSampleRate): VeLiveAudioSampleRate;
875
+ }
876
+
877
+ /** {en}
878
+ * @detail keytype
879
+ * @brief The volume level.
880
+ */
881
+ export declare enum VeLiveAudioPowerLevel {
882
+
883
+ /** {en}
884
+ * @brief Muted. The volume is 1 dB or less.
885
+ */
886
+ VeLiveAudioPowerLevelSilent = 0,
887
+
888
+ /** {en}
889
+ * @brief Quiet. The volume is below 15 dB.
890
+ */
891
+ VeLiveAudioPowerLevelQuiet = 1,
892
+
893
+ /** {en}
894
+ * @brief Soft, close to whisper. The volume is between 16 dB and 30 dB.
895
+ */
896
+ VeLiveAudioPowerLevelLight = 2,
897
+
898
+ /** {en}
899
+ * @brief Normal, similar to the volume in a daily conversation. The volume is between 30 dB and 60 dB.
900
+ */
901
+ VeLiveAudioPowerLevelNormal = 3,
902
+
903
+ /** {en}
904
+ * @brief Loud, similar to the volume of the noise at cafes. The volume is between 61 dB and 85 dB.
905
+ */
906
+ VeLiveAudioPowerLevelLoud = 4,
907
+
908
+ /** {en}
909
+ * @brief Noisy, similar to the volume of the noise on a busy street or at a concert. The volume is higher than 85 dB.
910
+ */
911
+ VeLiveAudioPowerLevelNoise = 6
912
+ }
913
+ export declare class t_VeLiveAudioPowerLevel {
914
+ static ts_to_android(value: VeLiveAudioPowerLevel): $p_a.VeLiveAudioPowerLevel;
915
+ static android_to_ts(value: $p_a.VeLiveAudioPowerLevel): VeLiveAudioPowerLevel;
916
+ static ts_to_ios(value: VeLiveAudioPowerLevel): $p_i.VeLiveAudioPowerLevel;
917
+ static ios_to_ts(value: $p_i.VeLiveAudioPowerLevel): VeLiveAudioPowerLevel;
918
+ }
919
+
920
+ /** {en}
921
+ * @detail keytype
922
+ * @brief The video capture configurations.
923
+ */
924
+ export declare class VeLiveVideoCaptureConfiguration {
925
+ protected _instance: any;
926
+ protected __init(...args: any[]): void;
927
+ protected __new_instance(...args: any[]): $p_a.VeLiveVideoCaptureConfiguration | $p_i.VeLiveVideoCaptureConfiguration;
928
+
929
+ /** {en}
930
+ * @hidden
931
+ * @platform ios
932
+ * @brief The pixel format. The default format is kCVPixelFormatType_420YpCbCr8BiPlanarFullRange.
933
+ * @note The following formats are supported:
934
+ * - kCVPixelFormatType_32BGRA
935
+ * - kCVPixelFormatType_420YpCbCr8BiPlanarFullRange
936
+ * - kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange
937
+ * - kCVPixelFormatType_420YpCbCr10BiPlanarVideoRange
938
+ */
939
+ get ios_pixelFormat(): $p_i.OSType;
940
+ /**
941
+ * @hidden
942
+ */
943
+ set ios_pixelFormat(value: $p_i.OSType);
944
+
945
+ /** {en}
946
+ * @detail api
947
+ * @brief Gets the width of the captured video.
948
+ * @return <br>
949
+ * The width of the captured video.
950
+ */
951
+ getWidth(): number;
952
+
953
+ /** {en}
954
+ * @detail api
955
+ * @brief Sets the width of the captured video.
956
+ * @return <br>The video capture configurations. See VeLiveVideoCaptureConfiguration for details.
957
+ * @param width The width of the captured video. The default value is `720`.
958
+ */
959
+ setWidth(width: number): VeLiveVideoCaptureConfiguration;
960
+
961
+ /** {en}
962
+ * @detail api
963
+ * @brief Gets the height of the captured video.
964
+ * @return <br>
965
+ * The height of the captured video.
966
+ */
967
+ getHeight(): number;
968
+
969
+ /** {en}
970
+ * @detail api
971
+ * @brief Sets the height of the captured video.
972
+ * @return <br>The video capture configurations. See VeLiveVideoCaptureConfiguration for details.
973
+ * @param height The height of the captured video. The default value is `1280`.
974
+ */
975
+ setHeight(height: number): VeLiveVideoCaptureConfiguration;
976
+
977
+ /** {en}
978
+ * @detail api
979
+ * @brief Gets the captured frame rate.
980
+ * @return <br>
981
+ * The captured frame rate.
982
+ */
983
+ getFps(): number;
984
+
985
+ /** {en}
986
+ * @detail api
987
+ * @brief Sets the captured frame rate.
988
+ * @return <br>The video capture configurations. See VeLiveVideoCaptureConfiguration for details.
989
+ * @param fps The captured frame rate. The default value is `15`.
990
+ */
991
+ setFps(fps: number): VeLiveVideoCaptureConfiguration;
992
+ }
993
+
994
+ /** {en}
995
+ * @detail keytype
996
+ * @brief The data format of the video frame.
997
+ */
998
+ export declare enum VeLivePixelFormat {
999
+
1000
+ /** {en}
1001
+ * @brief Unknown format.
1002
+ */
1003
+ VeLivePixelFormatUnknown = 0,
1004
+
1005
+ /** {en}
1006
+ * @brief I420.
1007
+ */
1008
+ VeLivePixelFormatI420 = 1,
1009
+
1010
+ /** {en}
1011
+ * @brief NV12.
1012
+ */
1013
+ VeLivePixelFormatNV12 = 2,
1014
+
1015
+ /** {en}
1016
+ * @brief NV21.
1017
+ */
1018
+ VeLivePixelFormatNV21 = 3,
1019
+
1020
+ /** {en}
1021
+ * @brief 2D texture.
1022
+ */
1023
+ VeLivePixelFormat2DTexture = 4,
1024
+
1025
+ /** {en}
1026
+ * @platform android
1027
+ * @brief OES texture.
1028
+ */
1029
+ VeLivePixelFormatOesTexture = 5,
1030
+
1031
+ /** {en}
1032
+ * @platform ios
1033
+ * @brief RAGBA.
1034
+ */
1035
+ VeLivePixelFormatBGRA32 = 7
1036
+ }
1037
+ export declare class t_VeLivePixelFormat {
1038
+ static ts_to_android(value: VeLivePixelFormat): $p_a.VeLivePixelFormat;
1039
+ static android_to_ts(value: $p_a.VeLivePixelFormat): VeLivePixelFormat;
1040
+ static ts_to_ios(value: VeLivePixelFormat): $p_i.VeLivePixelFormat;
1041
+ static ios_to_ts(value: $p_i.VeLivePixelFormat): VeLivePixelFormat;
1042
+ }
1043
+
1044
+ /** {en}
1045
+ * @detail keytype
1046
+ * @brief The connection state between the live pusher and the server.
1047
+ */
1048
+ export declare enum VeLivePusherStatus {
1049
+
1050
+ /** {en}
1051
+ * @brief The initial state.
1052
+ */
1053
+ VeLivePushStatusNone = 0,
1054
+
1055
+ /** {en}
1056
+ * @brief Connecting to the server.
1057
+ */
1058
+ VeLivePushStatusConnecting = 1,
1059
+
1060
+ /** {en}
1061
+ * @brief The connection with the server is established.
1062
+ */
1063
+ VeLivePushStatusConnectSuccess = 2,
1064
+
1065
+ /** {en}
1066
+ * @brief Reconnecting to the server.
1067
+ */
1068
+ VeLivePushStatusReconnecting = 3,
1069
+
1070
+ /** {en}
1071
+ * @brief Stops connecting to the server.
1072
+ */
1073
+ VeLivePushStatusConnectStop = 4,
1074
+
1075
+ /** {en}
1076
+ * @brief Fails to connect to the server.
1077
+ */
1078
+ VeLivePushStatusConnectError = 5,
1079
+
1080
+ /** {en}
1081
+ * @brief The connection with the server is lost.
1082
+ */
1083
+ VeLivePushStatusDisconnected = 6
1084
+ }
1085
+ export declare class t_VeLivePusherStatus {
1086
+ static ts_to_android(value: VeLivePusherStatus): $p_a.VeLivePusherStatus;
1087
+ static android_to_ts(value: $p_a.VeLivePusherStatus): VeLivePusherStatus;
1088
+ static ts_to_ios(value: VeLivePusherStatus): $p_i.VeLivePushStatus;
1089
+ static ios_to_ts(value: $p_i.VeLivePushStatus): VeLivePusherStatus;
1090
+ }
1091
+
1092
+ /** {en}
1093
+ * @detail keytype
1094
+ * @brief The video resolution with a set of predefined configurations.
1095
+ */
1096
+ export declare enum VeLiveVideoResolution {
1097
+
1098
+ /** {en}
1099
+ * @brief 360P.
1100
+ * - Resolution in landscape mode: 640x360
1101
+ * - Resolution in portrait mode: 360x640
1102
+ * - Frame rate: 15 fps
1103
+ * - Target bitrate: 500 Kbps
1104
+ * - Minimum bitrate: 250 Kbps
1105
+ * - Maximum bitrate: 800 Kbps
1106
+ */
1107
+ VeLiveVideoResolution360P = 0,
1108
+
1109
+ /** {en}
1110
+ * @brief 480P.
1111
+ * - Resolution in landscape mode: 864x480
1112
+ * - Resolution in portrait mode: 480x864
1113
+ * - Frame rate: 15 fps
1114
+ * - Target bitrate: 800 Kbps
1115
+ * - Minimum bitrate: 320 Kbps
1116
+ * - Maximum bitrate: 1266 Kbps
1117
+ */
1118
+ VeLiveVideoResolution480P = 1,
1119
+
1120
+ /** {en}
1121
+ * @brief 540P.
1122
+ * - Resolution in landscape mode: 960x540
1123
+ * - Resolution in portrait mode: 540x960
1124
+ * - Frame rate: 15 fps
1125
+ * - Target bitrate: 1000 Kbps
1126
+ * - Minimum bitrate: 500 Kbps
1127
+ * - Maximum bitrate: 1520 Kbps
1128
+ */
1129
+ VeLiveVideoResolution540P = 2,
1130
+
1131
+ /** {en}
1132
+ * @brief 720P.
1133
+ * - Resolution in landscape mode: 1280x720
1134
+ * - Resolution in portrait mode: 720x1280
1135
+ * - Frame rate: 15 fps
1136
+ * - Target bitrate: 1200 Kbps
1137
+ * - Minimum bitrate: 800 Kbps
1138
+ * - Maximum bitrate: 1900 Kbps
1139
+ */
1140
+ VeLiveVideoResolution720P = 3,
1141
+
1142
+ /** {en}
1143
+ * @brief 1080P.
1144
+ * - Resolution in landscape mode: 1920x1080
1145
+ * - Resolution in portrait mode: 1080x1920
1146
+ * - Frame rate: 20 fps
1147
+ * - Target bitrate: 2500 Kbps
1148
+ * - Minimum bitrate: 1000 Kbps
1149
+ * - Maximum bitrate: 3800 Kbps
1150
+ */
1151
+ VeLiveVideoResolution1080P = 4,
1152
+
1153
+ /** {en}
1154
+ * @brief The resolution of the streamed screen. The predefined configurations are as follows:
1155
+ * - Frame rate: 15 fps
1156
+ * - Target bitrate: 2500 kbps
1157
+ * - Minimum bitrate: 1000 kbps
1158
+ * - Maximum bitrate: 3800 kbps
1159
+ */
1160
+ VeLiveVideoResolutionScreen = 10
1161
+ }
1162
+ export declare class t_VeLiveVideoResolution {
1163
+ static ts_to_android(value: VeLiveVideoResolution): $p_a.VeLiveVideoResolution;
1164
+ static android_to_ts(value: $p_a.VeLiveVideoResolution): VeLiveVideoResolution;
1165
+ static ts_to_ios(value: VeLiveVideoResolution): $p_i.VeLiveVideoResolution;
1166
+ static ios_to_ts(value: $p_i.VeLiveVideoResolution): VeLiveVideoResolution;
1167
+ }
1168
+
1169
+ /** {en}
1170
+ * @detail keytype
1171
+ * @brief The network quality.
1172
+ */
1173
+ export declare enum VeLiveNetworkQuality {
1174
+
1175
+ /** {en}
1176
+ * @brief Network status not found.
1177
+ */
1178
+ VeLiveNetworkQualityUnknown = 0,
1179
+
1180
+ /** {en}
1181
+ * @brief Bad network condition.
1182
+ */
1183
+ VeLiveNetworkQualityBad = 1,
1184
+
1185
+ /** {en}
1186
+ * @brief Poor network condition.
1187
+ */
1188
+ VeLiveNetworkQualityPoor = 2,
1189
+
1190
+ /** {en}
1191
+ * @brief Good network condition.
1192
+ */
1193
+ VeLiveNetworkQualityGood = 3
1194
+ }
1195
+ export declare class t_VeLiveNetworkQuality {
1196
+ static ts_to_android(value: VeLiveNetworkQuality): $p_a.VeLiveNetworkQuality;
1197
+ static android_to_ts(value: $p_a.VeLiveNetworkQuality): VeLiveNetworkQuality;
1198
+ static ts_to_ios(value: VeLiveNetworkQuality): $p_i.VeLiveNetworkQuality;
1199
+ static ios_to_ts(value: $p_i.VeLiveNetworkQuality): VeLiveNetworkQuality;
1200
+ }
1201
+
1202
+ /** {en}
1203
+ * @detail keytype
1204
+ * @brief The output log level.
1205
+ */
1206
+ export declare enum VeLivePusherLogLevel {
1207
+
1208
+ /** {en}
1209
+ * @platform android
1210
+ * @brief Output VERBOSE, DEBUG, INFO, WARNING and ERROR.
1211
+ */
1212
+ VeLiveLogLevelVerbose = "AVLog.VERBOSE",
1213
+
1214
+ /** {en}
1215
+ * @platform android
1216
+ * @brief Output DEBUG, INFO, WARNING and ERROR.
1217
+ */
1218
+ VeLiveLogLevelDebug = "AVLog.DEBUG",
1219
+
1220
+ /** {en}
1221
+ * @platform android
1222
+ * @brief Output INFO, WARNING and ERROR.
1223
+ */
1224
+ VeLiveLogLevelInfo = "AVLog.INFO",
1225
+
1226
+ /** {en}
1227
+ * @platform android
1228
+ * @brief Output WARNING and ERROR.
1229
+ */
1230
+ VeLiveLogLevelWarn = "AVLog.WARN",
1231
+
1232
+ /** {en}
1233
+ * @platform android
1234
+ * @brief Output ERROR.
1235
+ */
1236
+ VeLiveLogLevelError = "AVLog.ERROR",
1237
+
1238
+ /** {en}
1239
+ * @platform android
1240
+ * @brief Disable logging.
1241
+ */
1242
+ VeLiveLogLevelNone = "AVLog.NONE",
1243
+
1244
+ /** {en}
1245
+ * @platform ios
1246
+ * @brief Output VERBOSE, DEBUG, INFO, WARNING and ERROR.
1247
+ */
1248
+ VeLivePusherLogLevelVerbose = 0,
1249
+
1250
+ /** {en}
1251
+ * @platform ios
1252
+ * @brief Output DEBUG, INFO, WARNING and ERROR.
1253
+ */
1254
+ VeLivePusherLogLevelDebug = 1,
1255
+
1256
+ /** {en}
1257
+ * @platform ios
1258
+ * @brief Output INFO, WARNING and ERROR.
1259
+ */
1260
+ VeLivePusherLogLevelInfo = 2,
1261
+
1262
+ /** {en}
1263
+ * @platform ios
1264
+ * @brief Output WARNING and ERROR.
1265
+ */
1266
+ VeLivePusherLogLevelWarn = 3,
1267
+
1268
+ /** {en}
1269
+ * @platform ios
1270
+ * @brief Output ERROR.
1271
+ */
1272
+ VeLivePusherLogLevelError = 4,
1273
+
1274
+ /** {en}
1275
+ * @platform ios
1276
+ * @brief Disable logging.
1277
+ */
1278
+ VeLivePusherLogLevelNone = 5
1279
+ }
1280
+ export declare class t_VeLivePusherLogLevel {
1281
+ static ts_to_android(value: VeLivePusherLogLevel): $p_a.VeLivePusherLogLevel;
1282
+ static android_to_ts(value: $p_a.VeLivePusherLogLevel): VeLivePusherLogLevel;
1283
+ static ts_to_ios(value: VeLivePusherLogLevel): $p_i.VeLivePusherLogLevel;
1284
+ static ios_to_ts(value: $p_i.VeLivePusherLogLevel): VeLivePusherLogLevel;
1285
+ }
1286
+
1287
+ /** {en}
1288
+ * @platform android
1289
+ * @detail keytype
1290
+ * @brief The audio bit depth.
1291
+ */
1292
+ export declare enum VeLiveAudioBitDepth {
1293
+
1294
+ /** {en}
1295
+ * @platform android
1296
+ * @brief 16bit.
1297
+ */
1298
+ VeLiveAudioBitDepth16 = 16
1299
+ }
1300
+ export declare class t_VeLiveAudioBitDepth {
1301
+ static ts_to_android(value: VeLiveAudioBitDepth): $p_a.VeLiveAudioBitDepth;
1302
+ static android_to_ts(value: $p_a.VeLiveAudioBitDepth): VeLiveAudioBitDepth;
1303
+ static ts_to_ios(value: VeLiveAudioBitDepth): never;
1304
+ static ios_to_ts(value: unknown): never;
1305
+ }
1306
+
1307
+ /** {en}
1308
+ * @detail keytype
1309
+ * @brief Audio mixing configurations.
1310
+ */
1311
+ export declare class VeLiveMixAudioLayout {
1312
+ protected _instance: any;
1313
+ protected __init(...args: any[]): void;
1314
+ protected __new_instance(...args: any[]): $p_a.VeLiveMixAudioLayout | $p_i.VeLiveMixAudioLayout;
1315
+
1316
+ /** {en}
1317
+ * @brief The unique identifier for an audio stream.
1318
+ */
1319
+ get streamId(): number;
1320
+ set streamId(value: number);
1321
+
1322
+ /** {en}
1323
+ * @detail api
1324
+ * @brief The volume of the mixed audio stream. The value range is [0.0,4.0]. If you set {@link #VeLiveAudioMixType VeLiveAudioMixType} to `VeLiveAudioMixPlayAndPush`, this variable takes effect on both the host and the audience sides.
1325
+ */
1326
+ get volume(): number;
1327
+ set volume(value: number);
1328
+
1329
+ /** {en}
1330
+ * @platform android
1331
+ * @detail api
1332
+ * @brief Updates audio mixing configurations.
1333
+ * @param other New audio mixing configurations. See VeLiveMixAudioLayout for details.
1334
+ */
1335
+ android_update(other: VeLiveMixAudioLayout): void;
1336
+ }
1337
+
1338
+ /** {en}
1339
+ * @detail keytype
1340
+ * @brief The video orientation.
1341
+ */
1342
+ export declare enum VeLiveOrientation {
1343
+
1344
+ /** {en}
1345
+ * @brief The landscape mode.
1346
+ */
1347
+ VeLiveOrientationLandscape = 0,
1348
+
1349
+ /** {en}
1350
+ * @brief The portrait mode.
1351
+ */
1352
+ VeLiveOrientationPortrait = 1,
1353
+ /**
1354
+ * @platform ios
1355
+ */
1356
+ UIInterfaceOrientationUnknown = -1,
1357
+ /**
1358
+ * @platform ios
1359
+ */
1360
+ UIInterfaceOrientationPortraitUpsideDown = 2,
1361
+ /**
1362
+ * @platform ios
1363
+ */
1364
+ UIInterfaceOrientationLandscapeRight = 4
1365
+ }
1366
+ export declare class t_VeLiveOrientation {
1367
+ static ts_to_android(value: VeLiveOrientation): $p_a.VeLiveOrientation;
1368
+ static android_to_ts(value: $p_a.VeLiveOrientation): VeLiveOrientation;
1369
+ static ts_to_ios(value: VeLiveOrientation): $p_i.UIInterfaceOrientation;
1370
+ static ios_to_ts(value: $p_i.UIInterfaceOrientation): VeLiveOrientation;
1371
+ }
1372
+
1373
+ /** {en}
1374
+ * @detail keytype
1375
+ * @brief The mirror type.
1376
+ */
1377
+ export declare enum VeLiveVideoMirrorType {
1378
+
1379
+ /** {en}
1380
+ * @brief Mirror the captured video. When turned on, both the preview and the pushed video are mirrored.
1381
+ */
1382
+ VeLiveVideoMirrorCapture = 0,
1383
+
1384
+ /** {en}
1385
+ * @brief Mirror the preview. When turned on, only the preview is mirrored.
1386
+ */
1387
+ VeLiveVideoMirrorPreview = 1,
1388
+
1389
+ /** {en}
1390
+ * @brief Mirror the video before encoding. When turned on, only the pushed video is mirrored.
1391
+ */
1392
+ VeLiveVideoMirrorPushStream = 2
1393
+ }
1394
+ export declare class t_VeLiveVideoMirrorType {
1395
+ static ts_to_android(value: VeLiveVideoMirrorType): $p_a.VeLiveVideoMirrorType;
1396
+ static android_to_ts(value: $p_a.VeLiveVideoMirrorType): VeLiveVideoMirrorType;
1397
+ static ts_to_ios(value: VeLiveVideoMirrorType): $p_i.VeLiveVideoMirrorType;
1398
+ static ios_to_ts(value: $p_i.VeLiveVideoMirrorType): VeLiveVideoMirrorType;
1399
+ }
1400
+
1401
+ /** {en}
1402
+ * @hidden
1403
+ * @detail keytype
1404
+ * @brief The log settings.
1405
+ */
1406
+ export declare class VeLivePusherLogConfig {
1407
+ protected _instance: any;
1408
+ protected __init(...args: any[]): void;
1409
+ protected __new_instance(...args: any[]): $p_a.VeLivePusherLogConfig | $p_i.VeLivePusherLogConfig;
1410
+
1411
+ /** {en}
1412
+ * @brief The log file path.
1413
+ */
1414
+ get logPath(): string;
1415
+ set logPath(value: string);
1416
+
1417
+ /** {en}
1418
+ * @brief The maximum size of the log, in MB. The default value is `100`.
1419
+ */
1420
+ get maxLogSizeM(): number;
1421
+ set maxLogSizeM(value: number);
1422
+
1423
+ /** {en}
1424
+ * @brief The size of a single log file, in MB. The default value is `2`.
1425
+ */
1426
+ get singleLogSizeM(): number;
1427
+ set singleLogSizeM(value: number);
1428
+
1429
+ /** {en}
1430
+ * @brief The expiration time of the log file, in seconds. The default value is `604,800`, or seven days.
1431
+ */
1432
+ get logExpireTimeS(): number;
1433
+ set logExpireTimeS(value: number);
1434
+
1435
+ /** {en}
1436
+ * @brief Whether to enable thread polling. The default value is `1`. <br>
1437
+ * - `0`: Disable
1438
+ * - `1`:Enable
1439
+ */
1440
+ get enableThreadLoop(): number;
1441
+ set enableThreadLoop(value: number);
1442
+
1443
+ /** {en}
1444
+ * @platform android
1445
+ * @brief Whether to output logs to the console. The default is `false`.
1446
+ */
1447
+ get android_enableStdout(): $p_a.int;
1448
+ set android_enableStdout(value: $p_a.int);
1449
+
1450
+ /** {en}
1451
+ * @brief Whether to enable saving logs to log files. The default value is `true`.
1452
+ */
1453
+ get enableLogFile(): number;
1454
+ set enableLogFile(value: number);
1455
+
1456
+ /** {en}
1457
+ * @brief The log level. The default value is `kVolcLogLevelWarning`.
1458
+ */
1459
+ get logLevel(): number;
1460
+ set logLevel(value: number);
1461
+
1462
+ /** {en}
1463
+ * @brief The polling interval, in milliseconds. The default value is `120,000`, or 2 minutes.
1464
+ */
1465
+ get intervalMs(): number;
1466
+ set intervalMs(value: number);
1467
+
1468
+ /** {en}
1469
+ * @brief The upload URL of the log file.
1470
+ */
1471
+ get queryUrl(): string;
1472
+ set queryUrl(value: string);
1473
+
1474
+ /** {en}
1475
+ * @platform android
1476
+ * @brief The unique device ID.
1477
+ */
1478
+ get android_device_id(): string;
1479
+ set android_device_id(value: string);
1480
+
1481
+ /** {en}
1482
+ * @platform android
1483
+ * @brief The timeout for an HTTP request. Value range: > 0.
1484
+ */
1485
+ get android_httpTimeoutMS(): $p_a.int;
1486
+ set android_httpTimeoutMS(value: $p_a.int);
1487
+
1488
+ /** {en}
1489
+ * @platform android
1490
+ * @brief The timeout for an HTTP request to upload a file. Value range: > 0.
1491
+ */
1492
+ get android_httpUploadFileTimeoutMS(): $p_a.int;
1493
+ set android_httpUploadFileTimeoutMS(value: $p_a.int);
1494
+ }
1495
+
1496
+ /** {en}
1497
+ * @detail keytype
1498
+ * @brief The local recording configurations.
1499
+ */
1500
+ export declare class VeLiveFileRecorderConfiguration {
1501
+ protected _instance: any;
1502
+ protected __init(...args: any[]): void;
1503
+ protected __new_instance(...args: any[]): $p_a.VeLiveFileRecorderConfiguration | $p_i.VeLiveFileRecorderConfiguration;
1504
+
1505
+ /** {en}
1506
+ * @detail api
1507
+ * @brief Gets the width of the recorded video.
1508
+ * @return <br>
1509
+ * The width of the recorded video.
1510
+ */
1511
+ getWidth(): number;
1512
+
1513
+ /** {en}
1514
+ * @detail api
1515
+ * @brief Sets the width of the recorded video.
1516
+ * @return <br>The local recording configurations. See VeLiveFileRecorderConfiguration for details.
1517
+ * @param width The width of the recorded video. The default value is `360`.
1518
+ */
1519
+ setWidth(width: number): VeLiveFileRecorderConfiguration;
1520
+
1521
+ /** {en}
1522
+ * @detail api
1523
+ * @brief Gets the height of the recorded video.
1524
+ * @return <br>
1525
+ * The height of the recorded video.
1526
+ */
1527
+ getHeight(): number;
1528
+
1529
+ /** {en}
1530
+ * @detail api
1531
+ * @brief Sets the height of the recorded video.
1532
+ * @return <br>The local recording configurations. See VeLiveFileRecorderConfiguration for details.
1533
+ * @param height The height of the recorded video, the default value is `640`.
1534
+ */
1535
+ setHeight(height: number): VeLiveFileRecorderConfiguration;
1536
+
1537
+ /** {en}
1538
+ * @detail api
1539
+ * @brief Gets the frame rate of the recorded video.
1540
+ * @return <br>
1541
+ * The frame rate of the recorded video.
1542
+ */
1543
+ getFps(): number;
1544
+
1545
+ /** {en}
1546
+ * @detail api
1547
+ * @brief Sets the frame rate of the recorded video.
1548
+ * @return <br>The local recording configurations. See VeLiveFileRecorderConfiguration for details.
1549
+ * @param fps The frame rate of the recorded video. The default value is `15`.
1550
+ */
1551
+ setFps(fps: number): VeLiveFileRecorderConfiguration;
1552
+
1553
+ /** {en}
1554
+ * @detail api
1555
+ * @brief Gets the bitrate of the recorded video.
1556
+ * @return <br>
1557
+ * The bitrate of the recorded video.
1558
+ */
1559
+ getBitrate(): number;
1560
+
1561
+ /** {en}
1562
+ * @detail api
1563
+ * @brief Sets the bitrate of the recorded video.
1564
+ * @return <br>The local recording configurations. See VeLiveFileRecorderConfiguration for details.
1565
+ * @param bitrate The bitrate of the recorded video, in Kbps. The default value is `2000`.
1566
+ */
1567
+ setBitrate(bitrate: number): VeLiveFileRecorderConfiguration;
1568
+ }
1569
+
1570
+ /** {en}
1571
+ * @detail keytype
1572
+ * @brief Video mixing configurations.
1573
+ */
1574
+ export declare class VeLiveMixVideoLayout {
1575
+ protected _instance: any;
1576
+ protected __init(...args: any[]): void;
1577
+ protected __new_instance(...args: any[]): $p_a.VeLiveMixVideoLayout | $p_i.VeLiveMixVideoLayout;
1578
+
1579
+ /** {en}
1580
+ * @brief The unique identifier for a video stream.
1581
+ */
1582
+ get streamId(): number;
1583
+ set streamId(value: number);
1584
+
1585
+ /** {en}
1586
+ * @brief The horizontal offset, which represents the ratio of the distance between the left edge of the video and the left edge of the screen to the width of the screen. The value range is [0.0,1.0], where `0.0` indicates the left edge and `1.0` indicates the right edge.
1587
+ */
1588
+ get x(): number;
1589
+ set x(value: number);
1590
+
1591
+ /** {en}
1592
+ * @brief The vertical offset, which represents the ratio of the distance between the top edge of the video and the top edge of the screen to the height of the screen. The value range is [0.0,1.0], where `0.0` indicates the top edge and `1.0` indicates the bottom edge.
1593
+ */
1594
+ get y(): number;
1595
+ set y(value: number);
1596
+
1597
+ /** {en}
1598
+ * @brief The ratio of the video width to the screen width. The value range is [0.0,1.0], where `1.0` indicates that the video occupies the entire screen width.
1599
+ */
1600
+ get width(): number;
1601
+ set width(value: number);
1602
+
1603
+ /** {en}
1604
+ * @brief The ratio of the video height to the screen height. The value range is [0.0,1.0], where `1.0` indicates that the video occupies the entire screen height.
1605
+ */
1606
+ get height(): number;
1607
+ set height(value: number);
1608
+
1609
+ /** {en}
1610
+ * @brief The video transparency. The value range is [0.0, 1.0], where `0.0` indicates full transparency and `1.0` indicates full opacity.
1611
+ */
1612
+ get alpha(): number;
1613
+ set alpha(value: number);
1614
+
1615
+ /** {en}
1616
+ * @brief The level of video within the final mixed video. The value range is [0,100], where `0` represents the bottom layer. The higher the value, the higher the level of the video in the final output.
1617
+ */
1618
+ get zOrder(): number;
1619
+ set zOrder(value: number);
1620
+
1621
+ /** {en}
1622
+ * @brief The render mode of the video. See VeLivePusherRenderMode {@link #VeLivePusherRenderMode} for details.
1623
+ */
1624
+ get renderMode(): VeLivePusherRenderMode;
1625
+ set renderMode(value: VeLivePusherRenderMode);
1626
+
1627
+ /** {en}
1628
+ * @platform android
1629
+ * @detail api
1630
+ * @brief Updates video mixing configurations.
1631
+ * @param other New video mixing configurations. See VeLiveMixVideoLayout {@link #VeLiveMixVideoLayout} for details.
1632
+ */
1633
+ android_update(other: VeLiveMixVideoLayout): void;
1634
+ }
1635
+
1636
+ /** {en}
1637
+ * @detail keytype
1638
+ * @brief The special effects configurations.
1639
+ */
1640
+ export declare class VeLiveVideoEffectLicenseConfiguration {
1641
+
1642
+ /** {en}
1643
+ * @platform android
1644
+ * @detail api
1645
+ * @brief Initializes the license configurations in local authentication mode.
1646
+ * @return <br>A VeLiveVideoEffectLicenseConfiguration object that uses the specified local path for license authentication.
1647
+ * @param path The local cache path for the video effects license. You can get the path through the getPath {@link #getPath} property.
1648
+ */
1649
+ static android_create_String(path: string): VeLiveVideoEffectLicenseConfiguration;
1650
+
1651
+ /** {en}
1652
+ * @platform android
1653
+ * @detail api
1654
+ * @brief Initializes the license configurations in online authentication mode.
1655
+ * @return <br>A VeLiveVideoEffectLicenseConfiguration object that uses the specified key, secret and address for online license authentication.
1656
+ * @param key The online authentication key for the video effects license. You can get it through the getKey {@link #getKey} property.
1657
+ * @param secret The online authentication secret for the video effects license. You can get it through the getSecret {@link #getSecret} property.
1658
+ * @param url The online authentication address for the video effects license. You can get it through the getUrl {@link #VeLiveVideoEffectLicenseConfiguration#getUrl} property. If you set it to null, the SDK will use the default URL.
1659
+ */
1660
+ static android_create_String$String$String(key: string, secret: string, url: string): VeLiveVideoEffectLicenseConfiguration;
1661
+ protected _instance: any;
1662
+ protected __init(...args: any[]): void;
1663
+ protected __new_instance(...args: any[]): $p_a.VeLiveVideoEffectLicenseConfiguration | $p_i.VeLiveVideoEffectLicenseConfiguration;
1664
+
1665
+ /** {en}
1666
+ * @detail api
1667
+ * @brief Gets the special effects license type.
1668
+ * @return <br>
1669
+ * The special effects license type. See VeLiveVideoEffectLicenseType {@link #VeLiveVideoEffectLicenseType} for details..
1670
+ */
1671
+ getType(): VeLiveVideoEffectLicenseType;
1672
+
1673
+ /** {en}
1674
+ * @detail api
1675
+ * @brief Gets the local path to the video effects license.
1676
+ * @return <br>
1677
+ * The local path to the video effects license, when VeLiveVideoEffectLicenseType {@link #VeLiveVideoEffectLicenseType} is `VeLiveVideoEffectLicenseTypeOffLine`.
1678
+ */
1679
+ getPath(): string;
1680
+
1681
+ /** {en}
1682
+ * @detail api
1683
+ * @brief Gets the online authentication key for the video effects licenses.
1684
+ * @return <br>
1685
+ * The online authentication key for the video effects license, when VeLiveVideoEffectLicenseType {@link #VeLiveVideoEffectLicenseType} is `VeLiveVideoEffectLicenseTypeOnLine`.
1686
+ */
1687
+ getKey(): string;
1688
+
1689
+ /** {en}
1690
+ * @detail api
1691
+ * @brief Gets the online authentication secret for the video effects license.
1692
+ * @return <br>
1693
+ * The online authentication secret for the video effects license, when VeLiveVideoEffectLicenseType {@link #VeLiveVideoEffectLicenseType} is `VeLiveVideoEffectLicenseTypeOnLine`.
1694
+ */
1695
+ getSecret(): string;
1696
+
1697
+ /** {en}
1698
+ * @detail api
1699
+ * @brief Gets the online authentication address for the video effects license.
1700
+ * @return <br>
1701
+ * The online authentication address for the video effects license, when VeLiveVideoEffectLicenseType {@link #VeLiveVideoEffectLicenseType} is `VeLiveVideoEffectLicenseTypeOnLine`.
1702
+ */
1703
+ getUrl(): string;
1704
+
1705
+ /** {en}
1706
+ * @platform ios
1707
+ * @detail api
1708
+ * @brief Initializes the license configurations in local authentication mode.
1709
+ * @param path The local cache path for the video effects license. You can get the path through the path {@link #path} property.
1710
+ * @return <br>
1711
+ * A VeLiveVideoEffectLicenseConfiguration {@link #VeLiveVideoEffectLicenseConfiguration} object that uses the specified local path for license authentication.
1712
+ */
1713
+ ios_initWithPath(path: string): this;
1714
+
1715
+ /** {en}
1716
+ * @platform ios
1717
+ * @detail api
1718
+ * @brief Initializes the license configurations in online authentication mode.
1719
+ * @param key The online authentication key for the video effects license. You can get it through the {@link #key key} property.
1720
+ * @param secret The online authentication secret for the video effects license. You can get it through the {@link #secret secret} property.
1721
+ * @param url The online authentication address for the video effects license. You can get it through the {@link #url url} property. If you set it to nil, the SDK will use the default URL.
1722
+ * @return <br>
1723
+ * A VeLiveVideoEffectLicenseConfiguration {@link #VeLiveVideoEffectLicenseConfiguration} object that uses the specified key, secret and address for online license authentication.
1724
+ */
1725
+ ios_initWithKey(key: string, secret: string, url: string): this;
1726
+ }
1727
+
1728
+ /** {en}
1729
+ * @detail keytype
1730
+ * @brief The source of the audio frame.
1731
+ */
1732
+ export declare enum VeLiveAudioFrameSource {
1733
+
1734
+ /** {en}
1735
+ * @brief The original audio frame captured by the microphone or other audio sources.
1736
+ */
1737
+ VeLiveAudioFrameSourceCapture = "1<<0",
1738
+
1739
+ /** {en}
1740
+ * @brief The audio frame to be encoded after undergoing various processes, such as noise cancellation and echo cancellation.
1741
+ */
1742
+ VeLiveAudioFrameSourcePreEncode = "1<<1"
1743
+ }
1744
+ export declare class t_VeLiveAudioFrameSource {
1745
+ static ts_to_android(value: VeLiveAudioFrameSource): $p_a.VeLiveAudioFrameSource;
1746
+ static android_to_ts(value: $p_a.VeLiveAudioFrameSource): VeLiveAudioFrameSource;
1747
+ static ts_to_ios(value: VeLiveAudioFrameSource): $p_i.VeLiveAudioFrameSource;
1748
+ static ios_to_ts(value: $p_i.VeLiveAudioFrameSource): VeLiveAudioFrameSource;
1749
+ }
1750
+
1751
+ /** {en}
1752
+ * @detail keytype
1753
+ * @brief The audio encoding configurations.
1754
+ */
1755
+ export declare class VeLiveAudioEncoderConfiguration {
1756
+ protected _instance: any;
1757
+ protected __init(...args: any[]): void;
1758
+ protected __new_instance(...args: any[]): $p_a.VeLiveAudioEncoderConfiguration | $p_i.VeLiveAudioEncoderConfiguration;
1759
+
1760
+ /** {en}
1761
+ * @detail api
1762
+ * @brief Gets the audio encoding bitrate.
1763
+ * @return <br>
1764
+ * The audio encoding bitrate.
1765
+ */
1766
+ getBitrate(): number;
1767
+
1768
+ /** {en}
1769
+ * @detail api
1770
+ * @brief Sets the audio encoding bitrate.
1771
+ * @return <br>The audio encoding configurations. See VeLiveAudioEncoderConfiguration for details.
1772
+ * @param bitrate The audio encoding bitrate, in Kbps. The default value is `64`.
1773
+ */
1774
+ setBitrate(bitrate: number): VeLiveAudioEncoderConfiguration;
1775
+
1776
+ /** {en}
1777
+ * @detail api
1778
+ * @brief Gets the encoding sample rate.
1779
+ * @return <br>
1780
+ * The encoding sample rate. See VeLiveAudioSampleRate {@link #VeLiveAudioSampleRate} for details.
1781
+ */
1782
+ getSampleRate(): VeLiveAudioSampleRate;
1783
+
1784
+ /** {en}
1785
+ * @detail api
1786
+ * @brief Sets the encoding sample rate.
1787
+ * @return <br>The audio encoding configurations. See VeLiveAudioEncoderConfiguration for details.
1788
+ * @param sampleRate The encoding sample rate. The default value is `VeLiveAudioSampleRate44100`. See VeLiveAudioSampleRate {@link #VeLiveAudioSampleRate} for details.
1789
+ */
1790
+ setSampleRate(sampleRate: VeLiveAudioSampleRate): VeLiveAudioEncoderConfiguration;
1791
+
1792
+ /** {en}
1793
+ * @detail api
1794
+ * @brief Gets the number of audio channels for streaming.
1795
+ * @return <br>
1796
+ * The number of audio channels for streaming. See VeLiveAudioChannel {@link #VeLiveAudioChannel} for details.
1797
+ */
1798
+ getChannel(): VeLiveAudioChannel;
1799
+
1800
+ /** {en}
1801
+ * @detail api
1802
+ * @brief Sets the number of audio channels for streaming.
1803
+ * @return <br>The audio encoding configurations. See VeLiveAudioEncoderConfiguration for details.
1804
+ * @param channel The number of audio channels for streaming. The default value is `VeLiveAudioChannelStereo`. See VeLiveAudioChannel {@link #VeLiveAudioChannel} for details.
1805
+ */
1806
+ setChannel(channel: VeLiveAudioChannel): VeLiveAudioEncoderConfiguration;
1807
+
1808
+ /** {en}
1809
+ * @detail api
1810
+ * @brief Gets the audio encoding format.
1811
+ * @return <br>
1812
+ * The audio encoding format. See VeLiveAudioProfile {@link #VeLiveAudioProfile} for details.
1813
+ */
1814
+ getProfile(): VeLiveAudioProfile;
1815
+
1816
+ /** {en}
1817
+ * @detail api
1818
+ * @brief Sets the audio encoding format.
1819
+ * @return <br>The audio encoding configurations. See VeLiveAudioEncoderConfiguration for details.
1820
+ * @param profile The audio encoding format. The default value is `VeLiveAudioAACProfileLC`. See VeLiveAudioProfile {@link #VeLiveAudioProfile} for details.
1821
+ */
1822
+ setProfile(profile: VeLiveAudioProfile): VeLiveAudioEncoderConfiguration;
1823
+ }
1824
+
1825
+ /** {en}
1826
+ * @detail keytype
1827
+ * @brief The audio mixing type.
1828
+ */
1829
+ export declare enum VeLiveAudioMixType {
1830
+
1831
+ /** {en}
1832
+ * @brief The audience can hear the mixed audio, but the host cannot.
1833
+ */
1834
+ VeLiveAudioMixPush = 0,
1835
+
1836
+ /** {en}
1837
+ * @brief Both the host and audience can hear the mixed audio.
1838
+ */
1839
+ VeLiveAudioMixPlayAndPush = 1
1840
+ }
1841
+ export declare class t_VeLiveAudioMixType {
1842
+ static ts_to_android(value: VeLiveAudioMixType): $p_a.VeLiveAudioMixType;
1843
+ static android_to_ts(value: $p_a.VeLiveAudioMixType): VeLiveAudioMixType;
1844
+ static ts_to_ios(value: VeLiveAudioMixType): $p_i.VeLiveAudioMixType;
1845
+ static ios_to_ts(value: $p_i.VeLiveAudioMixType): VeLiveAudioMixType;
1846
+ }
1847
+
1848
+ /** {en}
1849
+ * @detail keytype
1850
+ * @brief Audio capture type.
1851
+ */
1852
+ export declare enum VeLiveAudioCaptureType {
1853
+
1854
+ /** {en}
1855
+ * @brief Capture the audio with the default microphone.
1856
+ */
1857
+ VeLiveAudioCaptureMicrophone = 0,
1858
+
1859
+ /** {en}
1860
+ * @brief Capture the audio in voice call mode, which will activate the 3A features of the hardware, including automatic gain control, automatic frequency control, and automatic noise suppression.
1861
+ */
1862
+ VeLiveAudioCaptureVoiceCommunication = 1,
1863
+
1864
+ /** {en}
1865
+ * @platform android
1866
+ * @brief Capture the audio in screen recording.
1867
+ */
1868
+ VeLiveAudioCaptureVoiceRecognition = 2,
1869
+
1870
+ /** {en}
1871
+ * @brief Capture the audio with an external device or source.
1872
+ */
1873
+ VeLiveAudioCaptureExternal = 3,
1874
+
1875
+ /** {en}
1876
+ * @brief Use muted frames as the audio source.
1877
+ */
1878
+ VeLiveAudioCaptureMuteFrame = 4
1879
+ }
1880
+ export declare class t_VeLiveAudioCaptureType {
1881
+ static ts_to_android(value: VeLiveAudioCaptureType): $p_a.VeLiveAudioCaptureType;
1882
+ static android_to_ts(value: $p_a.VeLiveAudioCaptureType): VeLiveAudioCaptureType;
1883
+ static ts_to_ios(value: VeLiveAudioCaptureType): $p_i.VeLiveAudioCaptureType;
1884
+ static ios_to_ts(value: $p_i.VeLiveAudioCaptureType): VeLiveAudioCaptureType;
1885
+ }
1886
+
1887
+ /** {en}
1888
+ * @platform ios
1889
+ * @detail keytype
1890
+ * @brief The type of the encoded video frame.
1891
+ */
1892
+ export declare enum VeLiveVideoEncodeFrameType {
1893
+
1894
+ /** {en}
1895
+ * @platform ios
1896
+ * @brief IDR frame.
1897
+ */
1898
+ VeLiveVideoEncodeFrameTypeIDR = 1,
1899
+
1900
+ /** {en}
1901
+ * @platform ios
1902
+ * @brief SPS/PPS frame.
1903
+ */
1904
+ VeLiveVideoEncodeFrameTypeSPSPPS = 2,
1905
+
1906
+ /** {en}
1907
+ * @platform ios
1908
+ * @brief B frame.
1909
+ */
1910
+ VeLiveVideoEncodeFrameTypeB = 3,
1911
+
1912
+ /** {en}
1913
+ * @platform ios
1914
+ * @brief P frame.
1915
+ */
1916
+ VeLiveVideoEncodeFrameTypeP = 4
1917
+ }
1918
+ export declare class t_VeLiveVideoEncodeFrameType {
1919
+ static ts_to_android(value: VeLiveVideoEncodeFrameType): never;
1920
+ static android_to_ts(value: unknown): never;
1921
+ static ts_to_ios(value: VeLiveVideoEncodeFrameType): $p_i.VeLiveVideoEncodeFrameType;
1922
+ static ios_to_ts(value: $p_i.VeLiveVideoEncodeFrameType): VeLiveVideoEncodeFrameType;
1923
+ }
1924
+ export declare class VeLiveVideoEncodeFrame extends $p_i.VeLiveVideoEncodeFrame {
1925
+ }
1926
+ /**
1927
+ * @platform ios
1928
+ */
1929
+ export declare enum OSType {
1930
+ /**
1931
+ * @platform ios
1932
+ */
1933
+ kCVPixelFormatType_32BGRA = "BGRA",
1934
+ /**
1935
+ * @platform ios
1936
+ */
1937
+ kCVPixelFormatType_420YpCbCr8BiPlanarFullRange = "420f",
1938
+ /**
1939
+ * @platform ios
1940
+ */
1941
+ kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange = "420v",
1942
+ /**
1943
+ * @platform ios
1944
+ */
1945
+ kCVPixelFormatType_420YpCbCr10BiPlanarVideoRange = "x420"
1946
+ }
1947
+ export declare class t_OSType {
1948
+ static ts_to_android(value: OSType): never;
1949
+ static android_to_ts(value: unknown): never;
1950
+ static ts_to_ios(value: OSType): $p_i.OSType;
1951
+ static ios_to_ts(value: $p_i.OSType): OSType;
1952
+ }