@volcengine/react-native-live-push 1.1.3-rc.1 → 1.2.0-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.
Files changed (139) hide show
  1. package/android/build.gradle +2 -2
  2. package/android/src/main/java/com/volcengine/velive/rn/push/ClassHelper.java +9 -0
  3. package/android/src/main/java/com/volcengine/velive/rn/push/NativeVariableManager.java +5 -8
  4. package/android/src/main/java/com/volcengine/velive/rn/push/VeLivePushModule.java +14 -2
  5. package/android/src/main/java/com/volcengine/velive/rn/push/VeLivePushPackage.java +16 -13
  6. package/android/src/main/java/com/volcengine/velive/rn/push/VeLivePushView.java +16 -0
  7. package/android/src/main/java/com/volcengine/velive/rn/push/VeLivePushViewManager.java +7 -2
  8. package/android/src/main/java/com/volcengine/velive/rn/push/mixer/MixerManager.java +410 -0
  9. package/android/src/main/java/com/volcengine/velive/rn/push/mixer/MixerView.java +434 -0
  10. package/android/src/main/java/com/volcengine/velive/rn/push/mixer/MixerViewManager.java +79 -0
  11. package/android/src/main/java/com/volcengine/velive/rn/push/mixer/TextureMgr.java +168 -0
  12. package/android/src/main/java/com/volcengine/velive/rn/push/mixer/YuvHelper.java +165 -0
  13. package/ios/VeLiveMixerHelper.h +46 -0
  14. package/ios/VeLiveMixerHelper.m +620 -0
  15. package/ios/VeLiveMixerView.h +69 -0
  16. package/ios/VeLiveMixerView.m +600 -0
  17. package/ios/VeLiveMixerViewManager.m +92 -0
  18. package/lib/commonjs/index.js +22698 -20359
  19. package/lib/commonjs/typescript/android/index.d.ts +44 -0
  20. package/lib/commonjs/typescript/codegen/android/api.d.ts +1068 -0
  21. package/lib/commonjs/typescript/codegen/android/callback.d.ts +333 -0
  22. package/lib/commonjs/typescript/codegen/android/errorcode.d.ts +92 -0
  23. package/lib/commonjs/typescript/codegen/android/index.d.ts +5 -0
  24. package/lib/commonjs/typescript/codegen/android/keytype.d.ts +1693 -0
  25. package/lib/commonjs/typescript/codegen/android/types.d.ts +33 -0
  26. package/lib/commonjs/typescript/codegen/ios/api.d.ts +1125 -0
  27. package/lib/commonjs/typescript/codegen/ios/callback.d.ts +242 -0
  28. package/lib/commonjs/typescript/codegen/ios/errorcode.d.ts +154 -0
  29. package/lib/commonjs/typescript/codegen/ios/external.d.ts +1 -0
  30. package/lib/commonjs/typescript/codegen/ios/index.d.ts +6 -0
  31. package/lib/commonjs/typescript/codegen/ios/keytype.d.ts +1154 -0
  32. package/lib/commonjs/typescript/codegen/ios/types.d.ts +46 -0
  33. package/lib/commonjs/typescript/codegen/pack/api.d.ts +1470 -0
  34. package/lib/commonjs/typescript/codegen/pack/callback.d.ts +446 -0
  35. package/lib/commonjs/typescript/codegen/pack/errorcode.d.ts +109 -0
  36. package/lib/commonjs/typescript/codegen/pack/index.d.ts +5 -0
  37. package/lib/commonjs/typescript/codegen/pack/keytype.d.ts +2248 -0
  38. package/lib/commonjs/typescript/codegen/pack/types.d.ts +68 -0
  39. package/lib/commonjs/typescript/codegen/type-shim.d.ts +6 -0
  40. package/lib/commonjs/typescript/component.d.ts +15 -0
  41. package/lib/commonjs/typescript/core/api.d.ts +18 -0
  42. package/lib/commonjs/typescript/core/callback.d.ts +2 -0
  43. package/lib/commonjs/typescript/core/env.d.ts +29 -0
  44. package/lib/commonjs/typescript/core/errorcode.d.ts +2 -0
  45. package/lib/commonjs/typescript/core/index.d.ts +6 -0
  46. package/lib/commonjs/typescript/core/keytype.d.ts +18 -0
  47. package/lib/commonjs/typescript/core/mixer.d.ts +26 -0
  48. package/lib/commonjs/typescript/core/pusher.d.ts +13 -0
  49. package/lib/commonjs/typescript/index.d.ts +3 -0
  50. package/lib/commonjs/typescript/ios/extends.d.ts +41 -0
  51. package/lib/commonjs/typescript/platforms/android/extends.d.ts +8 -0
  52. package/lib/commonjs/typescript/platforms/android/helper.d.ts +8 -0
  53. package/lib/commonjs/typescript/platforms/android/mixer.d.ts +8 -0
  54. package/lib/commonjs/typescript/platforms/ios/extends.d.ts +17 -0
  55. package/lib/commonjs/typescript/platforms/ios/helper.d.ts +8 -0
  56. package/lib/commonjs/typescript/platforms/ios/mixer.d.ts +9 -0
  57. package/lib/commonjs/typescript/runtime.d.ts +1 -0
  58. package/lib/commonjs/typescript/view/MixView.d.ts +52 -0
  59. package/lib/commonjs/typescript/view/VeImageView.d.ts +19 -0
  60. package/lib/commonjs/typescript/view/VeTextView.d.ts +7 -0
  61. package/lib/commonjs/typescript/view/VeView.d.ts +7 -0
  62. package/lib/commonjs/typescript/view/VeWebView.d.ts +7 -0
  63. package/lib/commonjs/typescript/view/index.d.ts +5 -0
  64. package/lib/module/index.js +22695 -20360
  65. package/lib/module/typescript/android/index.d.ts +44 -0
  66. package/lib/module/typescript/codegen/android/api.d.ts +1068 -0
  67. package/lib/module/typescript/codegen/android/callback.d.ts +333 -0
  68. package/lib/module/typescript/codegen/android/errorcode.d.ts +92 -0
  69. package/lib/module/typescript/codegen/android/index.d.ts +5 -0
  70. package/lib/module/typescript/codegen/android/keytype.d.ts +1693 -0
  71. package/lib/module/typescript/codegen/android/types.d.ts +33 -0
  72. package/lib/module/typescript/codegen/ios/api.d.ts +1125 -0
  73. package/lib/module/typescript/codegen/ios/callback.d.ts +242 -0
  74. package/lib/module/typescript/codegen/ios/errorcode.d.ts +154 -0
  75. package/lib/module/typescript/codegen/ios/external.d.ts +1 -0
  76. package/lib/module/typescript/codegen/ios/index.d.ts +6 -0
  77. package/lib/module/typescript/codegen/ios/keytype.d.ts +1154 -0
  78. package/lib/module/typescript/codegen/ios/types.d.ts +46 -0
  79. package/lib/module/typescript/codegen/pack/api.d.ts +1470 -0
  80. package/lib/module/typescript/codegen/pack/callback.d.ts +446 -0
  81. package/lib/module/typescript/codegen/pack/errorcode.d.ts +109 -0
  82. package/lib/module/typescript/codegen/pack/index.d.ts +5 -0
  83. package/lib/module/typescript/codegen/pack/keytype.d.ts +2248 -0
  84. package/lib/module/typescript/codegen/pack/types.d.ts +68 -0
  85. package/lib/module/typescript/codegen/type-shim.d.ts +6 -0
  86. package/lib/module/typescript/component.d.ts +15 -0
  87. package/lib/module/typescript/core/api.d.ts +18 -0
  88. package/lib/module/typescript/core/callback.d.ts +2 -0
  89. package/lib/module/typescript/core/env.d.ts +29 -0
  90. package/lib/module/typescript/core/errorcode.d.ts +2 -0
  91. package/lib/module/typescript/core/index.d.ts +6 -0
  92. package/lib/module/typescript/core/keytype.d.ts +18 -0
  93. package/lib/module/typescript/core/mixer.d.ts +26 -0
  94. package/lib/module/typescript/core/pusher.d.ts +13 -0
  95. package/lib/module/typescript/index.d.ts +3 -0
  96. package/lib/module/typescript/ios/extends.d.ts +41 -0
  97. package/lib/module/typescript/platforms/android/extends.d.ts +8 -0
  98. package/lib/module/typescript/platforms/android/helper.d.ts +8 -0
  99. package/lib/module/typescript/platforms/android/mixer.d.ts +8 -0
  100. package/lib/module/typescript/platforms/ios/extends.d.ts +17 -0
  101. package/lib/module/typescript/platforms/ios/helper.d.ts +8 -0
  102. package/lib/module/typescript/platforms/ios/mixer.d.ts +9 -0
  103. package/lib/module/typescript/runtime.d.ts +1 -0
  104. package/lib/module/typescript/view/MixView.d.ts +52 -0
  105. package/lib/module/typescript/view/VeImageView.d.ts +19 -0
  106. package/lib/module/typescript/view/VeTextView.d.ts +7 -0
  107. package/lib/module/typescript/view/VeView.d.ts +7 -0
  108. package/lib/module/typescript/view/VeWebView.d.ts +7 -0
  109. package/lib/module/typescript/view/index.d.ts +5 -0
  110. package/lib/typescript/android/index.d.ts +0 -3
  111. package/lib/typescript/codegen/android/api.d.ts +194 -762
  112. package/lib/typescript/codegen/android/callback.d.ts +85 -48
  113. package/lib/typescript/codegen/android/errorcode.d.ts +30 -0
  114. package/lib/typescript/codegen/android/keytype.d.ts +514 -122
  115. package/lib/typescript/codegen/ios/api.d.ts +380 -351
  116. package/lib/typescript/codegen/ios/callback.d.ts +33 -6
  117. package/lib/typescript/codegen/ios/errorcode.d.ts +52 -2
  118. package/lib/typescript/codegen/ios/keytype.d.ts +313 -35
  119. package/lib/typescript/codegen/pack/api.d.ts +302 -821
  120. package/lib/typescript/codegen/pack/callback.d.ts +54 -49
  121. package/lib/typescript/codegen/pack/errorcode.d.ts +38 -5
  122. package/lib/typescript/codegen/pack/keytype.d.ts +672 -228
  123. package/lib/typescript/core/api.d.ts +18 -2
  124. package/lib/typescript/core/keytype.d.ts +16 -0
  125. package/lib/typescript/core/mixer.d.ts +26 -0
  126. package/lib/typescript/core/pusher.d.ts +0 -3
  127. package/lib/typescript/index.d.ts +1 -0
  128. package/lib/typescript/platforms/android/extends.d.ts +8 -0
  129. package/lib/typescript/platforms/android/mixer.d.ts +8 -0
  130. package/lib/typescript/platforms/ios/mixer.d.ts +9 -0
  131. package/lib/typescript/view/MixView.d.ts +52 -0
  132. package/lib/typescript/view/VeImageView.d.ts +19 -0
  133. package/lib/typescript/view/VeTextView.d.ts +7 -0
  134. package/lib/typescript/view/VeView.d.ts +7 -0
  135. package/lib/typescript/view/VeWebView.d.ts +7 -0
  136. package/lib/typescript/view/index.d.ts +5 -0
  137. package/package.json +1 -1
  138. package/react-native-velive-push.podspec +3 -3
  139. package/android/src/main/java/com/volcengine/velive/rn/push/ScreenCaptureHelper.java +0 -73
@@ -2,99 +2,132 @@ import { int, BOOL, NSDictionary, float, CMTime, GLuint, CVPixelBufferRef, CMSam
2
2
  export declare enum VeLiveVideoEffectLicenseType {
3
3
  /** {zh}
4
4
  * @brief 离线认证视频特效许可证。
5
+ *
5
6
  */
7
+
6
8
  VeLiveVideoEffectLicenseTypeOffLine = 0,
7
9
  /** {zh}
8
10
  * @brief 在线认证视频特效许可证。
11
+ *
9
12
  */
13
+
10
14
  VeLiveVideoEffectLicenseTypeOnLine = 1
11
15
  }
12
16
  export declare enum VeLiveNetworkQuality {
13
17
  /** {zh}
14
18
  * @brief 未查询到网络状态。
19
+ *
15
20
  */
21
+
16
22
  VeLiveNetworkQualityUnknown = -1,
17
23
  /** {zh}
18
24
  * @brief 网络差。
25
+ *
19
26
  */
27
+
20
28
  VeLiveNetworkQualityBad = 0,
21
29
  /** {zh}
22
30
  * @brief 网络一般。
31
+ *
23
32
  */
33
+
24
34
  VeLiveNetworkQualityPoor = 1,
25
35
  /** {zh}
26
36
  * @brief 网络状态佳。
37
+ *
27
38
  */
39
+
28
40
  VeLiveNetworkQualityGood = 2
29
41
  }
30
42
  export declare enum VeLiveAudioChannel {
31
43
  /** {zh}
32
44
  * @brief 单声道,适用于语音通信,节省带宽。
45
+ *
33
46
  */
47
+
34
48
  VeLiveAudioChannelMono = 1,
35
49
  /** {zh}
36
50
  * @brief 立体声,适用于音乐播放,提供更丰富的音频体验。
51
+ *
37
52
  */
53
+
38
54
  VeLiveAudioChannelStereo = 2
39
55
  }
40
56
  export declare enum VeLiveVideoEncodeFrameType {
41
57
  /** {zh}
42
58
  * @brief IDR 帧类型,关键帧,帧序列中的第一帧或者在视频切换点的帧。
59
+ *
43
60
  */
61
+
44
62
  VeLiveVideoEncodeFrameTypeIDR = 1,
45
63
  /** {zh}
46
64
  * @brief SPS/PPS 帧类型,序列参数集 SPS 和图像参数集 PPS 帧,通常与 IDR 帧一起发送。
65
+ *
47
66
  */
67
+
48
68
  VeLiveVideoEncodeFrameTypeSPSPPS = 2,
49
69
  /** {zh}
50
70
  * @brief B 帧类型,双向预测内插帧,根据前后帧来预测当前帧的内容。
71
+ *
51
72
  */
73
+
52
74
  VeLiveVideoEncodeFrameTypeB = 3,
53
75
  /** {zh}
54
76
  * @brief P 帧类型,向前预测帧,只根据前一帧来预测当前帧的内容。
77
+ *
55
78
  */
79
+
56
80
  VeLiveVideoEncodeFrameTypeP = 4
57
81
  }
58
82
  export declare class VeLiveVideoEncoderConfiguration {
59
83
  /** {zh}
60
- * @brief 推流视频分辨率,默认值为 VeLiveVideoResolution720P,详情请参见 VeLiveVideoResolution{@link #VeLiveVideoResolution}
84
+ * @brief 推流视频分辨率,默认值为 VeLiveVideoResolution720P,详情请参见 [VeLiveVideoResolution](#VeLiveVideoResolution)
61
85
  */
86
+
62
87
  resolution: VeLiveVideoResolution;
63
88
  /** {zh}
64
- * @brief 推流视频编码格式,默认值为 VeLiveVideoCodecH264,详情请参见 VeLiveVideoCodec{@link #VeLiveVideoCodec}
89
+ * @brief 推流视频编码格式,默认值为 VeLiveVideoCodecH264,详情请参见 [VeLiveVideoCodec](#VeLiveVideoCodec)
65
90
  */
91
+
66
92
  codec: VeLiveVideoCodec;
67
93
  /** {zh}
68
94
  * @brief 视频目标编码码率,单位为 kbps,默认值由 `resolution` 参数值决定。
69
95
  */
96
+
70
97
  bitrate: int;
71
98
  /** {zh}
72
99
  * @brief 视频最小编码码率,单位为 kbps,默认值由 `resolution` 参数值决定;如果开启自适应码率,推流 SDK 根据网络情况进行编码码率自适应调整的最小码率。
73
100
  */
101
+
74
102
  minBitrate: int;
75
103
  /** {zh}
76
104
  * @brief 视频最大编码码率,单位为 kbps,默认值由 `resolution` 参数值决定;如果开启自适应码率,推流 SDK 根据网络情况进行编码码率自适应调整的最大码率。
77
105
  */
106
+
78
107
  maxBitrate: int;
79
108
  /** {zh}
80
109
  * @brief 视频 GOP 大小,单位为 s,默认值为 2。
81
110
  */
111
+
82
112
  gopSize: int;
83
113
  /** {zh}
84
114
  * @brief 视频编码帧率,单位为 fps,默认值为 15。
85
115
  */
116
+
86
117
  fps: int;
87
118
  /** {zh}
88
119
  * @brief 是否启用 B 帧,默认值为 NO,支持的取值包括:<br>
89
120
  * - YES:开启;
90
121
  * - NO:关闭。
91
122
  */
123
+
92
124
  enableBFrame: BOOL;
93
125
  /** {zh}
94
126
  * @brief 是否开启硬件编码。
95
127
  * - YES:(Default) 开启;
96
128
  * - NO:不开启。
97
129
  */
130
+
98
131
  enableAccelerate: BOOL;
99
132
  /** {zh}
100
133
  * @brief 初始化方法,用于创建一个 VeLiveVideoEncoderConfiguration{@link #VeLiveVideoEncoderConfiguration} 对象,并指定视频的分辨率。
@@ -102,275 +135,370 @@ export declare class VeLiveVideoEncoderConfiguration {
102
135
  * @return <br>
103
136
  * 创建的 VeLiveVideoEncoderConfiguration{@link #VeLiveVideoEncoderConfiguration} 对象。
104
137
  */
138
+
105
139
  initWithResolution(resolution: VeLiveVideoResolution): this;
106
140
  }
107
141
  export declare enum VeLiveVideoFrameSource {
108
142
  /** {zh}
109
143
  * @brief 采集到的原始视频帧。这是从设备的摄像头或其他视频输入源获取的视频帧。
144
+ *
110
145
  */
146
+
111
147
  VeLiveVideoFrameSourceCapture = 1,
112
148
  /** {zh}
113
149
  * @brief 编码前的视频帧。这是通过各种处理(例如滤镜、旋转等)后,准备进行编码的视频帧。
150
+ *
114
151
  */
152
+
115
153
  VeLiveVideoFrameSourcePreEncode = 2
116
154
  }
117
155
  export declare enum VeLiveAudioBufferType {
118
156
  /** {zh}
119
157
  * @brief 未知的音频数据类型。
158
+ *
120
159
  */
160
+
121
161
  VeLiveAudioBufferTypeUnknown = -1,
122
162
  /** {zh}
123
163
  * @brief 音频数据类型为 CMSampleBufferRef。
164
+ *
124
165
  */
166
+
125
167
  VeLiveAudioBufferTypeSampleBuffer = 0,
126
168
  /** {zh}
127
169
  * @brief 音频数据类型为 NSData。
170
+ *
128
171
  */
172
+
129
173
  VeLiveAudioBufferTypeNSData = 1
130
174
  }
131
175
  export declare class VeLivePusherConfiguration {
132
176
  /** {zh}
133
- * @brief 视频采集参数设置,用于调整和设置视频采集相关的参数。详情请参见 VeLiveVideoCaptureConfiguration{@link #VeLiveVideoCaptureConfiguration}
177
+ * @brief 视频采集参数设置,用于调整和设置视频采集相关的参数。详情请参见 [VeLiveVideoCaptureConfiguration](#VeLiveVideoCaptureConfiguration)
134
178
  */
179
+
135
180
  videoCaptureConfig: VeLiveVideoCaptureConfiguration;
136
181
  /** {zh}
137
- * @brief 音频采集参数设置,用于调整和设置音频采集相关的参数。详情请参见 VeLiveAudioCaptureConfiguration{@link #VeLiveAudioCaptureConfiguration}
182
+ * @brief 音频采集参数设置,用于调整和设置音频采集相关的参数。详情请参见 [VeLiveAudioCaptureConfiguration](#VeLiveAudioCaptureConfiguration)
138
183
  */
184
+
139
185
  audioCaptureConfig: VeLiveAudioCaptureConfiguration;
140
186
  /** {zh}
141
187
  * @brief 推流失败后,尝试重连的时间间隔。单位为 s,默认值为 5。
142
188
  */
189
+
143
190
  reconnectIntervalSeconds: int;
144
191
  /** {zh}
145
192
  * @brief 推流失败后,尝试重连的次数。默认值为 3。
146
193
  */
194
+
147
195
  reconnectCount: int;
148
196
  /** {zh}
149
197
  * @brief 设置扩展参数,用于实现某些特殊功能或配置,默认不需要设置。
150
198
  */
199
+
151
200
  extraParameters: NSDictionary;
152
201
  init(): this;
153
202
  }
154
203
  export declare enum VeLiveVideoCaptureType {
155
204
  /** {zh}
156
205
  * @brief 使用前置摄像头进行视频采集。
206
+ *
157
207
  */
208
+
158
209
  VeLiveVideoCaptureFrontCamera = 0,
159
210
  /** {zh}
160
211
  * @brief 使用后置摄像头进行视频采集。
212
+ *
161
213
  */
214
+
162
215
  VeLiveVideoCaptureBackCamera = 1,
163
216
  /** {zh}
164
217
  * @brief 使用设备的双摄进行视频采集。
218
+ *
165
219
  */
220
+
166
221
  VeLiveVideoCaptureDualCamera = 2,
167
222
  /** {zh}
168
223
  * @brief 使用外部设备或源进行视频采集。
224
+ *
169
225
  */
226
+
170
227
  VeLiveVideoCaptureExternal = 4,
171
228
  /** {zh}
172
229
  * @brief 使用指定的静态图片作为视频源。
230
+ *
173
231
  */
232
+
174
233
  VeLiveVideoCaptureCustomImage = 5,
175
234
  /** {zh}
176
235
  * @brief 使用最近采集的一帧图像重复作为视频源。
236
+ *
177
237
  */
238
+
178
239
  VeLiveVideoCaptureLastFrame = 6,
179
240
  /** {zh}
180
241
  * @brief 使用黑色帧作为视频源,一般用于调试或特殊需求。
242
+ *
181
243
  */
244
+
182
245
  VeLiveVideoCaptureDummyFrame = 7
183
246
  }
184
247
  export declare class VeLiveFileRecorderConfiguration {
185
248
  /** {zh}
186
249
  * @brief 录制的视频宽度,单位为 px,默认值为 360。
187
250
  */
251
+
188
252
  width: int;
189
253
  /** {zh}
190
254
  * @brief 录制的视频高度,单位为 px,默认值为 640。
191
255
  */
256
+
192
257
  height: int;
193
258
  /** {zh}
194
259
  * @deprecated
195
260
  * @brief 录制的视频帧率,默认值为 15,取值范围为 [1,15]。
196
261
  */
262
+
197
263
  fps: int;
198
264
  /** {zh}
199
265
  * @brief 录制的视频编码码率,单位为 kbps,默认值为 2000。
200
266
  */
267
+
201
268
  bitrate: int;
202
269
  init(): this;
203
270
  }
204
271
  export declare enum VeLiveVideoBufferType {
205
272
  /** {zh}
206
273
  * @brief 未知视频数据类型,当未指定输入视频数据的格式时,会默认为此类型。
274
+ *
207
275
  */
276
+
208
277
  VeLiveVideoBufferTypeUnKnown = -1,
209
278
  /** {zh}
210
279
  * @brief 视频数据类型为 CVPixelBuffer。
280
+ *
211
281
  */
282
+
212
283
  VeLiveVideoBufferTypePixelBuffer = 0,
213
284
  /** {zh}
214
285
  * @brief 视频数据类型为 CMSampleBufferRef。
286
+ *
215
287
  */
288
+
216
289
  VeLiveVideoBufferTypeSampleBuffer = 1,
217
290
  /** {zh}
218
291
  * @brief 视频数据类型为 NSData。
292
+ *
219
293
  */
294
+
220
295
  VeLiveVideoBufferTypeNSData = 2,
221
296
  /** {zh}
222
297
  * @brief 视频数据类型为 OpenGL 纹理。
298
+ *
223
299
  */
300
+
224
301
  VeLiveVideoBufferTypeTexture = 3
225
302
  }
226
303
  export declare class VeLiveMixVideoLayout {
227
304
  /** {zh}
228
305
  * @brief 视频流 ID,唯一标识,用于区分不同的视频流。
229
306
  */
307
+
230
308
  streamId: int;
231
309
  /** {zh}
232
310
  * @brief 视频流对应区域左上角的横坐标,该坐标是相对整体画面的归一化比例,取值的范围为 [0.0,1.0]。
233
311
  */
312
+
234
313
  x: float;
235
314
  /** {zh}
236
315
  * @brief 视频流对应区域左上角的纵坐标,该坐标是相对整体画面的归一化比例,取值的范围为 [0.0,1.0]。
237
316
  */
317
+
238
318
  y: float;
239
319
  /** {zh}
240
320
  * @brief 视频流对应区域宽度,该宽度是相对整体画面的归一化比例,取值的范围为 [0.0,1.0]。
241
321
  */
322
+
242
323
  width: float;
243
324
  /** {zh}
244
325
  * @brief 视频流对应区域高度,该高度是相对整体画面的归一化比例,取值的范围为 [0.0,1.0]。
245
326
  */
327
+
246
328
  height: float;
247
329
  /** {zh}
248
330
  * @brief 视频流在混流中的透明度,取值范围为 [0.0,1.0],取值 0.0 表示全透明,取值 1.0 表示不透明。
249
331
  */
332
+
250
333
  alpha: float;
251
334
  /** {zh}
252
335
  * @brief 视频流在混流中的层级。取值范围为 [0,100],取值 0 表示最底层,取值越大,层级越高。
253
336
  */
337
+
254
338
  zOrder: int;
255
339
  /** {zh}
256
- * @brief 视频流的渲染模式。详情请参见 VeLivePusherRenderMode{@link #VeLivePusherRenderMode}
340
+ * @brief 视频流的渲染模式。详情请参见 [VeLivePusherRenderMode](#VeLivePusherRenderMode)
257
341
  */
342
+
258
343
  renderMode: VeLivePusherRenderMode;
344
+ /** {zh}
345
+ * @brief 是否保留视频流原 Alpha 通道值,默认为保留,当 [alpha](#VeLiveMixVideoLayout-alpha) 取值在 [0.0, 1.0] 之间时,则忽略该配置。<br/>
346
+ *
347
+ * - YES:保留;
348
+ * - NO:不保留。
349
+ */
350
+
351
+ enableAlpha: BOOL;
259
352
  init(): this;
260
353
  }
261
354
  export declare class VeLiveMixAudioLayout {
262
355
  /** {zh}
263
356
  * @brief 音频流 ID,唯一标识,用于区分不同的音频流。
264
357
  */
358
+
265
359
  streamId: int;
266
360
  /** {zh}
267
361
  * @detail api
268
- * @brief 混流音频的音量,范围为 [0.0,4.0]。当你将 VeLiveAudioMixType{@link #VeLiveAudioMixType} 设置为 `VeLiveAudioMixPlayAndPush` 时,该属性同时控制混流音频在拉流端和本地的播放音量。
362
+ * @brief 混流音频的音量,范围为 [0.0,4.0]。当你将 [VeLiveAudioMixType](#VeLiveAudioMixType) 设置为 `VeLiveAudioMixPlayAndPush` 时,该属性同时控制混流音频在拉流端和本地的播放音量。
269
363
  */
364
+
270
365
  volume: float;
271
366
  init(): this;
272
367
  }
273
368
  export declare enum VeLiveAudioProfile {
274
369
  /** {zh}
275
370
  * @brief LC-AAC 编码方式。
371
+ *
276
372
  */
373
+
277
374
  VeLiveAudioAACProfileLC = 0,
278
375
  /** {zh}
279
376
  * @brief HEv1-AAC 编码方式。
377
+ *
280
378
  */
379
+
281
380
  VeLiveAudioAACProfileHEv1 = 1,
282
381
  /** {zh}
283
382
  * @brief HEv2-AAC 编码方式。
383
+ *
284
384
  */
385
+
285
386
  VeLiveAudioAACProfileHEv2 = 2
286
387
  }
287
388
  export declare class VeLiveVideoFrame {
288
389
  /** {zh}
289
- * @brief 视频数据包装格式。默认值为 VeLiveVideoBufferTypeUnknown,详情请参见 VeLiveVideoBufferType{@link #VeLiveVideoBufferType}
390
+ * @brief 视频数据包装格式。默认值为 VeLiveVideoBufferTypeUnknown,详情请参见 [VeLiveVideoBufferType](#VeLiveVideoBufferType)
290
391
  */
392
+
291
393
  bufferType: VeLiveVideoBufferType;
292
394
  /** {zh}
293
- * @brief 视频帧像素格式。bufferType 为 VeLiveVideoBufferTypeNSData 时,需要指定数据格式。详情请参见 VeLivePixelFormat{@link #VeLivePixelFormat}
395
+ * @brief 视频帧像素格式。bufferType 为 VeLiveVideoBufferTypeNSData 时,需要指定数据格式。详情请参见 [VeLivePixelFormat](#VeLivePixelFormat)
294
396
  */
397
+
295
398
  pixelFormat: VeLivePixelFormat;
296
399
  /** {zh}
297
- * @brief 视频帧顺时针旋转角度。详情请参见 VeLiveVideoRotation{@link #VeLiveVideoRotation}
400
+ * @brief 视频帧顺时针旋转角度。详情请参见 [VeLiveVideoRotation](#VeLiveVideoRotation)
298
401
  */
402
+
299
403
  rotation: VeLiveVideoRotation;
300
404
  /** {zh}
301
405
  * @brief 视频宽度,单位为 px。
302
406
  */
407
+
303
408
  width: int;
304
409
  /** {zh}
305
410
  * @brief 视频高度,单位为 px。
306
411
  */
412
+
307
413
  height: int;
308
414
  /** {zh}
309
415
  * @brief 视频帧时间戳,单位为 μs。
310
416
  */
417
+
311
418
  pts: CMTime;
312
419
  /** {zh}
313
420
  * @brief `bufferType` 为 `VeLiveVideoBufferTypeTexture` 时的视频数据。
314
421
  */
422
+
315
423
  textureId: GLuint;
316
424
  /** {zh}
317
425
  * @brief `bufferType` 为 `VeLiveVideoBufferTypePixelBuffer` 时的视频数据。
318
426
  */
427
+
319
428
  pixelBuffer: CVPixelBufferRef;
320
429
  /** {zh}
321
430
  * @brief `bufferType` 为 `VeLiveVideoBufferTypeSampleBuffer` 时的视频数据。
322
431
  */
432
+
323
433
  sampleBuffer: CMSampleBufferRef;
324
434
  /** {zh}
325
435
  * @brief `bufferType` 为 `VeLiveVideoBufferTypeNSData` 时的视频数据。
326
436
  */
437
+
327
438
  data: NSData;
328
439
  /** {zh}
329
440
  * @brief 释放回调函数,用于在 SDK 内部处理完 VideoFrame 后通知外部释放相关资源。此回调主要用于 SDK 外部为 VideoFrame 申请内存,以便 SDK 内部使用。但无法预知内部何时使用完毕。
330
441
  */
442
+
331
443
  releaseCallback(): void;
332
444
  init(): this;
333
445
  }
334
446
  export declare enum VeLiveVideoFluencyLevel {
335
447
  /** {zh}
336
448
  * @brief 流畅,帧率能达到预设的目标帧率。
449
+ *
337
450
  */
451
+
338
452
  VeLiveVideoFluencyLevelSmooth = 0,
339
453
  /** {zh}
340
454
  * @brief 一般卡顿,帧率比预设的目标帧率低 1fps~3fps。
455
+ *
341
456
  */
457
+
342
458
  VeLiveVideoFluencyLevelSluggish = 1,
343
459
  /** {zh}
344
460
  * @brief 严重卡顿,帧率比预设的目标帧率低 4fps 以上。
461
+ *
345
462
  */
463
+
346
464
  VeLiveVideoFluencyLevelBlocked = 2,
347
465
  /** {zh}
348
466
  * @brief 完全卡住,帧率低于 2fps。
467
+ *
349
468
  */
469
+
350
470
  VeLiveVideoFluencyLevelStuck = 3
351
471
  }
352
472
  export declare enum VeLiveVideoMirrorType {
353
473
  /** {zh}
354
474
  * @brief 对采集画面的镜像控制。开启时,预览和推流画面都会呈现为镜像状态。
475
+ *
355
476
  */
477
+
356
478
  VeLiveVideoMirrorCapture = 0,
357
479
  /** {zh}
358
480
  * @brief 对预览画面的镜像控制。开启时,只有主播预览画面呈现镜像状态。
481
+ *
359
482
  */
483
+
360
484
  VeLiveVideoMirrorPreview = 1,
361
485
  /** {zh}
362
486
  * @brief 对编码前画面的镜像控制。开启时,主播推流画面呈现镜像状态。
487
+ *
363
488
  */
489
+
364
490
  VeLiveVideoMirrorPushStream = 2
365
491
  }
366
492
  export declare class VeLiveAudioCaptureConfiguration {
367
493
  /** {zh}
368
- * @brief 音频采样率,默认值为 `VeLiveAudioSampleRate44100`,详情请参见 VeLiveAudioSampleRate{@link #VeLiveAudioSampleRate}
494
+ * @brief 音频采样率,默认值为 `VeLiveAudioSampleRate44100`,详情请参见 [VeLiveAudioSampleRate](#VeLiveAudioSampleRate)
369
495
  */
496
+
370
497
  sampleRate: VeLiveAudioSampleRate;
371
498
  /** {zh}
372
- * @brief 音频采集声道数,默认值为 `VeLiveAudioChannelStereo`,详情请参见 VeLiveAudioChannel{@link #VeLiveAudioChannel}
499
+ * @brief 音频采集声道数,默认值为 `VeLiveAudioChannelStereo`,详情请参见 [VeLiveAudioChannel](#VeLiveAudioChannel)
373
500
  */
501
+
374
502
  channel: VeLiveAudioChannel;
375
503
  init(): this;
376
504
  }
@@ -383,7 +511,9 @@ export declare enum VeLiveVideoResolution {
383
511
  * - 目标码率:500kbps
384
512
  * - 最小码率:250kbps
385
513
  * - 最大码率:800kbps
514
+ *
386
515
  */
516
+
387
517
  VeLiveVideoResolution360P = 0,
388
518
  /** {zh}
389
519
  * @brief 480P 分辨率。档位详细配置如下所示。
@@ -393,7 +523,9 @@ export declare enum VeLiveVideoResolution {
393
523
  * - 目标码率:800kbps
394
524
  * - 最小码率:320kbps
395
525
  * - 最大码率:1266kbps
526
+ *
396
527
  */
528
+
397
529
  VeLiveVideoResolution480P = 1,
398
530
  /** {zh}
399
531
  * @brief 540P 分辨率。档位详细配置如下所示。
@@ -403,7 +535,9 @@ export declare enum VeLiveVideoResolution {
403
535
  * - 目标码率:1000kbps
404
536
  * - 最小码率:500kbps
405
537
  * - 最大码率:1520kbps
538
+ *
406
539
  */
540
+
407
541
  VeLiveVideoResolution540P = 2,
408
542
  /** {zh}
409
543
  * @brief 720P 分辨率。档位详细配置如下所示。
@@ -413,7 +547,9 @@ export declare enum VeLiveVideoResolution {
413
547
  * - 目标码率:1200kbps
414
548
  * - 最小码率:800kbps
415
549
  * - 最大码率:1900kbps
550
+ *
416
551
  */
552
+
417
553
  VeLiveVideoResolution720P = 3,
418
554
  /** {zh}
419
555
  * @brief 1080P 分辨率。档位详细配置如下所示。
@@ -423,7 +559,9 @@ export declare enum VeLiveVideoResolution {
423
559
  * - 目标码率:2500kbps
424
560
  * - 最小码率:1000kbps
425
561
  * - 最大码率:3800kbps
562
+ *
426
563
  */
564
+
427
565
  VeLiveVideoResolution1080P = 4,
428
566
  /** {zh}
429
567
  * @brief 屏幕推流分辨率。档位详细配置如下所示。
@@ -431,86 +569,115 @@ export declare enum VeLiveVideoResolution {
431
569
  * - 目标码率:2500kbps
432
570
  * - 最小码率:1000kbps
433
571
  * - 最大码率:3800kbps
572
+ *
434
573
  */
574
+
435
575
  VeLiveVideoResolutionScreen = 10
436
576
  }
437
577
  export declare enum VeLiveVideoRotation {
438
578
  /** {zh}
439
579
  * @brief 不旋转。
580
+ *
440
581
  */
582
+
441
583
  VeLiveVideoRotation0 = 0,
442
584
  /** {zh}
443
585
  * @brief 顺时针旋转 90 度。
586
+ *
444
587
  */
588
+
445
589
  VeLiveVideoRotation90 = 1,
446
590
  /** {zh}
447
591
  * @brief 顺时针旋转 180 度。
592
+ *
448
593
  */
594
+
449
595
  VeLiveVideoRotation180 = 2,
450
596
  /** {zh}
451
597
  * @brief 顺时针旋转 270 度。
598
+ *
452
599
  */
600
+
453
601
  VeLiveVideoRotation270 = 3
454
602
  }
455
603
  export declare class VeLiveStreamMixDescription {
456
604
  /** {zh}
457
- * @brief 视频混流布局设置的数组,其中每个元素代表一路视频流的布局。详情请参见 VeLiveMixVideoLayout{@link #VeLiveMixVideoLayout}
605
+ * @brief 视频混流布局设置的数组,其中每个元素代表一路视频流的布局。详情请参见 [VeLiveMixVideoLayout](#VeLiveMixVideoLayout)
458
606
  */
607
+
459
608
  mixVideoStreams: NSArray<VeLiveMixVideoLayout>;
460
609
  /** {zh}
461
- * @brief 音频混流设置的数组,其中每个元素代表一路音频流的。详情请参见 VeLiveMixAudioLayout{@link #VeLiveMixAudioLayout}
610
+ * @brief 音频混流设置的数组,其中每个元素代表一路音频流的。详情请参见 [VeLiveMixAudioLayout](#VeLiveMixAudioLayout)
462
611
  */
612
+
463
613
  mixAudioStreams: NSArray<VeLiveMixAudioLayout>;
464
614
  /** {zh}
465
615
  * @brief 视频混流画布的背景色设置,采用 #RRGGBB 格式。
466
616
  */
617
+
467
618
  backgroundColor: NSString;
468
619
  init(): this;
469
620
  }
470
621
  export declare enum VeLiveAudioCaptureType {
471
622
  /** {zh}
472
623
  * @brief 使用默认麦克风设备进行音频采集。
624
+ *
473
625
  */
626
+
474
627
  VeLiveAudioCaptureMicrophone = 0,
475
628
  /** {zh}
476
629
  * @brief 使用语音通话模式进行音频采集,此模式下会启动硬件的 3A 功能,即自动增益控制、自动频率控制和自动噪声抑制。
630
+ *
477
631
  */
632
+
478
633
  VeLiveAudioCaptureVoiceCommunication = 1,
479
634
  /** {zh}
480
635
  * @brief 使用外部设备或源进行音频采集。
636
+ *
481
637
  */
638
+
482
639
  VeLiveAudioCaptureExternal = 2,
483
640
  /** {zh}
484
641
  * @brief 使用静音帧作为音频源。
642
+ *
485
643
  */
644
+
486
645
  VeLiveAudioCaptureMuteFrame = 3
487
646
  }
488
647
  export declare enum VeLiveVideoCodec {
489
648
  /** {zh}
490
649
  * @brief 使用 H.264 视频编码。
650
+ *
491
651
  */
652
+
492
653
  VeLiveVideoCodecH264 = 0,
493
654
  /** {zh}
494
655
  * @brief 使用火山引擎自研 ByteVC1 视频编码。
656
+ *
495
657
  */
658
+
496
659
  VeLiveVideoCodecByteVC1 = 1
497
660
  }
498
661
  export declare class VeLiveVideoEncodeFrame {
499
662
  /** {zh}
500
663
  * @brief 编码帧展示时间戳,单位为 μs。
501
664
  */
665
+
502
666
  pts: CMTime;
503
667
  /** {zh}
504
668
  * @brief 编码帧 dts 时间,即解码时间戳,单位为 μs。
505
669
  */
670
+
506
671
  dts: CMTime;
507
672
  /** {zh}
508
- * @brief 编码帧的类型。
673
+ * @brief 编码帧的类型,详细请参见 [VeLiveVideoEncodeFrameType:](#VeLiveVideoEncodeFrameType)。
509
674
  */
675
+
510
676
  videoEcodeFrameType: VeLiveVideoEncodeFrameType;
511
677
  /** {zh}
512
678
  * @brief 编码帧的数据,使用 NSData 表示。
513
679
  */
680
+
514
681
  data: NSData;
515
682
  init(): this;
516
683
  }
@@ -518,284 +685,376 @@ export declare class VeLiveAudioEncoderConfiguration {
518
685
  /** {zh}
519
686
  * @brief 音频编码码率,单位为 kbps,默认值为 64。
520
687
  */
688
+
521
689
  bitrate: int;
522
690
  /** {zh}
523
- * @brief 音频编码采样率,默认值为 VeLiveAudioSampleRate44100,详情请参见 VeLiveAudioSampleRate{@link #VeLiveAudioSampleRate}
691
+ * @brief 音频编码采样率,默认值为 VeLiveAudioSampleRate44100,详情请参见 [VeLiveAudioSampleRate](#VeLiveAudioSampleRate)
524
692
  */
693
+
525
694
  sampleRate: VeLiveAudioSampleRate;
526
695
  /** {zh}
527
- * @brief 音频声道数,默认值为 VeLiveAudioChannelStereo,详情请参见 VeLiveAudioChannel{@link #VeLiveAudioChannel}
696
+ * @brief 音频声道数,默认值为 VeLiveAudioChannelStereo,详情请参见 [VeLiveAudioChannel](#VeLiveAudioChannel)
528
697
  */
698
+
529
699
  channel: VeLiveAudioChannel;
530
700
  /** {zh}
531
- * @brief AAC 编码类型,默认值为 VeLiveAudioAACProfileLC。详情请参见 VeLiveAudioProfile{@link #VeLiveAudioProfile}
701
+ * @brief AAC 编码类型,默认值为 VeLiveAudioAACProfileLC。详情请参见 [VeLiveAudioProfile](#VeLiveAudioProfile)
532
702
  */
703
+
533
704
  profile: VeLiveAudioProfile;
534
705
  init(): this;
535
706
  }
536
707
  export declare enum VeLivePusherLogLevel {
537
708
  /** {zh}
538
709
  * @brief 输出 VERBOSE、DEBUG、INFO、WARNING 和 ERROR 级别的日志。
710
+ *
539
711
  */
712
+
540
713
  VeLivePusherLogLevelVerbose = 0,
541
714
  /** {zh}
542
715
  * @brief 输出 DEBUG、INFO、WARNING 和 ERROR 级别的日志。
716
+ *
543
717
  */
718
+
544
719
  VeLivePusherLogLevelDebug = 1,
545
720
  /** {zh}
546
721
  * @brief 输出 INFO、WARNING 和 ERROR 级别的日志。
722
+ *
547
723
  */
724
+
548
725
  VeLivePusherLogLevelInfo = 2,
549
726
  /** {zh}
550
727
  * @brief 输出 WARNING 和 ERROR 级别的日志。
728
+ *
551
729
  */
730
+
552
731
  VeLivePusherLogLevelWarn = 3,
553
732
  /** {zh}
554
733
  * @brief 输出 ERROR 级别的日志。
734
+ *
555
735
  */
736
+
556
737
  VeLivePusherLogLevelError = 4,
557
738
  /** {zh}
558
739
  * @brief 关闭日志。
740
+ *
559
741
  */
742
+
560
743
  VeLivePusherLogLevelNone = 5
561
744
  }
562
745
  export declare enum VeLiveAudioMixType {
563
746
  /** {zh}
564
747
  * @brief 拉流端可以听到混音效果,本地无法听到。
748
+ *
565
749
  */
750
+
566
751
  VeLiveAudioMixPush = 0,
567
752
  /** {zh}
568
753
  * @brief 拉流端和本地都可以听到混音效果。
754
+ *
569
755
  */
756
+
570
757
  VeLiveAudioMixPlayAndPush = 1
571
758
  }
572
759
  export declare enum VeLivePusherRenderMode {
573
760
  /** {zh}
574
761
  * @brief 视窗填满优先。视频帧等比缩放,直至视窗被视频填满。如果视频帧长宽比例与视窗不同,视频帧的多出部分将无法显示。
762
+ *
575
763
  */
764
+
576
765
  VeLivePusherRenderModeHidden = 0,
577
766
  /** {zh}
578
767
  * @brief 视频帧内容全部显示优先。视频尺寸等比缩放,优先保证视频内容全部显示。当视频尺寸与显示窗口尺寸不一致时,会把窗口未被填满的区域填充成背景颜色。
768
+ *
579
769
  */
770
+
580
771
  VeLivePusherRenderModeFit = 1,
581
772
  /** {zh}
582
773
  * @brief 视频帧自适应画布。视频帧非等比缩放,直至画布被填满。在此过程中,视频帧的长宽比例可能会发生变化。
774
+ *
583
775
  */
776
+
584
777
  VeLivePusherRenderModeFill = 2
585
778
  }
586
779
  export declare class VeLiveVideoEffectLicenseConfiguration {
587
780
  /** {zh}
588
- * @brief 获取视频特效许可证类型。许可证类型请参见 VeLiveVideoEffectLicenseType{@link #VeLiveVideoEffectLicenseType}
781
+ * @brief 获取视频特效许可证类型。许可证类型请参见 [VeLiveVideoEffectLicenseType](#VeLiveVideoEffectLicenseType)
589
782
  */
783
+
590
784
  type: VeLiveVideoEffectLicenseType;
591
785
  /** {zh}
592
- * @brief 获取视频特效许可证的本地路径。当 VeLiveVideoEffectLicenseType{@link #VeLiveVideoEffectLicenseType} 为 `VeLiveVideoEffectLicenseTypeOffLine` 时,该属性返回许可证文件的本地路径。
786
+ * @brief 获取视频特效许可证的本地路径。当 [VeLiveVideoEffectLicenseType](#VeLiveVideoEffectLicenseType) 为 `VeLiveVideoEffectLicenseTypeOffLine` 时,该属性返回许可证文件的本地路径。
593
787
  */
788
+
594
789
  path: NSString;
595
790
  /** {zh}
596
- * @brief 获取视频特效许可证的在线认证 key。当 VeLiveVideoEffectLicenseType{@link #VeLiveVideoEffectLicenseType} 为 `VeLiveVideoEffectLicenseTypeOnLine` 时,该属性返回在线认证的 key。
791
+ * @brief 获取视频特效许可证的在线认证 key。当 [VeLiveVideoEffectLicenseType](#VeLiveVideoEffectLicenseType) 为 `VeLiveVideoEffectLicenseTypeOnLine` 时,该属性返回在线认证的 key。
597
792
  */
793
+
598
794
  key: NSString;
599
795
  /** {zh}
600
- * @brief 获取视频特效许可证的在线认证 secret。当 VeLiveVideoEffectLicenseType{@link #VeLiveVideoEffectLicenseType} 为 `VeLiveVideoEffectLicenseTypeOnLine` 时,该属性返回在线认证的 secret。
796
+ * @brief 获取视频特效许可证的在线认证 secret。当 [VeLiveVideoEffectLicenseType](#VeLiveVideoEffectLicenseType) 为 `VeLiveVideoEffectLicenseTypeOnLine` 时,该属性返回在线认证的 secret。
601
797
  */
798
+
602
799
  secret: NSString;
603
800
  /** {zh}
604
- * @brief 获取视频特效许可证的在线认证地址。当 VeLiveVideoEffectLicenseType{@link #VeLiveVideoEffectLicenseType} 为 `VeLiveVideoEffectLicenseTypeOnLine` 时,该属性返回在线认证地址。
801
+ * @brief 获取视频特效许可证的在线认证地址。当 [VeLiveVideoEffectLicenseType](#VeLiveVideoEffectLicenseType) 为 `VeLiveVideoEffectLicenseTypeOnLine` 时,该属性返回在线认证地址。
605
802
  */
803
+
606
804
  url: NSString;
607
805
  /** {zh}
608
806
  * @detail api
609
807
  * @brief 初始化配置为本地验证模式。
610
- * @param path 视频特效许可证的本地缓存路径。可通过 path{@link #path} 获取
611
- * @return <br>
612
- * 返回 VeLiveVideoEffectLicenseConfiguration{@link #VeLiveVideoEffectLicenseConfiguration} 类的实例,该实例使用指定的本地路径进行许可证验证。
808
+ * @param path 视频特效许可证的本地缓存路径。可通过 [path](#VeLiveVideoEffectLicenseConfiguration-path) 获取
809
+ * @return 返回 [VeLiveVideoEffectLicenseConfiguration](#VeLiveVideoEffectLicenseConfiguration) 类的实例,该实例使用指定的本地路径进行许可证验证。
613
810
  */
811
+
614
812
  initWithPath(path: NSString): this;
615
813
  /** {zh}
616
814
  * @detail api
617
815
  * @brief 初始化配置为在线验证模式。
618
- * @return <br>
619
- * 返回 VeLiveVideoEffectLicenseConfiguration{@link #VeLiveVideoEffectLicenseConfiguration} 类的实例,该实例使用指定的 key、secret url 进行在线许可证验证。
620
- * @param key 视频特效许可证的在线认证 key,可通过 [key](155321#VeLiveVideoEffectLicenseConfiguration-key) 获取。
621
- * @param secret 视频特效许可证的在线认证 secret,可通过 [secret](155321#VeLiveVideoEffectLicenseConfiguration-secret) 获取。
622
- * @param url 视频特效许可证的在线认证地址,如果传入 nil,会使用默认 url,可通过 [url](155321#VeLiveVideoEffectLicenseConfiguration-url) 获取在线认证地址。
816
+ * @param key 视频特效许可证的在线认证 key,可通过 [key](#VeLiveVideoEffectLicenseConfiguration-key) 获取。
817
+ * @param secret 视频特效许可证的在线认证 secret,可通过 [secret](#VeLiveVideoEffectLicenseConfiguration-secret) 获取。
818
+ * @param url 视频特效许可证的在线认证地址,如果传入 nil,会使用默认 url,可通过 [url](#VeLiveVideoEffectLicenseConfiguration-url) 获取在线认证地址。
819
+ * @return 返回 [VeLiveVideoEffectLicenseConfiguration](#VeLiveVideoEffectLicenseConfiguration) 类的实例,该实例使用指定的 key、secret 和 url 进行在线许可证验证。
623
820
  */
821
+
624
822
  initWithKey(key: NSString, secret: NSString, url: NSString): this;
625
823
  }
626
824
  export declare enum VeLiveAudioFrameSource {
627
825
  /** {zh}
628
826
  * @brief 采集到的原始音频帧。这是从设备的麦克风或其他音频输入源获取的音频帧。
827
+ *
629
828
  */
829
+
630
830
  VeLiveAudioFrameSourceCapture = 1,
631
831
  /** {zh}
632
832
  * @brief 编码前的音频帧。这是通过各种处理(例如噪音消除、回声消除等)后,准备进行编码的音频帧。
833
+ *
633
834
  */
835
+
634
836
  VeLiveAudioFrameSourcePreEncode = 2
635
837
  }
636
838
  export declare enum VeLivePushStatus {
637
839
  /** {zh}
638
840
  * @brief 初始状态。
841
+ *
639
842
  */
843
+
640
844
  VeLivePushStatusNone = 0,
641
845
  /** {zh}
642
846
  * @brief 正在连接服务器。
847
+ *
643
848
  */
849
+
644
850
  VeLivePushStatusConnecting = 1,
645
851
  /** {zh}
646
852
  * @brief 连接服务器成功。
853
+ *
647
854
  */
855
+
648
856
  VeLivePushStatusConnectSuccess = 2,
649
857
  /** {zh}
650
858
  * @brief 重连服务器中。
859
+ *
651
860
  */
861
+
652
862
  VeLivePushStatusReconnecting = 3,
653
863
  /** {zh}
654
864
  * @brief 推流连接被终止。
865
+ *
655
866
  */
867
+
656
868
  VeLivePushStatusConnectStop = 4,
657
869
  /** {zh}
658
870
  * @brief 推流连接失败。
871
+ *
659
872
  */
873
+
660
874
  VeLivePushStatusConnectError = 5,
661
875
  /** {zh}
662
876
  * @brief 与服务器断开连接。
877
+ *
663
878
  */
879
+
664
880
  VeLivePushStatusDisconnected = 6
665
881
  }
666
882
  export declare enum VeLiveFirstFrameType {
667
883
  /** {zh}
668
884
  * @brief 视频/音频采集首帧,采集首帧是从音频设备或视频设备(如麦克风、摄像头)获取的第一帧数据。
885
+ *
669
886
  */
887
+
670
888
  VeLiveFirstCaptureFrame = 0,
671
889
  /** {zh}
672
890
  * @brief 视频渲染首帧,渲染首帧是在渲染过程中在屏幕上显示的第一帧视频数据。
891
+ *
673
892
  */
893
+
674
894
  VeLiveFirstRenderFrame = 1,
675
895
  /** {zh}
676
896
  * @brief 视频/音频编码完成首帧,编码完成首帧是编码为某种特定格式的第一帧数据。
897
+ *
677
898
  */
899
+
678
900
  VeLiveFirstEncodedFrame = 2,
679
901
  /** {zh}
680
902
  * @brief 视频/音频发送首帧,发送首帧是在发送过程中,通过网络传输的第一帧数据。
903
+ *
681
904
  */
905
+
682
906
  VeLiveFirstSendFrame = 3,
683
907
  /** {zh}
684
908
  * @brief 录屏采集开始后,获得的第一个 app 音频帧。
909
+ *
685
910
  */
911
+
686
912
  VeLiveFirstAppAudioCaptureFrame = 4
687
913
  }
688
914
  export declare enum VeLiveAudioSampleRate {
689
915
  /** {zh}
690
916
  * @brief 44.1k 采样,适用于大多数音频处理场景,是音乐 CD 的标准采样率。
917
+ *
691
918
  */
919
+
692
920
  VeLiveAudioSampleRate44100 = 44100
693
921
  }
694
922
  export declare class VeLivePusherStatistics {
695
923
  /** {zh}
696
924
  * @brief 视频采集宽度,单位为 px。
697
925
  */
926
+
698
927
  captureWidth: int;
699
928
  /** {zh}
700
929
  * @brief 视频采集高度,单位为 px。
701
930
  */
931
+
702
932
  captureHeight: int;
703
933
  /** {zh}
704
934
  * @brief 视频采集帧率,单位为 fps。
705
935
  */
936
+
706
937
  captureFps: int;
707
938
  /** {zh}
708
939
  * @brief 视频编码宽度,单位为 px。
709
940
  */
941
+
710
942
  encodeWidth: int;
711
943
  /** {zh}
712
944
  * @brief 视频编码高度,单位为 px。
713
945
  */
946
+
714
947
  encodeHeight: int;
715
948
  /** {zh}
716
949
  * @brief 视频编码帧率,单位为 fps。
717
950
  */
951
+
718
952
  encodeFps: int;
719
953
  /** {zh}
720
954
  * @brief 视频编码码率,单位为 kbps。
721
955
  */
956
+
722
957
  encodeVideoBitrate: int;
723
958
  /** {zh}
724
959
  * @brief 音频编码码率,单位为 kbps。
725
960
  */
961
+
726
962
  encodeAudioBitrate: int;
727
963
  /** {zh}
728
964
  * @brief 视频发送帧率,可用展示实时帧率,单位为 fps。
729
965
  */
966
+
730
967
  transportFps: int;
731
968
  /** {zh}
732
969
  * @brief 视频发送码率,可用于展示实时码率,单位为 kbps。
733
970
  */
971
+
734
972
  transportVideoBitrate: int;
735
973
  /** {zh}
736
974
  * @brief 视频推流帧率,即您通过 setVideoEncoderConfiguration:{@link #VeLivePusher#setVideoEncoderConfiguration} 方法设置的帧率,单位为 fps。
737
975
  */
976
+
738
977
  fps: int;
739
978
  /** {zh}
740
- * @brief 视频推流码率,即您通过 setVideoEncoderConfiguration:{@link #VeLivePusher#setVideoEncoderConfiguration} 方法设置的码率,单位为 kbps。
979
+ * @brief 视频推流码率,即您通过 [setVideoEncoderConfiguration](155318#VeLivePusher-setvideoencoderconfiguration) 方法设置的码率,单位为 kbps。
741
980
  */
981
+
742
982
  videoBitrate: int;
743
983
  /** {zh}
744
- * @brief 视频推流最小码率,即您通过 setVideoEncoderConfiguration:{@link #VeLivePusher#setVideoEncoderConfiguration} 方法设置的最小码率,单位为 kbps。
984
+ * @brief 视频推流最小码率,即您通过 [etVideoEncoderConfiguration:](155318#VeLivePusher-setvideoencoderconfiguration) 方法设置的最小码率,单位为 kbps。
745
985
  */
986
+
746
987
  minVideoBitrate: int;
747
988
  /** {zh}
748
989
  * @brief 视频推流最大码率,即您通过 setVideoEncoderConfiguration:{@link #VeLivePusher#setVideoEncoderConfiguration} 方法设置的最大码率,单位为 kbps。
749
990
  */
991
+
750
992
  maxVideoBitrate: int;
751
993
  /** {zh}
752
994
  * @brief 推流地址。
753
995
  */
996
+
754
997
  url: NSString;
755
998
  /** {zh}
756
999
  * @brief 视频编码格式。
757
1000
  */
1001
+
758
1002
  codec: NSString;
759
1003
  init(): this;
760
1004
  }
761
1005
  export declare enum VeLivePixelFormat {
762
1006
  /** {zh}
763
1007
  * @brief 未知格式。
1008
+ *
764
1009
  */
1010
+
765
1011
  VeLivePixelFormatUnknown = -1,
766
1012
  /** {zh}
767
1013
  * @brief I420 格式。
1014
+ *
768
1015
  */
1016
+
769
1017
  VeLivePixelFormatI420 = 0,
770
1018
  /** {zh}
771
1019
  * @brief NV12 格式。
1020
+ *
772
1021
  */
1022
+
773
1023
  VeLivePixelFormatNV12 = 1,
774
1024
  /** {zh}
775
1025
  * @brief NV21 格式。
1026
+ *
776
1027
  */
1028
+
777
1029
  VeLivePixelFormatNV21 = 2,
778
1030
  /** {zh}
779
1031
  * @brief RAGBA 格式。
1032
+ *
780
1033
  */
1034
+
781
1035
  VeLivePixelFormatBGRA32 = 3,
782
1036
  /** {zh}
783
1037
  * @brief OpenGL 2D 纹理。
1038
+ *
784
1039
  */
1040
+
785
1041
  VeLivePixelFormat2DTexture = 4
786
1042
  }
787
1043
  export declare class VeLiveVideoCaptureConfiguration {
788
1044
  /** {zh}
789
1045
  * @brief 视频采集宽度,单位为 px,默认值为 720。
790
1046
  */
1047
+
791
1048
  width: int;
792
1049
  /** {zh}
793
1050
  * @brief 视频采集高度,单位为 px,默认值为 1280。
794
1051
  */
1052
+
795
1053
  height: int;
796
1054
  /** {zh}
797
1055
  * @brief 视频采集帧率,单位为 fps,默认值为 15。
798
1056
  */
1057
+
799
1058
  fps: int;
800
1059
  /** {zh}
801
1060
  * @brief 视频采集帧类型,默认为 kCVPixelFormatType_420YpCbCr8BiPlanarFullRange。
@@ -805,60 +1064,79 @@ export declare class VeLiveVideoCaptureConfiguration {
805
1064
  * - kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange
806
1065
  * - kCVPixelFormatType_420YpCbCr10BiPlanarVideoRange
807
1066
  */
1067
+
808
1068
  pixelFormat: OSType;
809
1069
  init(): this;
810
1070
  }
811
1071
  export declare class VeLiveAudioFrame {
812
1072
  /** {zh}
813
- * @brief 音频数据类型,默认值为 `VeLiveAudioBufferTypeUnknown`,详情请参见 VeLiveAudioBufferType{@link #VeLiveAudioBufferType}
1073
+ * @brief 音频数据类型,默认值为 `VeLiveAudioBufferTypeUnknown`,详情请参见 [VeLiveAudioBufferType](#VeLiveAudioBufferType)
814
1074
  */
1075
+
815
1076
  bufferType: VeLiveAudioBufferType;
816
1077
  /** {zh}
817
- * @brief 音频采样率。详情请参见 VeLiveAudioSampleRate{@link #VeLiveAudioSampleRate}
1078
+ * @brief 音频采样率。详情请参见 [VeLiveAudioSampleRate](#VeLiveAudioSampleRate)
818
1079
  */
1080
+
819
1081
  sampleRate: VeLiveAudioSampleRate;
820
1082
  /** {zh}
821
- * @brief 音频声道数。详情请参见 VeLiveAudioChannel{@link #VeLiveAudioChannel}
1083
+ * @brief 音频声道数。详情请参见 [VeLiveAudioChannel](#VeLiveAudioChannel)
822
1084
  */
1085
+
823
1086
  channels: VeLiveAudioChannel;
824
1087
  /** {zh}
825
1088
  * @brief 当 bufferType 取值为 `VeLiveAudioBufferNSData` 时的音频帧时间戳,单位为 μs。
826
1089
  */
1090
+
827
1091
  pts: CMTime;
828
1092
  /** {zh}
829
1093
  * @brief 当 bufferType 取值为 `VeLiveAudioBufferTypeSampleBuffer` 时的音频数据。
830
1094
  */
1095
+
831
1096
  sampleBuffer: CMSampleBufferRef;
832
1097
  /** {zh}
833
1098
  * @brief 当 bufferType 取值为 `VeLiveAudioBufferTypeNSData` 时的音频数据。音频帧数据为 float32 格式小端字节序存储。
834
1099
  */
1100
+
835
1101
  data: NSData;
836
1102
  init(): this;
837
1103
  }
838
1104
  export declare enum VeLiveAudioPowerLevel {
839
1105
  /** {zh}
840
1106
  * @brief 无声,音量 ≤ 1dB。
1107
+ *
841
1108
  */
1109
+
842
1110
  VeLiveAudioPowerLevelSilent = 0,
843
1111
  /** {zh}
844
1112
  * @brief 安静,音量 15dB 以下。
1113
+ *
845
1114
  */
1115
+
846
1116
  VeLiveAudioPowerLevelQuiet = 1,
847
1117
  /** {zh}
848
1118
  * @brief 轻声,接近耳语音量,音量为 16dB~30dB 之间。
1119
+ *
849
1120
  */
1121
+
850
1122
  VeLiveAudioPowerLevelLight = 2,
851
1123
  /** {zh}
852
1124
  * @brief 正常,音量适宜,类似正常对话的音量,音量为 30dB~60dB 之间。
1125
+ *
853
1126
  */
1127
+
854
1128
  VeLiveAudioPowerLevelNormal = 3,
855
1129
  /** {zh}
856
1130
  * @brief 较大,音量较高,类似咖啡馆、餐厅的环境噪音,音量为 61dB~85dB 之间。
1131
+ *
857
1132
  */
1133
+
858
1134
  VeLiveAudioPowerLevelLoud = 4,
859
1135
  /** {zh}
860
1136
  * @brief 吵闹,音量极高,类似于繁忙的街道或者是音乐会现场,音量超过 85dB。
1137
+ *
861
1138
  */
1139
+
862
1140
  VeLiveAudioPowerLevelNoisy = 5
863
1141
  }
864
1142
  export declare enum UIInterfaceOrientation {