@byteplus/react-native-live-push 1.1.3-rc.4 → 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.
- package/android/build.gradle +2 -2
- package/android/src/main/java/com/volcengine/velive/rn/push/ClassHelper.java +9 -0
- package/android/src/main/java/com/volcengine/velive/rn/push/NativeVariableManager.java +5 -8
- package/android/src/main/java/com/volcengine/velive/rn/push/VeLivePushModule.java +1 -0
- package/android/src/main/java/com/volcengine/velive/rn/push/mixer/MixerManager.java +1 -3
- package/android/src/main/java/com/volcengine/velive/rn/push/mixer/MixerView.java +33 -22
- package/ios/VeLiveMixerHelper.h +7 -5
- package/ios/VeLiveMixerHelper.m +1 -1
- package/ios/VeLiveMixerViewManager.m +2 -2
- package/lib/commonjs/index.js +23202 -20302
- package/lib/commonjs/typescript/android/index.d.ts +0 -3
- package/lib/commonjs/typescript/codegen/android/api.d.ts +190 -644
- package/lib/commonjs/typescript/codegen/android/callback.d.ts +234 -2
- package/lib/commonjs/typescript/codegen/android/errorcode.d.ts +66 -0
- package/lib/commonjs/typescript/codegen/android/keytype.d.ts +1014 -181
- package/lib/commonjs/typescript/codegen/ios/api.d.ts +890 -0
- package/lib/commonjs/typescript/codegen/ios/callback.d.ts +162 -0
- package/lib/commonjs/typescript/codegen/ios/errorcode.d.ts +101 -1
- package/lib/commonjs/typescript/codegen/ios/keytype.d.ts +694 -0
- package/lib/commonjs/typescript/codegen/pack/api.d.ts +303 -686
- package/lib/commonjs/typescript/codegen/pack/callback.d.ts +37 -38
- package/lib/commonjs/typescript/codegen/pack/errorcode.d.ts +75 -5
- package/lib/commonjs/typescript/codegen/pack/keytype.d.ts +1002 -298
- package/lib/commonjs/typescript/core/api.d.ts +2 -1
- package/lib/commonjs/typescript/core/pusher.d.ts +0 -3
- package/lib/module/index.js +23203 -20302
- package/lib/module/typescript/android/index.d.ts +0 -3
- package/lib/module/typescript/codegen/android/api.d.ts +190 -644
- package/lib/module/typescript/codegen/android/callback.d.ts +234 -2
- package/lib/module/typescript/codegen/android/errorcode.d.ts +66 -0
- package/lib/module/typescript/codegen/android/keytype.d.ts +1014 -181
- package/lib/module/typescript/codegen/ios/api.d.ts +890 -0
- package/lib/module/typescript/codegen/ios/callback.d.ts +162 -0
- package/lib/module/typescript/codegen/ios/errorcode.d.ts +101 -1
- package/lib/module/typescript/codegen/ios/keytype.d.ts +694 -0
- package/lib/module/typescript/codegen/pack/api.d.ts +303 -686
- package/lib/module/typescript/codegen/pack/callback.d.ts +37 -38
- package/lib/module/typescript/codegen/pack/errorcode.d.ts +75 -5
- package/lib/module/typescript/codegen/pack/keytype.d.ts +1002 -298
- package/lib/module/typescript/core/api.d.ts +2 -1
- package/lib/module/typescript/core/pusher.d.ts +0 -3
- package/lib/typescript/android/index.d.ts +0 -3
- package/lib/typescript/codegen/android/api.d.ts +190 -644
- package/lib/typescript/codegen/android/callback.d.ts +234 -2
- package/lib/typescript/codegen/android/errorcode.d.ts +66 -0
- package/lib/typescript/codegen/android/keytype.d.ts +1014 -181
- package/lib/typescript/codegen/ios/api.d.ts +890 -0
- package/lib/typescript/codegen/ios/callback.d.ts +162 -0
- package/lib/typescript/codegen/ios/errorcode.d.ts +101 -1
- package/lib/typescript/codegen/ios/keytype.d.ts +694 -0
- package/lib/typescript/codegen/pack/api.d.ts +303 -686
- package/lib/typescript/codegen/pack/callback.d.ts +37 -38
- package/lib/typescript/codegen/pack/errorcode.d.ts +75 -5
- package/lib/typescript/codegen/pack/keytype.d.ts +1002 -298
- package/lib/typescript/core/api.d.ts +2 -1
- package/lib/typescript/core/pusher.d.ts +0 -3
- package/package.json +1 -1
- package/react-native-velive-push.podspec +3 -3
- package/android/src/main/java/com/volcengine/velive/rn/push/ScreenCaptureHelper.java +0 -73
|
@@ -4,219 +4,1109 @@ import { VeLiveMediaPlayerListener, VeLiveMediaPlayerFrameListener, VeLivePusher
|
|
|
4
4
|
import { UIView } from './external';
|
|
5
5
|
export declare class VeLiveFileRecorderManager {
|
|
6
6
|
|
|
7
|
+
/** {en}
|
|
8
|
+
* @detail api
|
|
9
|
+
* @brief Start live recording.
|
|
10
|
+
* @notes - Please call [startPush:](#VeLivePusher-startpush) After the stream is successfully pushed, call this method, and the audio & video data during the live broadcast will be saved locally;
|
|
11
|
+
* - This method is an asynchronous operation;
|
|
12
|
+
* - After starting recording, [onFileRecordingStarted](#docs-broadcast-sdk-for-ios-callbackVeLiveFileRecordingListener-onfilerecordingstarted) callback message;
|
|
13
|
+
* - An error in recording will trigger [onFileRecordingError:message:](#docs-broadcast-sdk-for-ios-callbackVeLiveFileRecordingListener-onfilerecordingerror-message) callback message.
|
|
14
|
+
* @param path The recording file save path cannot be configured for empty
|
|
15
|
+
* @param config live recording. For details, see [VeLiveFileRecorderConfiguration](docs-broadcast-sdk-for-ios-type-definition#VeLiveFileRecorderConfiguration).
|
|
16
|
+
* @order 43
|
|
17
|
+
*/
|
|
7
18
|
startRecord(path: NSString, config: VeLiveFileRecorderConfiguration): void;
|
|
8
19
|
|
|
20
|
+
/** {en}
|
|
21
|
+
* @detail api
|
|
22
|
+
* @brief Stop local live recording.
|
|
23
|
+
* @notes - Please call this method after calling [startRecord:config:](#VeLiveFileRecorderManager-startrecord-config) successfully starts recording;
|
|
24
|
+
* - This method is an asynchronous operation;
|
|
25
|
+
* - Stop recording, which will trigger [onFileRecordingStopped](#docs-broadcast-sdk-for-ios-callbackVeLiveFileRecordingListener-onfilerecordingstopped) callback message;
|
|
26
|
+
* - An error occurs in the recording, which will trigger [onFileRecordingError:message:](#docs-broadcast-sdk-for-ios-callbackVeLiveFileRecordingListener-onfilerecordingerror-message) callback message.
|
|
27
|
+
* @order 45
|
|
28
|
+
*/
|
|
9
29
|
stopRecord(): void;
|
|
10
30
|
init(): this;
|
|
11
31
|
}
|
|
12
32
|
export declare class VeLiveCameraDevice {
|
|
13
33
|
|
|
34
|
+
/** {en}
|
|
35
|
+
* @detail api
|
|
36
|
+
* @brief Checks whether flashlight is supported.
|
|
37
|
+
* @notes Call this method after calling [startVideoCapture:](#VeLivePusher-startvideocapture) to start camera capture.
|
|
38
|
+
* @order 49
|
|
39
|
+
* @return - YES: Supported;
|
|
40
|
+
* - NO: Not supported.
|
|
41
|
+
*/
|
|
14
42
|
isTorchSupported(): BOOL;
|
|
15
43
|
|
|
44
|
+
/** {en}
|
|
45
|
+
* @detail api
|
|
46
|
+
* @brief Enables or disables the flashlight.
|
|
47
|
+
* @notes Call this method after calling [startVideoCapture:](#VeLivePusher-startvideocapture) to start camera capture.
|
|
48
|
+
* @order 51
|
|
49
|
+
* @param enable Whether to enable the flashlight.<br>
|
|
50
|
+
* - YES: Enable
|
|
51
|
+
* - NO: (Default) Disable.
|
|
52
|
+
* @return - = 0: Success;
|
|
53
|
+
* - ≠ 0: Failure.
|
|
54
|
+
*/
|
|
16
55
|
enableTorch(enable: BOOL): int;
|
|
17
56
|
|
|
57
|
+
/** {en}
|
|
58
|
+
* @detail api
|
|
59
|
+
* @brief Sets the zoom factor of the camera.
|
|
60
|
+
* @notes Call this method after calling [startVideoCapture:](#VeLivePusher-startvideocapture) to start camera capture.
|
|
61
|
+
* @order 52
|
|
62
|
+
* @param ratio The zoom factor. The SDK uses the original size by default. The range of the zoom factor is [[getMinZoomRatio](#VeLiveCameraDevice-getminzoomratio), [getMaxZoomRatio](#VeLiveCameraDevice-getmaxzoomratio)].
|
|
63
|
+
* @return - = 0: Success;
|
|
64
|
+
* - ≠ 0: Failure.
|
|
65
|
+
*/
|
|
18
66
|
setZoomRatio(ratio: float): int;
|
|
19
67
|
|
|
68
|
+
/** {en}
|
|
69
|
+
* @detail api
|
|
70
|
+
* @brief Gets the current zoom factor of the camera.
|
|
71
|
+
* @notes Call this method after calling [startVideoCapture:](#VeLivePusher-startvideocapture) to start camera capture.
|
|
72
|
+
* @order 53
|
|
73
|
+
* @return - ≤0: The camera does not support zooming;
|
|
74
|
+
* - >0: The zoom factor.
|
|
75
|
+
*/
|
|
20
76
|
getCurrentZoomRatio(): float;
|
|
21
77
|
|
|
78
|
+
/** {en}
|
|
79
|
+
* @detail api
|
|
80
|
+
* @brief Gets the maximum zoom factor of the camera.
|
|
81
|
+
* @notes Call this method after calling [startVideoCapture:](#VeLivePusher-startvideocapture) to start camera capture.
|
|
82
|
+
* @order 54
|
|
83
|
+
* @return - ≤0: The camera does not support zooming;
|
|
84
|
+
* - >0: The maximum zoom factor.
|
|
85
|
+
*/
|
|
22
86
|
getMaxZoomRatio(): float;
|
|
23
87
|
|
|
88
|
+
/** {en}
|
|
89
|
+
* @detail api
|
|
90
|
+
* @brief Gets the minimum zoom factor of the camera.
|
|
91
|
+
* @notes Call this method after calling [startVideoCapture:](#VeLivePusher-startvideocapture) to start camera capture.
|
|
92
|
+
* @order 55
|
|
93
|
+
* @return - ≤0: The camera does not support zooming;
|
|
94
|
+
* - >0: The minimum zoom factor.
|
|
95
|
+
*/
|
|
24
96
|
getMinZoomRatio(): float;
|
|
25
97
|
|
|
98
|
+
/** {en}
|
|
99
|
+
* @detail api
|
|
100
|
+
* @brief Checks whether autofocus is supported.
|
|
101
|
+
* @notes Call this method after calling [startVideoCapture:](#VeLivePusher-startvideocapture) to start camera capture.
|
|
102
|
+
* @order 56
|
|
103
|
+
* @return - YES: Supported;
|
|
104
|
+
* - NO: Not supported.
|
|
105
|
+
*/
|
|
26
106
|
isAutoFocusEnabled(): BOOL;
|
|
27
107
|
|
|
108
|
+
/** {en}
|
|
109
|
+
* @detail api
|
|
110
|
+
* @brief Enables or disables autofocus.
|
|
111
|
+
* @notes Call this method after calling [startVideoCapture:](#VeLivePusher-startvideocapture) to start camera capture.
|
|
112
|
+
* @order 57
|
|
113
|
+
* @param enable Whether to enable autofocus.
|
|
114
|
+
* - YES: (Default) Enable;
|
|
115
|
+
* - NO: Disable.
|
|
116
|
+
* @return - =0: Success;
|
|
117
|
+
* - ≠0: Failure.
|
|
118
|
+
*/
|
|
28
119
|
enableAutoFocus(enable: BOOL): int;
|
|
29
120
|
|
|
121
|
+
/** {en}
|
|
122
|
+
* @detail api
|
|
123
|
+
* @brief Sets the focus position of the camera.
|
|
124
|
+
* @notes
|
|
125
|
+
* Call this method after calling [startVideoCapture:](#VeLivePusher-startvideocapture) to start camera capture.
|
|
126
|
+
* @order 58
|
|
127
|
+
* @param position The coordinate of the focus point from the upper left corner of the current view.
|
|
128
|
+
* @return - =0: Success;
|
|
129
|
+
* - ≠0: Failure.
|
|
130
|
+
*/
|
|
30
131
|
setFocusPosition(position: CGPoint): int;
|
|
31
132
|
|
|
133
|
+
/** {en}
|
|
134
|
+
* @detail api
|
|
135
|
+
* @brief Checks if manual exposure setting is available for the currently used camera.
|
|
136
|
+
* @notes You must call [startVideoCapture:](#VeLivePusher-startvideocapture) to start SDK internal video capturing before calling this API.
|
|
137
|
+
* @order 59
|
|
138
|
+
* @return - YES: Available.
|
|
139
|
+
* - NO: Unavailable.
|
|
140
|
+
*/
|
|
32
141
|
isExposurePositionSupported(): BOOL;
|
|
33
142
|
|
|
143
|
+
/** {en}
|
|
144
|
+
* @detail api
|
|
145
|
+
* @brief Sets the manual exposure position for the currently used camera.
|
|
146
|
+
* @param position The position of the exposure point. Setting the upper-left corner of the canvas as the origin, the `x` in `position` means the x-coordinate of the exposure point in range of [0, 1], and the `y` in `position` means the y-coordinate of the exposure point in range of [0, 1].
|
|
147
|
+
* @notes - You must call [startVideoCapture:](#VeLivePusher-startvideocapture) to start SDK internal video capturing, and use SDK internal rendering before calling this API.
|
|
148
|
+
* - When you set the exposure point at the center of the canvas, the exposure point setting will be canceled.
|
|
149
|
+
* - The camera exposure point setting will be invalid after calling [stopVideoCapture:](#VeLivePusher-stopvideocapture) to stop internal capturing.
|
|
150
|
+
* @order 60
|
|
151
|
+
* @return - =0: Success.
|
|
152
|
+
* - ≠0: Failure.
|
|
153
|
+
*/
|
|
34
154
|
setExposurePosition(position: CGPoint): int;
|
|
35
155
|
|
|
156
|
+
/** {en}
|
|
157
|
+
* @detail api
|
|
158
|
+
* @brief Sets the exposure compensation for the currently used camera.
|
|
159
|
+
* @param value The range of the exposure compensation is [[getMinExposureCompensation](#VeLiveCameraDevice-getminexposurecompensation), [getMaxExposureCompensation](#VeLiveCameraDevice-getmaxexposurecompensation)]. Default to 0, which means no exposure compensation.
|
|
160
|
+
* @notes - You must call [startVideoCapture:](#VeLivePusher-startvideocapture) to start SDK internal video capturing, and use SDK internal rendering before calling this API.
|
|
161
|
+
* - The camera exposure compensation setting will be invalid after calling [stopVideoCapture:](#VeLivePusher-stopvideocapture) to stop internal capturing.
|
|
162
|
+
* @order 61
|
|
163
|
+
* @return - =0: Success.
|
|
164
|
+
* - ≠0: Failure.
|
|
165
|
+
*/
|
|
36
166
|
setExposureCompensation(value: float): int;
|
|
37
167
|
|
|
168
|
+
/** {en}
|
|
169
|
+
* @detail api
|
|
170
|
+
* @brief Gets the minimum exposure compensation of the camera.
|
|
171
|
+
* @notes Call this method after calling [startVideoCapture:](#VeLivePusher-startvideocapture) to start camera capture.
|
|
172
|
+
* @order 62
|
|
173
|
+
* @return - ≤0: The camera does not support exposure;
|
|
174
|
+
* - >0: The minimum exposure compensation.
|
|
175
|
+
*/
|
|
38
176
|
getMinExposureCompensation(): float;
|
|
39
177
|
|
|
178
|
+
/** {en}
|
|
179
|
+
* @detail api
|
|
180
|
+
* @brief Gets the maximum exposure compensation of the camera.
|
|
181
|
+
* @notes
|
|
182
|
+
* Call this method after calling [startVideoCapture:](#VeLivePusher-startvideocapture) to start camera capture.
|
|
183
|
+
* @order 63
|
|
184
|
+
* @return - ≤0: The camera does not support exposure;
|
|
185
|
+
* - >0: The maximum exposure compensation.
|
|
186
|
+
*/
|
|
40
187
|
getMaxExposureCompensation(): float;
|
|
41
188
|
|
|
189
|
+
/** {en}
|
|
190
|
+
* @detail api
|
|
191
|
+
* @brief Sets camera parameters.
|
|
192
|
+
* @notes Call this method after calling [startVideoCapture:](#VeLivePusher-startvideocapture) to start camera capture.
|
|
193
|
+
* @order 64
|
|
194
|
+
* @param parameter The parameter name (key) and the corresponding value.
|
|
195
|
+
*/
|
|
42
196
|
setParameter(parameter: NSDictionary): void;
|
|
43
197
|
|
|
198
|
+
/** {en}
|
|
199
|
+
* @detail api
|
|
200
|
+
* @brief Gets camera parameters.
|
|
201
|
+
* @notes
|
|
202
|
+
* Call this method after calling [startVideoCapture:](#VeLivePusher-startvideocapture) to start camera capture.
|
|
203
|
+
* @order 65
|
|
204
|
+
* @param key The parameter name.
|
|
205
|
+
* @return The value of the camera parameter. The data type is determined by the parameter name you set when calling the method.
|
|
206
|
+
*/
|
|
44
207
|
getParameter(key: NSString): id;
|
|
45
208
|
init(): this;
|
|
46
209
|
}
|
|
47
210
|
export declare class VeLiveMediaPlayer {
|
|
48
211
|
|
|
212
|
+
/** {en}
|
|
213
|
+
* @detail api
|
|
214
|
+
* @brief Sets the file path. Supported file formats include MP3, AAC, M4A, and WAV.
|
|
215
|
+
* @param url The file path.
|
|
216
|
+
* @order 1
|
|
217
|
+
* @return - 0: Success;
|
|
218
|
+
* - ≠ 0: Failure.
|
|
219
|
+
*/
|
|
49
220
|
prepare(url: NSString): int;
|
|
50
221
|
|
|
222
|
+
/** {en}
|
|
223
|
+
* @detail api
|
|
224
|
+
* @brief Destroys the media player instance.
|
|
225
|
+
* @order 3
|
|
226
|
+
*/
|
|
51
227
|
destroy(): void;
|
|
52
228
|
|
|
229
|
+
/** {en}
|
|
230
|
+
* @detail api
|
|
231
|
+
* @brief Sets the observer for playback statuses.
|
|
232
|
+
* @param listener The observer that listens for playback statuses. For details, see [VeLiveMediaPlayerListener](broadcast-sdk-for-ios-callback#VeLiveMediaPlayerListener).
|
|
233
|
+
* @notes If you make multiple calls to this method, only the last call takes effect.
|
|
234
|
+
* @order 4
|
|
235
|
+
*/
|
|
53
236
|
setListener(listener: id<VeLiveMediaPlayerListener>): void;
|
|
54
237
|
|
|
238
|
+
/** {en}
|
|
239
|
+
* @detail api
|
|
240
|
+
* @brief Sets the observer for audio and video frames.
|
|
241
|
+
* @param listener The observer that listens for audio and video frames. For details, see [VeLiveMediaPlayerFrameListener](broadcast-sdk-for-ios-callback#VeLiveMediaPlayerFrameListener).
|
|
242
|
+
* @notes <br>
|
|
243
|
+
* If you make multiple calls to this method, only the last call takes effect.
|
|
244
|
+
* @order 5
|
|
245
|
+
*/
|
|
55
246
|
setFrameListener(listener: id<VeLiveMediaPlayerFrameListener>): void;
|
|
56
247
|
|
|
248
|
+
/** {en}
|
|
249
|
+
* @detail api
|
|
250
|
+
* @brief Enables or disables mixing the audio to the live stream.
|
|
251
|
+
* @param enable Whether to enable or disable mixing the audio to the live stream. <br>
|
|
252
|
+
* - YES: Enable;
|
|
253
|
+
* - NO: (Default) Disable.
|
|
254
|
+
* @order 6
|
|
255
|
+
*/
|
|
57
256
|
enableMixer(enable: BOOL): void;
|
|
58
257
|
|
|
258
|
+
/** {en}
|
|
259
|
+
* @detail api
|
|
260
|
+
* @brief Enables or disables automatic volume equalization.
|
|
261
|
+
* @param sourceLufs The source volume.
|
|
262
|
+
* @param target The target volume.
|
|
263
|
+
* @order 7
|
|
264
|
+
* @param targetLufs The target volume.
|
|
265
|
+
*/
|
|
59
266
|
enableAutoEq(sourceLufs: float, targetLufs: float): void;
|
|
60
267
|
|
|
268
|
+
/** {en}
|
|
269
|
+
* @detail api
|
|
270
|
+
* @brief Sets the view for rendering the video. Supports MP4 format.
|
|
271
|
+
* @param view The view used by the media player to render video.
|
|
272
|
+
* @order 93
|
|
273
|
+
*/
|
|
61
274
|
setRenderView(view: UIView): void;
|
|
62
275
|
|
|
276
|
+
/** {en}
|
|
277
|
+
* @detail api
|
|
278
|
+
* @brief Sets whether to loop the media file.
|
|
279
|
+
* @param enable Whether to loop the media file. <br>
|
|
280
|
+
* - YES: Loop.
|
|
281
|
+
* - NO: (Default) Do not loop.
|
|
282
|
+
* @order 8
|
|
283
|
+
*/
|
|
63
284
|
enableBGMLoop(enable: BOOL): void;
|
|
64
285
|
|
|
286
|
+
/** {en}
|
|
287
|
+
* @detail api
|
|
288
|
+
* @brief Starts playback.
|
|
289
|
+
* @notes
|
|
290
|
+
* - This method must be called after you call [prepare:](#VeLiveMediaPlayer-prepare) to set the file path.
|
|
291
|
+
* - This method is an asynchronous operation. The media player starts playback when the [onStart](docs-broadcast-sdk-for-ios-callback#VeLiveMediaPlayerListener-onstart) callback is triggered.
|
|
292
|
+
* @order 9
|
|
293
|
+
* @return <br>
|
|
294
|
+
* - 0: Success;
|
|
295
|
+
* - ≠ 0: Failure.
|
|
296
|
+
*/
|
|
65
297
|
start(): Promise<int>;
|
|
66
298
|
|
|
299
|
+
/** {en}
|
|
300
|
+
* @detail api
|
|
301
|
+
* @brief Stops playback.
|
|
302
|
+
* @notes
|
|
303
|
+
* This method must be called after you call [start](#VeLiveMediaPlayer-start) to start playback.
|
|
304
|
+
* @order 10
|
|
305
|
+
* @return <br>
|
|
306
|
+
* - 0: Success;
|
|
307
|
+
* - ≠ 0: Failure.
|
|
308
|
+
*/
|
|
67
309
|
stop(): Promise<int>;
|
|
68
310
|
|
|
311
|
+
/** {en}
|
|
312
|
+
* @detail api
|
|
313
|
+
* @brief Pauses playback.
|
|
314
|
+
* @notes
|
|
315
|
+
* This method must be called after you call [start](#VeLiveMediaPlayer-start) to start playback.
|
|
316
|
+
* @order 11
|
|
317
|
+
*/
|
|
69
318
|
pause(): Promise<void>;
|
|
70
319
|
|
|
320
|
+
/** {en}
|
|
321
|
+
* @detail api
|
|
322
|
+
* @brief Resumes playback.
|
|
323
|
+
* @notes
|
|
324
|
+
* This method must be called after you call [pause](#VeLiveMediaPlayer-pause) to pause playback.
|
|
325
|
+
* @order 12
|
|
326
|
+
*/
|
|
71
327
|
resume(): Promise<void>;
|
|
72
328
|
|
|
329
|
+
/** {en}
|
|
330
|
+
* @detail api
|
|
331
|
+
* @brief Sets the playback progress.
|
|
332
|
+
* @param pos The playback progress, in milliseconds.
|
|
333
|
+
* @order 13
|
|
334
|
+
* @return <br>
|
|
335
|
+
* - 0: Success;
|
|
336
|
+
* - ≠ 0: Failure.
|
|
337
|
+
*/
|
|
73
338
|
seek(pos: long): int;
|
|
74
339
|
|
|
340
|
+
/** {en}
|
|
341
|
+
* @detail api
|
|
342
|
+
* @brief Gets the duration of the media file.
|
|
343
|
+
* @notes
|
|
344
|
+
* This method must be called after you call [start](#VeLiveMediaPlayer-start) to start playback.
|
|
345
|
+
* @order 2
|
|
346
|
+
* @return <br>
|
|
347
|
+
* - > 0: The duration of the media file, in milliseconds.
|
|
348
|
+
* - ≤ 0: Failure.
|
|
349
|
+
*/
|
|
75
350
|
getDuration(): long;
|
|
76
351
|
|
|
352
|
+
/** {en}
|
|
353
|
+
* @detail api
|
|
354
|
+
* @brief Sets the playback volume.
|
|
355
|
+
* @param volume The playback volume. The value range is [0.0, 4.0].
|
|
356
|
+
* @order 14
|
|
357
|
+
*/
|
|
77
358
|
setBGMVolume(volume: float): void;
|
|
78
359
|
|
|
360
|
+
/** {en}
|
|
361
|
+
* @detail api
|
|
362
|
+
* @brief Sets the audio capture volume.
|
|
363
|
+
* @param volume The audio capture volume. The value range is [0.0, 4.0].
|
|
364
|
+
* @notes
|
|
365
|
+
* This method must be called after you call [start](#VeLiveMediaPlayer-start) to start playing background music.
|
|
366
|
+
* @order 15
|
|
367
|
+
*/
|
|
79
368
|
setVoiceVolume(volume: float): void;
|
|
80
369
|
init(): this;
|
|
81
370
|
}
|
|
82
371
|
export declare class VeLiveAudioDevice {
|
|
83
372
|
|
|
373
|
+
/** {en}
|
|
374
|
+
* @detail api
|
|
375
|
+
* @brief Sets the volume.
|
|
376
|
+
* @param level The volume. The value range is [0.0,4.0].
|
|
377
|
+
* @order 60
|
|
378
|
+
*/
|
|
84
379
|
setVoiceLoudness(level: float): void;
|
|
85
380
|
|
|
381
|
+
/** {en}
|
|
382
|
+
* @detail api
|
|
383
|
+
* @brief Gets the current volume.
|
|
384
|
+
* @order 61
|
|
385
|
+
* @return <br>
|
|
386
|
+
* The current volume.
|
|
387
|
+
*/
|
|
86
388
|
getVoiceLoudness(): float;
|
|
87
389
|
|
|
390
|
+
/** {en}
|
|
391
|
+
* @detail api
|
|
392
|
+
* @brief Checks whether in-ear monitoring is supported.
|
|
393
|
+
* @return <br>
|
|
394
|
+
* - YES: Supported;
|
|
395
|
+
* - NO: Not supported.
|
|
396
|
+
* @order 62
|
|
397
|
+
*/
|
|
88
398
|
isSupportHardwareEcho(): BOOL;
|
|
89
399
|
|
|
400
|
+
/** {en}
|
|
401
|
+
* @detail api
|
|
402
|
+
* @brief Enables or disables in-ear monitoring.
|
|
403
|
+
* @param enable Whether to enable in-ear monitoring. <br>
|
|
404
|
+
* - YES: Enable;
|
|
405
|
+
* - NO: (Default) Disable.
|
|
406
|
+
* @notes
|
|
407
|
+
* Call this method after calling [startAudioCapture:](#VeLivePusher-startaudiocapture) to start audio capture.
|
|
408
|
+
* @order 64
|
|
409
|
+
*/
|
|
90
410
|
enableEcho(enable: BOOL): void;
|
|
91
411
|
|
|
412
|
+
/** {en}
|
|
413
|
+
* @detail api
|
|
414
|
+
* @brief Checks whether in-ear monitoring is enabled.
|
|
415
|
+
* @notes
|
|
416
|
+
* Call this method after calling [startAudioCapture:](#VeLivePusher-startaudiocapture) to start audio capture.
|
|
417
|
+
* @order 65
|
|
418
|
+
* @return <br>
|
|
419
|
+
* - YES: Enabled;
|
|
420
|
+
* - NO: Disabled.
|
|
421
|
+
*/
|
|
92
422
|
isEnableEcho(): BOOL;
|
|
93
423
|
init(): this;
|
|
94
424
|
}
|
|
95
425
|
export declare class VeLivePusher {
|
|
96
426
|
|
|
427
|
+
/** {en}
|
|
428
|
+
* @detail api
|
|
429
|
+
* @brief Sets the log level sent to the console.
|
|
430
|
+
* @param level The log level. See [VeLivePusherLogLevel](broadcast-sdk-for-ios-type-definition#VeLivePusherLogLevel) for details. The default value is 'VeLivePusherLogLevelNone', which means turning off logging.
|
|
431
|
+
* @order 50
|
|
432
|
+
*/
|
|
97
433
|
static setLogLevel(level: VeLivePusherLogLevel): void;
|
|
98
434
|
|
|
435
|
+
/** {en}
|
|
436
|
+
* @detail api
|
|
437
|
+
* @param applicationGroupIdentifier iOS app group identifier.
|
|
438
|
+
* @brief Starts screen capturing.
|
|
439
|
+
* @order 20
|
|
440
|
+
*/
|
|
99
441
|
startScreenCapture(applicationGroupIdentifier: NSString): void;
|
|
100
442
|
|
|
443
|
+
/** {en}
|
|
444
|
+
* @detail api
|
|
445
|
+
* @brief Stops the screen capturing process.
|
|
446
|
+
* @notes <br>
|
|
447
|
+
* This method completely terminates the current screen capture flow and releases associated resources. After calling this method, `pauseScreenCapture` and `resumeScreenCapture` will no longer be effective.
|
|
448
|
+
* @order 21
|
|
449
|
+
*/
|
|
101
450
|
stopScreenCapture(): void;
|
|
451
|
+
|
|
452
|
+
/** {en}
|
|
453
|
+
* @detail api
|
|
454
|
+
* @brief Pauses the screen capturing process.
|
|
455
|
+
* @notes <br>
|
|
456
|
+
* This method pauses the screen capture without releasing underlying resources. You can call `resumeScreenCapture` later to resume capturing. If the capture is already stopped or has not been started, calling this method has no effect.
|
|
457
|
+
* @order 22
|
|
458
|
+
*/
|
|
459
|
+
pauseScreenCapture(): void;
|
|
460
|
+
|
|
461
|
+
/** {en}
|
|
462
|
+
* @detail api
|
|
463
|
+
* @brief Resumes the screen capturing process.
|
|
464
|
+
* @notes <br>
|
|
465
|
+
* After calling `pauseScreenCapture`, use this method to resume screen capture output. If the capture has already been stopped or never started, calling this method has no effect.
|
|
466
|
+
* @order 23
|
|
467
|
+
*/
|
|
468
|
+
resumeScreenCapture(): void;
|
|
102
469
|
init(): this;
|
|
103
470
|
|
|
471
|
+
/** {en}
|
|
472
|
+
* @detail api
|
|
473
|
+
* @brief Initializes the live pusher.
|
|
474
|
+
* @param config The pusher configurations. See [VeLivePusherConfiguration](docs-broadcast-sdk-for-ios-type-definition#VeLivePusherConfiguration) for details.
|
|
475
|
+
* @order 0
|
|
476
|
+
*/
|
|
104
477
|
initWithConfig(config: VeLivePusherConfiguration): this;
|
|
105
478
|
|
|
479
|
+
/** {en}
|
|
480
|
+
* @detail api
|
|
481
|
+
* @brief Stops capturing and pushing streams and destroys the live pusher. Call this method after [stopPush](#VeLivePusher-stoppush) is called.
|
|
482
|
+
* @order 2
|
|
483
|
+
*/
|
|
106
484
|
destroy(): void;
|
|
107
485
|
|
|
486
|
+
/** {en}
|
|
487
|
+
* @detail api
|
|
488
|
+
* @brief Sets an observer to listen for live pusher events, including errors, statuses, network quality, device information, and first frame rendering.
|
|
489
|
+
* @param observer The observer. Refer to VeLivePusherObserver {@link #VeLivePusherObserver} for details.
|
|
490
|
+
* @notes <br>
|
|
491
|
+
* - This method must be called after the live pusher is created;
|
|
492
|
+
* - If you make multiple calls to this method, only the last call takes effect.
|
|
493
|
+
* @order 4
|
|
494
|
+
*/
|
|
108
495
|
setObserver(observer: id<VeLivePusherObserver>): void;
|
|
109
496
|
|
|
497
|
+
/** {en}
|
|
498
|
+
* @detail api
|
|
499
|
+
* @brief Sets an observer to periodically report push-stream statistics.
|
|
500
|
+
* @param observer The observer. Refer to VeLivePusherStatisticsObserver {@link #VeLivePusherStatisticsObserver} for details.
|
|
501
|
+
* @param interval The time interval between two callbacks, in seconds. The default value is `5`.
|
|
502
|
+
* @notes <br>
|
|
503
|
+
* - This method must be called after the live pusher is created;
|
|
504
|
+
* - If you make multiple calls to this method, only the last call takes effect.
|
|
505
|
+
* @order 6
|
|
506
|
+
*/
|
|
110
507
|
setStatisticsObserver(observer: id<VeLivePusherStatisticsObserver>, interval: int): void;
|
|
111
508
|
|
|
509
|
+
/** {en}
|
|
510
|
+
* @detail api
|
|
511
|
+
* @brief Adds a video frame listener.
|
|
512
|
+
* @param listener The listener. See VeLiveVideoFrameListener {@link #VeLiveVideoFrameListener} for details.
|
|
513
|
+
* @order 51
|
|
514
|
+
* @return <br>
|
|
515
|
+
* - 0: Success;
|
|
516
|
+
* - ≠ 0: Failure.
|
|
517
|
+
*/
|
|
112
518
|
addVideoFrameListener(listener: id<VeLiveVideoFrameListener>): int;
|
|
113
519
|
|
|
520
|
+
/** {en}
|
|
521
|
+
* @detail api
|
|
522
|
+
* @brief Removes the video frame listener.
|
|
523
|
+
* @param listener The listener. See [VeLiveVideoFrameListener](broadcast-sdk-for-ios-callback#VeLiveVideoFrameListener) for details.
|
|
524
|
+
* @notes <br>
|
|
525
|
+
* Calling this method will return a failure if the listener has not been added or has been removed.
|
|
526
|
+
* @order 52
|
|
527
|
+
* @return <br>
|
|
528
|
+
* - 0: Success;
|
|
529
|
+
* - <0: Failure.
|
|
530
|
+
*/
|
|
114
531
|
removeVideoFrameListener(listener: id<VeLiveVideoFrameListener>): int;
|
|
115
532
|
|
|
533
|
+
/** {en}
|
|
534
|
+
* @detail api
|
|
535
|
+
* @brief Adds an audio frame listener.
|
|
536
|
+
* @order 53
|
|
537
|
+
* @param listener The listener. See [VeLiveAudioFrameListener](docs-broadcast-sdk-for-ios-callback#VeLiveAudioFrameListener)for details.
|
|
538
|
+
* @return <br>
|
|
539
|
+
* - 0: Success;
|
|
540
|
+
* - <0: Failure.
|
|
541
|
+
*/
|
|
116
542
|
addAudioFrameListener(listener: id<VeLiveAudioFrameListener>): int;
|
|
117
543
|
|
|
544
|
+
/** {en}
|
|
545
|
+
* @detail api
|
|
546
|
+
* @brief Removes the audio frame listener.
|
|
547
|
+
* @notes <br>
|
|
548
|
+
* Calling this method will return a failure if the listener has not been added or has been removed.
|
|
549
|
+
* @order 54
|
|
550
|
+
* @param listener The listener. See [VeLiveAudioFrameListener](docs-broadcast-sdk-for-ios-callback#VeLiveAudioFrameListener) for details.
|
|
551
|
+
* @return <br>
|
|
552
|
+
* - 0: Success;
|
|
553
|
+
* - <0: Failure.
|
|
554
|
+
*/
|
|
118
555
|
removeAudioFrameListener(listener: id<VeLiveAudioFrameListener>): int;
|
|
119
556
|
|
|
557
|
+
/** {en}
|
|
558
|
+
* @brief Sets the observer for screen capturing events.
|
|
559
|
+
* @notes Calling this method will return a failure if the listener has not been added or has been removed.
|
|
560
|
+
* @param observer The observer for screen capturing events. For details, refer to [VeLiveScreenCaptureStatusObserver](docs-broadcast-sdk-for-ios-callback#VeLiveScreenCaptureStatusObserver).
|
|
561
|
+
* @order 5
|
|
562
|
+
* @return - 0: Success;
|
|
563
|
+
* - <0: Failure.
|
|
564
|
+
*/
|
|
120
565
|
setScreenCaptureObserver(observer: id<VeLiveScreenCaptureStatusObserver>): int;
|
|
121
566
|
|
|
567
|
+
/** {en}
|
|
568
|
+
* @detail api
|
|
569
|
+
* @brief Sets the preview for the local camera. If beauty AR is applied to the captured video or if it undergoes any other processing, the preview will display the processed video.
|
|
570
|
+
* @param view The preview view.
|
|
571
|
+
* @order 7
|
|
572
|
+
*/
|
|
122
573
|
setRenderView(view: UIView): Promise<void>;
|
|
123
574
|
|
|
575
|
+
/** {en}
|
|
576
|
+
* @detail api
|
|
577
|
+
* @order 10
|
|
578
|
+
* @brief Sets the fill mode of the local preview.
|
|
579
|
+
* @param fillMode The fill mode. See VeLivePusherRenderMode {@link #VeLivePusherRenderMode} for details.
|
|
580
|
+
*/
|
|
124
581
|
setRenderFillMode(fillMode: VeLivePusherRenderMode): void;
|
|
125
582
|
|
|
583
|
+
/** {en}
|
|
584
|
+
* @detail api
|
|
585
|
+
* @brief Enables or disables mirroring for the local preview and the streamed video.
|
|
586
|
+
* @order 8
|
|
587
|
+
* @param type Mirror mode. See [VeLiveVideoMirrorType](broadcast-sdk-for-ios-type-definition#VeLiveVideoMirrorType) for details.
|
|
588
|
+
* @param enable Whether to enable mirroring.<br>
|
|
589
|
+
* - YES: Enable;
|
|
590
|
+
* - NO: Disable.
|
|
591
|
+
*/
|
|
126
592
|
setVideoMirror(type: VeLiveVideoMirrorType, enable: BOOL): void;
|
|
127
593
|
|
|
594
|
+
/** {en}
|
|
595
|
+
* @detail api
|
|
596
|
+
* @brief Starts streaming.
|
|
597
|
+
* @param url The push stream address.
|
|
598
|
+
* @order 24
|
|
599
|
+
*/
|
|
128
600
|
startPush(url: NSString): void;
|
|
129
601
|
|
|
602
|
+
/** {en}
|
|
603
|
+
* @detail api
|
|
604
|
+
* @brief Starts streaming with one or more push stream addresses.
|
|
605
|
+
* @param urls A list of push stream addresses.
|
|
606
|
+
* @notes <br>
|
|
607
|
+
* When the first push stream address in the array is unavailable, the SDK will automatically switch to the subsequent addresses.
|
|
608
|
+
* @order 25
|
|
609
|
+
*/
|
|
130
610
|
startPushWithUrls(urls: NSArray<NSString>): void;
|
|
131
611
|
|
|
612
|
+
/** {en}
|
|
613
|
+
* @detail api
|
|
614
|
+
* @brief Stops streaming.
|
|
615
|
+
* @notes
|
|
616
|
+
* After you have stopped streaming, you can restart streaming by calling [startPush:](#VeLivePusher-startpush) or [startPushWithUrls:](#VeLivePusher-startpushwithurls).
|
|
617
|
+
* @order 26
|
|
618
|
+
*/
|
|
132
619
|
stopPush(): void;
|
|
133
620
|
|
|
621
|
+
/** {en}
|
|
622
|
+
* @detail api
|
|
623
|
+
* @brief Checks whether the streaming is currently ongoing. You can use this method to query the status of the live pusher.
|
|
624
|
+
* @order 27
|
|
625
|
+
* @return <br>
|
|
626
|
+
* Whether the streaming is currently ongoing.<br>
|
|
627
|
+
* - YES: The streaming is currently ongoing;
|
|
628
|
+
* - NO: The streaming has stopped.
|
|
629
|
+
*/
|
|
134
630
|
isPushing(): BOOL;
|
|
135
631
|
|
|
632
|
+
/** {en}
|
|
633
|
+
* @detail api
|
|
634
|
+
* @brief Starts video capture.
|
|
635
|
+
* @param type The video capture type. See VeLiveVideoCaptureType {@link #VeLiveVideoCaptureType} for details.
|
|
636
|
+
* @notes
|
|
637
|
+
* After calling this method, you can stop video capture by calling [stopVideoCapture](#VeLivePusher-stopvideocapture).
|
|
638
|
+
* @order 11
|
|
639
|
+
*/
|
|
136
640
|
startVideoCapture(type: VeLiveVideoCaptureType): void;
|
|
137
641
|
|
|
642
|
+
/** {en}
|
|
643
|
+
* @detail api
|
|
644
|
+
* @brief Stops video capture.
|
|
645
|
+
* @notes
|
|
646
|
+
* After calling this method, you can start video capture by calling [startVideoCapture:](#VeLivePusher-startvideocapture).
|
|
647
|
+
* @order 12
|
|
648
|
+
*/
|
|
138
649
|
stopVideoCapture(): void;
|
|
139
650
|
|
|
651
|
+
/** {en}
|
|
652
|
+
* @detail api
|
|
653
|
+
* @brief Switches the video capture type.
|
|
654
|
+
* @notes
|
|
655
|
+
* This method must be called after [startVideoCapture:](#VeLivePusher-startvideocapture) is called.
|
|
656
|
+
* @order 13
|
|
657
|
+
* @param type The video capture type. See VeLiveVideoCaptureType{@link #VeLiveVideoCaptureType} for details.
|
|
658
|
+
*/
|
|
140
659
|
switchVideoCapture(type: VeLiveVideoCaptureType): void;
|
|
141
660
|
|
|
661
|
+
/** {en}
|
|
662
|
+
* @detail api
|
|
663
|
+
* @brief Starts audio capture.
|
|
664
|
+
* @param type The audio capture type. See VeLiveAudioCaptureType {@link #VeLiveAudioCaptureType} for details.
|
|
665
|
+
* @notes
|
|
666
|
+
* After calling this method, you can stop audio capture by calling [stopAudioCapture](#VeLivePusher-stopaudiocapture).
|
|
667
|
+
* @order 15
|
|
668
|
+
*/
|
|
142
669
|
startAudioCapture(type: VeLiveAudioCaptureType): void;
|
|
143
670
|
|
|
671
|
+
/** {en}
|
|
672
|
+
* @detail api
|
|
673
|
+
* @brief Stops audio capture.
|
|
674
|
+
* @notes
|
|
675
|
+
* After calling this method, you can start audio capture by calling [startAudioCapture:](#VeLivePusher-startaudiocapture).
|
|
676
|
+
* @order 16
|
|
677
|
+
*/
|
|
144
678
|
stopAudioCapture(): void;
|
|
145
679
|
|
|
680
|
+
/** {en}
|
|
681
|
+
* @detail api
|
|
682
|
+
* @brief Switches audio capture type.
|
|
683
|
+
* @param type The audio capture type. See VeLiveAudioCaptureType {@link #VeLiveAudioCaptureType} for details.
|
|
684
|
+
* @notes
|
|
685
|
+
* This method must be called after [startAudioCapture:](#VeLivePusher-startaudiocapture) is called.
|
|
686
|
+
* @order 17
|
|
687
|
+
*/
|
|
146
688
|
switchAudioCapture(type: VeLiveAudioCaptureType): void;
|
|
147
689
|
|
|
690
|
+
/** {en}
|
|
691
|
+
* @detail api
|
|
692
|
+
* @brief Gets the current video capture type.
|
|
693
|
+
* @order 14
|
|
694
|
+
* @return
|
|
695
|
+
* The video capture type. See [VeLiveVideoCaptureType](docs-broadcast-sdk-for-ios-type-definition#VeLiveVideoCaptureType) for details.
|
|
696
|
+
*/
|
|
148
697
|
getCurrentVideoCaptureType(): VeLiveVideoCaptureType;
|
|
149
698
|
|
|
699
|
+
/** {en}
|
|
700
|
+
* @detail api
|
|
701
|
+
* @brief Gets the current audio capture type.
|
|
702
|
+
* @order 18
|
|
703
|
+
* @return
|
|
704
|
+
* The audio capture type. See [VeLiveAudioCaptureType](docs-broadcast-sdk-for-ios-type-definition#VeLiveAudioCaptureType) for details.
|
|
705
|
+
*/
|
|
150
706
|
getCurrentAudioCaptureType(): VeLiveAudioCaptureType;
|
|
151
707
|
|
|
708
|
+
/** {en}
|
|
709
|
+
* @detail api
|
|
710
|
+
* @brief Sets a static image to push. When using this method, you must call [startVideoCapture:](#VeLivePusher-startvideocapture) and set [VeLiveVideoCaptureType](docs-broadcast-sdk-for-ios-type-definition#VeLiveVideoCaptureType) to `VeLiveVideoCaptureCustomImage`.
|
|
711
|
+
* @order 19
|
|
712
|
+
* @param image The static image to push.
|
|
713
|
+
*/
|
|
152
714
|
updateCustomImage(image: UIImage): Promise<void>;
|
|
153
715
|
|
|
716
|
+
/** {en}
|
|
717
|
+
* @detail api
|
|
718
|
+
* @brief Sets whether to mute the stream.
|
|
719
|
+
* @param mute Whether to mute the stream.<br>
|
|
720
|
+
* - YES: Mute;
|
|
721
|
+
* - NO: (Default) Do not mute.
|
|
722
|
+
* @order 22
|
|
723
|
+
*/
|
|
154
724
|
setMute(mute: BOOL): void;
|
|
155
725
|
|
|
726
|
+
/** {en}
|
|
727
|
+
* @detail api
|
|
728
|
+
* @brief Checks whether the stream is muted.
|
|
729
|
+
* @order 23
|
|
730
|
+
* @return <br>
|
|
731
|
+
* - YES: The stream is muted.
|
|
732
|
+
* - NO: The stream is not muted.
|
|
733
|
+
*/
|
|
156
734
|
isMute(): BOOL;
|
|
157
735
|
|
|
736
|
+
/** {en}
|
|
737
|
+
* @detail api
|
|
738
|
+
* @brief Sets video encoding parameters for the pushed stream.
|
|
739
|
+
* @param config The video encoding parameters, including the video resolution, encoding format, target bitrate, and GOP size. For details, see VeLiveVideoEncoderConfiguration {@link #VeLiveVideoEncoderConfiguration}.
|
|
740
|
+
* @notes <br>
|
|
741
|
+
* This method can be called before or after live streaming starts.
|
|
742
|
+
* @order 29
|
|
743
|
+
*/
|
|
158
744
|
setVideoEncoderConfiguration(config: VeLiveVideoEncoderConfiguration): void;
|
|
159
745
|
|
|
746
|
+
/** {en}
|
|
747
|
+
* @detail api
|
|
748
|
+
* @brief Sets audio encoding parameters for the pushed stream.
|
|
749
|
+
* @param config The audio encoding parameters. See VeLiveAudioEncoderConfiguration {@link #VeLiveAudioEncoderConfiguration} for details.
|
|
750
|
+
* @notes
|
|
751
|
+
* This method must be called before calling [startPush:](#VeLivePusher-startpush) or [startPushWithUrls:](#VeLivePusher-startpushwithurls).
|
|
752
|
+
* @order 28
|
|
753
|
+
*/
|
|
160
754
|
setAudioEncoderConfiguration(config: VeLiveAudioEncoderConfiguration): void;
|
|
161
755
|
|
|
756
|
+
/** {en}
|
|
757
|
+
* @detail api
|
|
758
|
+
* @brief Starts local recording.
|
|
759
|
+
* @param path The directory for saving the recording file. You cannot leave this parameter empty.
|
|
760
|
+
* @param config The recording configurations. See VeLiveFileRecorderConfiguration {@link #VeLiveFileRecorderConfiguration} for details.
|
|
761
|
+
* @param listener The listener for recording events. See VeLiveFileRecordingListener {@link #VeLiveFileRecordingListener} for details.
|
|
762
|
+
* @order 44
|
|
763
|
+
*/
|
|
162
764
|
startFileRecording(path: NSString, config: VeLiveFileRecorderConfiguration, listener: id<VeLiveFileRecordingListener>): void;
|
|
163
765
|
|
|
766
|
+
/** {en}
|
|
767
|
+
* @detail api
|
|
768
|
+
* @brief Stops local recording.
|
|
769
|
+
* @notes
|
|
770
|
+
* This method must be called after calling [startFileRecording](#VeLivePusher-startfilerecording-config-listener).
|
|
771
|
+
* @order 46
|
|
772
|
+
*/
|
|
164
773
|
stopFileRecording(): void;
|
|
165
774
|
|
|
775
|
+
/** {en}
|
|
776
|
+
* @detail api
|
|
777
|
+
* @brief Gets the camera manager. With the camera manager, you can do the following:
|
|
778
|
+
* - Control the flashlight
|
|
779
|
+
* - Set the camera zoom
|
|
780
|
+
* - Set autofocus
|
|
781
|
+
* @notes
|
|
782
|
+
* To use this method, you must first call [startVideoCapture:](#VeLivePusher-startvideocapture) and set [VeLiveVideoCaptureType](docs-broadcast-sdk-for-ios-type-definition#VeLiveVideoCaptureType) to `VeLiveVideoCaptureFrontCamera` or `VeLiveVideoCaptureBackCamera`.
|
|
783
|
+
* @order 32
|
|
784
|
+
* @return
|
|
785
|
+
* The camera manager. See [VeLiveCameraDevice](#VeLiveCameraDevice) for details.
|
|
786
|
+
*/
|
|
166
787
|
getCameraDevice(): VeLiveCameraDevice;
|
|
167
788
|
|
|
789
|
+
/** {en}
|
|
790
|
+
* @detail api
|
|
791
|
+
* @brief Gets the audio device manager.
|
|
792
|
+
* @notes
|
|
793
|
+
* To use this method, you must first call [startAudioCapture:](#VeLivePusher-startaudiocapture) and set [VeLiveAudioCaptureType](docs-broadcast-sdk-for-ios-type-definition#VeLiveAudioCaptureType) to `VeLiveAudioCaptureMicrophone`.
|
|
794
|
+
* @order 33
|
|
795
|
+
* @return
|
|
796
|
+
* The audio device manager. See [VeLiveAudioDevice](#VeLiveAudioDevice) for details.
|
|
797
|
+
*/
|
|
168
798
|
getAudioDevice(): VeLiveAudioDevice;
|
|
169
799
|
|
|
800
|
+
/** {en}
|
|
801
|
+
* @detail api
|
|
802
|
+
* @brief Gets the special effects manager. With the special effects manager, you can do the following:
|
|
803
|
+
* - Set beauty AR
|
|
804
|
+
* - Set special effects
|
|
805
|
+
* - Set materials
|
|
806
|
+
* - Set stickers
|
|
807
|
+
* - Set filters
|
|
808
|
+
* @notes <br>
|
|
809
|
+
* You must first integrate the BytePlus Effects SDK before calling this method.
|
|
810
|
+
* @order 31
|
|
811
|
+
* @return
|
|
812
|
+
* The special effects manager. See [VeLiveVideoEffectManager](#VeLiveVideoEffectManager) for details.
|
|
813
|
+
*/
|
|
170
814
|
getVideoEffectManager(): VeLiveVideoEffectManager;
|
|
171
815
|
|
|
816
|
+
/** {en}
|
|
817
|
+
* @detail api
|
|
818
|
+
* @brief Creates the media player.
|
|
819
|
+
* @order 3
|
|
820
|
+
* @return
|
|
821
|
+
* The media player. See [VeLiveMediaPlayer](#VeLiveMediaPlayer) for details.
|
|
822
|
+
*/
|
|
172
823
|
createPlayer(): VeLiveMediaPlayer;
|
|
173
824
|
|
|
825
|
+
/** {en}
|
|
826
|
+
* @detail api
|
|
827
|
+
* @brief Sets a protocol for custom video processing.
|
|
828
|
+
* @param filter The protocol for custom video processing. See VeLiveVideoFrameFilter {@link #VeLiveVideoFrameFilter} for details.
|
|
829
|
+
* @order 36
|
|
830
|
+
*/
|
|
174
831
|
setVideoFrameFilter(filter: id<VeLiveVideoFrameFilter>): void;
|
|
175
832
|
|
|
833
|
+
/** {en}
|
|
834
|
+
* @detail api
|
|
835
|
+
* @brief Sets custom audio processing.
|
|
836
|
+
* @param filter The audio filter. See VeLiveAudioFrameFilter {@link #VeLiveAudioFrameFilter} for details.
|
|
837
|
+
* @order 40
|
|
838
|
+
*/
|
|
176
839
|
setAudioFrameFilter(filter: id<VeLiveAudioFrameFilter>): void;
|
|
177
840
|
|
|
841
|
+
/** {en}
|
|
842
|
+
* @detail api
|
|
843
|
+
* @brief Sets the orientation of the pushed video frame. The default orientation is portrait.
|
|
844
|
+
* @param orientation The orientation of the pushed video frame.
|
|
845
|
+
* @order 9
|
|
846
|
+
*/
|
|
178
847
|
setOrientation(orientation: UIInterfaceOrientation): void;
|
|
179
848
|
|
|
849
|
+
/** {en}
|
|
850
|
+
* @detail api
|
|
851
|
+
* @brief Sets a watermark for the pushed stream.
|
|
852
|
+
* @param image The watermark image. Setting it to null means disabling watermarking.
|
|
853
|
+
* @param x The horizontal offset of the watermark, which represents the ratio of the distance between the left edge of the watermark and the left edge of the video to the width of the video. The value range is [0.0,1.0].
|
|
854
|
+
* @param y The vertical offset of the watermark, which represents the ratio of the distance between the top edge of the watermark and the top edge of the video to the height of the video. The value range is [0.0,1.0].
|
|
855
|
+
* @param scale The uniform scaling of the watermark. The value range is [0.0,1.0].
|
|
856
|
+
* @order 35
|
|
857
|
+
* @return <br>
|
|
858
|
+
* - 0: Success;
|
|
859
|
+
* - <0: Failure.
|
|
860
|
+
*/
|
|
180
861
|
setWatermark(image: UIImage, x: float, y: float, scale: float): Promise<int>;
|
|
181
862
|
|
|
863
|
+
/** {en}
|
|
864
|
+
* @detail api
|
|
865
|
+
* @brief Takes a screenshot.
|
|
866
|
+
* @param listener The listener for the screenshot. See VeLiveSnapshotListener {@link #VeLiveSnapshotListener} for details.
|
|
867
|
+
* @order 34
|
|
868
|
+
*/
|
|
182
869
|
snapshot(listener: id<VeLiveSnapshotListener>): void;
|
|
183
870
|
|
|
871
|
+
/** {en}
|
|
872
|
+
* @detail api
|
|
873
|
+
* @brief Sends an SEI message through the video frame. The SEI messages are strings in JSON format.
|
|
874
|
+
* @param key The JSON key.
|
|
875
|
+
* @param value The JSON value.
|
|
876
|
+
* @param repeat The number of times the message is sent. For example, if you set `repeat` to `20` and set `isKeyFrame` to `YES`, the SDK will add the SEI message to 20 consecutive key frames starting from the time the method is called.
|
|
877
|
+
* @param isKeyFrame Whether to add the SEI message to key frames only. <br>
|
|
878
|
+
* - YES: Add the SEI message to key frames only.
|
|
879
|
+
* - NO: Add the SEI message to all types of frames.
|
|
880
|
+
* @param allowsCovered Whether to allow overwriting. <br>
|
|
881
|
+
* - YES: Allow overwriting.
|
|
882
|
+
* - NO: Do not allow overwriting.
|
|
883
|
+
* @notes
|
|
884
|
+
* This method must be called after calling [startPush:](#VeLivePusher-startpush) or [startPushWithUrls:](#VeLivePusher-startpushwithurls).
|
|
885
|
+
* @order 41
|
|
886
|
+
* @return <br>
|
|
887
|
+
* - 0: Success;
|
|
888
|
+
* - <0: Failure.
|
|
889
|
+
*/
|
|
184
890
|
sendSeiMessage(key: NSString, value: id, repeat: int, isKeyFrame: BOOL, allowsCovered: BOOL): int;
|
|
185
891
|
|
|
892
|
+
/** {en}
|
|
893
|
+
* @detail api
|
|
894
|
+
* @brief Pushes an external video frame.
|
|
895
|
+
* @notes
|
|
896
|
+
* Before calling this method, you must first call [startVideoCapture:](#VeLivePusher-startvideocapture) and set [VeLiveVideoCaptureType](docs-broadcast-sdk-for-ios-type-definition#VeLiveVideoCaptureType) to `VeLiveVideoCaptureExternal`.
|
|
897
|
+
* @order 37
|
|
898
|
+
* @param frame The external video frame. See VeLiveVideoFrame {@link #VeLiveVideoFrame} for details.
|
|
899
|
+
* @return <br>
|
|
900
|
+
* - 0: Success;
|
|
901
|
+
* - <0: Failure.
|
|
902
|
+
*/
|
|
186
903
|
pushExternalVideoFrame(frame: VeLiveVideoFrame): int;
|
|
187
904
|
|
|
905
|
+
/** {en}
|
|
906
|
+
* @detail api
|
|
907
|
+
* @brief Pushes an external encoded video frame.
|
|
908
|
+
* @notes
|
|
909
|
+
* Before calling this method, you must first call [startVideoCapture:](#VeLivePusher-startvideocapture) and set [VeLiveVideoCaptureType](docs-broadcast-sdk-for-ios-type-definition#VeLiveVideoCaptureType) to `VeLiveVideoCaptureFrontCamera` or `VeLiveVideoCaptureExternal`.
|
|
910
|
+
* @order 38
|
|
911
|
+
* @param encodeFrame The external encoded video frame. See VeLiveVideoEncodeFrame {@link #VeLiveVideoEncodeFrame} for details.
|
|
912
|
+
* @return <br>
|
|
913
|
+
* - 0: Success;
|
|
914
|
+
* - <0: Failure.
|
|
915
|
+
*/
|
|
188
916
|
pushExternalVideoEncodeFrame(encodeFrame: VeLiveVideoEncodeFrame): int;
|
|
189
917
|
|
|
918
|
+
/** {en}
|
|
919
|
+
* @detail api
|
|
920
|
+
* @brief Pushes an external audio frame.
|
|
921
|
+
* @param frame The external audio frame. See VeLiveAudioFrame {@link #VeLiveAudioFrame} for details.
|
|
922
|
+
* @notes
|
|
923
|
+
* To use this method, you must first call [startAudioCapture:](#VeLivePusher-startaudiocapture) and set [VeLiveAudioCaptureType](docs-broadcast-sdk-for-ios-type-definition#VeLiveAudioCaptureType) to `VeLiveAudioCaptureExternal`.
|
|
924
|
+
* @order 39
|
|
925
|
+
* @return <br>
|
|
926
|
+
* - 0: Success;
|
|
927
|
+
* - <0: Failure.
|
|
928
|
+
*/
|
|
190
929
|
pushExternalAudioFrame(frame: VeLiveAudioFrame): int;
|
|
191
930
|
|
|
931
|
+
/** {en}
|
|
932
|
+
* @detail api
|
|
933
|
+
* @brief Set advanced configurations. You can [create a ticket](https://console.byteplus.com/workorder/create?step=2&SubProductID=P00000980) to contact BytePlus technical support for more information about how to use this method.
|
|
934
|
+
* @param key The JSON key.
|
|
935
|
+
* @param value The JSON value. We recommend that you set it to an NSDictionary or NSString object.
|
|
936
|
+
* @order 42
|
|
937
|
+
* @return <br>
|
|
938
|
+
* - 0: Success;
|
|
939
|
+
* - -1: Failure.
|
|
940
|
+
*/
|
|
192
941
|
setProperty(key: NSString, value: id): int;
|
|
193
942
|
|
|
943
|
+
/** {en}
|
|
944
|
+
* @detail api
|
|
945
|
+
* @brief Request to encode a new IDR frame.
|
|
946
|
+
* @notes
|
|
947
|
+
* This method must be called after calling [startPush:](#VeLivePusher-startpush) or [startPushWithUrls:](#VeLivePusher-startpushwithurls).
|
|
948
|
+
* @order 49
|
|
949
|
+
*/
|
|
194
950
|
requestIDRFrame(): void;
|
|
195
951
|
}
|
|
196
952
|
export declare class VeLiveVideoEffectManager {
|
|
197
953
|
|
|
954
|
+
/** {en}
|
|
955
|
+
* @detail api
|
|
956
|
+
* @brief Initializes the special effects manager.
|
|
957
|
+
* @param config The special effects configurations. See VeLiveVideoEffectLicenseConfiguration {@link #VeLiveVideoEffectLicenseConfiguration} for details.
|
|
958
|
+
* @order 76
|
|
959
|
+
* @return <br>
|
|
960
|
+
* - 0: Success;
|
|
961
|
+
* - -1: Failure.
|
|
962
|
+
*/
|
|
198
963
|
setupWithConfig(config: VeLiveVideoEffectLicenseConfiguration): int;
|
|
199
964
|
|
|
965
|
+
/** {en}
|
|
966
|
+
* @detail api
|
|
967
|
+
* @brief Updates the special effects license after the existing license expires. This method is effective only if you authenticate the license online.
|
|
968
|
+
* @param completion The result callback.
|
|
969
|
+
* @notes
|
|
970
|
+
* - Call this method after you set the video effects license by calling [setupWithConfig:](#VeLiveVideoEffectManager-setupwithconfig);
|
|
971
|
+
* - This method is an asynchronous operation.
|
|
972
|
+
* @order 76
|
|
973
|
+
*/
|
|
200
974
|
updateLicense(completion: (result: number, message: string) => void): void;
|
|
201
975
|
|
|
976
|
+
/** {en}
|
|
977
|
+
* @detail api
|
|
978
|
+
* @brief Sets the path to the algorithm models of the special effects.
|
|
979
|
+
* @param path The path to the algorithm models of the special effects.
|
|
980
|
+
* @notes
|
|
981
|
+
* Call this method after you set the special effects license by calling [setupWithConfig:](#VeLiveVideoEffectManager-setupwithconfig).
|
|
982
|
+
* @order 77
|
|
983
|
+
* @return <br>
|
|
984
|
+
* - 0: Success;
|
|
985
|
+
* - -1: Failure.
|
|
986
|
+
*/
|
|
202
987
|
setAlgoModelPath(path: NSString): int;
|
|
203
988
|
|
|
989
|
+
/** {en}
|
|
990
|
+
* @detail api
|
|
991
|
+
* @brief Creates or destroys the special effects engine.
|
|
992
|
+
* @notes
|
|
993
|
+
* - Call this method after calling [setupWithConfig:](#VeLiveVideoEffectManager-setupwithconfig) and [setAlgoModelPath:](#VeLiveVideoEffectManager-setalgomodelpath).
|
|
994
|
+
* - This method does not enable or disable video special effects. Call [setComposeNodes:](#VeLiveVideoEffectManager-setcomposenodes) after calling this method to enable video special effects.
|
|
995
|
+
* - In most cases, the special effects engine will be destroyed when the effects manager is destroyed. However, if you have high performance requirements, you can call this method to manually destroy the special effects engine when you are not using special effects-related features.
|
|
996
|
+
* - Creating or destroying the special effects engine repeatedly can result in increased processing time.
|
|
997
|
+
* @order 78
|
|
998
|
+
* @param enable Whether to create or destroy the special effects engine. <br>
|
|
999
|
+
* - YES: Create.
|
|
1000
|
+
* - NO: (Default) Destroy.
|
|
1001
|
+
* @return <br>
|
|
1002
|
+
* - 0: Success;
|
|
1003
|
+
* - -1: Failure.
|
|
1004
|
+
*/
|
|
204
1005
|
setEnable(enable: BOOL): int;
|
|
205
1006
|
|
|
1007
|
+
/** {en}
|
|
1008
|
+
* @detail api
|
|
1009
|
+
* @brief Sets the special effects you want to apply to the video. You can choose effects from ComposeMakeup.bundle.
|
|
1010
|
+
* @notes
|
|
1011
|
+
* - Call this method after calling [setEnable:](#VeLiveVideoEffectManager-setenable).
|
|
1012
|
+
* - If you make multiple calls to this method, only the last call takes effect.
|
|
1013
|
+
* - To add more effects to the existing effects settings, call [appendComposeNodes:](#VeLiveVideoEffectManager-appendcomposenodes).
|
|
1014
|
+
* @order 79
|
|
1015
|
+
* @param nodes The paths to the special effects resources.
|
|
1016
|
+
* @return <br>
|
|
1017
|
+
* - 0: Success.
|
|
1018
|
+
* - -1: Failure.
|
|
1019
|
+
*/
|
|
206
1020
|
setComposeNodes(nodes: NSArray<NSString>): int;
|
|
207
1021
|
|
|
1022
|
+
/** {en}
|
|
1023
|
+
* @detail api
|
|
1024
|
+
* @brief Adds one or more effects to the existing effects settings that you have configured with [setComposeNodes:](#VeLiveVideoEffectManager-setcomposenodes).
|
|
1025
|
+
* @notes Call this method after calling [setEnable:](#VeLiveVideoEffectManager-setenable).
|
|
1026
|
+
* @order 80
|
|
1027
|
+
* @param nodes The paths to the special effects resources.
|
|
1028
|
+
* @return <br>
|
|
1029
|
+
* - 0: Success.
|
|
1030
|
+
* - -1: Failure.
|
|
1031
|
+
*/
|
|
208
1032
|
appendComposeNodes(nodes: NSArray<NSString>): int;
|
|
209
1033
|
|
|
1034
|
+
/** {en}
|
|
1035
|
+
* @detail api
|
|
1036
|
+
* @brief Removes one or more special effects resources set by the [setComposeNodes:](#VeLiveVideoEffectManager-setcomposenodes) or [ppendComposeNodes:](#VeLiveVideoEffectManager-appendcomposenodes) methods.
|
|
1037
|
+
* @notes Call this method after calling [setEnable:](#VeLiveVideoEffectManager-setenable).
|
|
1038
|
+
* @order 81
|
|
1039
|
+
* @param nodes The paths to the special effects resources.
|
|
1040
|
+
* @return <br>
|
|
1041
|
+
* - 0: Success.
|
|
1042
|
+
* - -1: Failure.
|
|
1043
|
+
*/
|
|
210
1044
|
removeComposeNodes(nodes: NSArray<NSString>): int;
|
|
211
1045
|
|
|
1046
|
+
/** {en}
|
|
1047
|
+
* @detail api
|
|
1048
|
+
* @brief Sets the intensity of a special effect.
|
|
1049
|
+
* @notes
|
|
1050
|
+
* - Call this method after calling [setComposeNodes:](#VeLiveVideoEffectManager-setcomposenodes) or [appendComposeNodes:](#VeLiveVideoEffectManager-appendcomposenodes).
|
|
1051
|
+
* - This method is only applicable to special effects that contain the three parameters mentioned above. For effects that do not have the intensity parameter, such as stickers, the method does not have any effect.
|
|
1052
|
+
* @order 82
|
|
1053
|
+
* @param node The path to the special effects resource.
|
|
1054
|
+
* @param key The key of the resource.
|
|
1055
|
+
* @param intensity The intensity of the effect. The value range is [0.0, 1.0]
|
|
1056
|
+
* @return <br>
|
|
1057
|
+
* - 0: Success.
|
|
1058
|
+
* - -1: Failure.
|
|
1059
|
+
*/
|
|
212
1060
|
updateComposerNodeIntensity(node: NSString, key: NSString, intensity: float): int;
|
|
213
1061
|
|
|
1062
|
+
/** {en}
|
|
1063
|
+
* @detail api
|
|
1064
|
+
* @brief Sets the color filter.
|
|
1065
|
+
* @notes
|
|
1066
|
+
* Call this method after calling [setEnable:](#VeLiveVideoEffectManager-setenable).
|
|
1067
|
+
* @order 83
|
|
1068
|
+
* @param path The absolute path to the filter resource.
|
|
1069
|
+
* @return <br>
|
|
1070
|
+
* - 0: Success.
|
|
1071
|
+
* - -1: Failure.
|
|
1072
|
+
*/
|
|
214
1073
|
setFilter(path: NSString): int;
|
|
215
1074
|
|
|
1075
|
+
/** {en}
|
|
1076
|
+
* @detail api
|
|
1077
|
+
* @brief Sets the intensity of the color filter.
|
|
1078
|
+
* @param intensity The intensity. The value range is [0.0, 1.0].
|
|
1079
|
+
* @notes
|
|
1080
|
+
* Call this method after calling [setFilter:](#VeLiveVideoEffectManager-setfilter).
|
|
1081
|
+
* @order 84
|
|
1082
|
+
* @return <br>
|
|
1083
|
+
* - 0: Success.
|
|
1084
|
+
* - -1: Failure.
|
|
1085
|
+
*/
|
|
216
1086
|
updateFilterIntensity(intensity: float): int;
|
|
217
1087
|
|
|
1088
|
+
/** {en}
|
|
1089
|
+
* @detail api
|
|
1090
|
+
* @brief Sets the sticker.
|
|
1091
|
+
* @param path The absolute path to the sticker resource.
|
|
1092
|
+
* @notes
|
|
1093
|
+
* Call this method after calling [setEnable:](#VeLiveVideoEffectManager-setenable).
|
|
1094
|
+
* @order 85
|
|
1095
|
+
* @return <br>
|
|
1096
|
+
* - 0: Success.
|
|
1097
|
+
* - -1: Failure.
|
|
1098
|
+
*/
|
|
218
1099
|
setSticker(path: NSString): int;
|
|
219
1100
|
|
|
1101
|
+
/** {en}
|
|
1102
|
+
* @detail api
|
|
1103
|
+
* @brief Advanced settings for special effects.
|
|
1104
|
+
* @notes
|
|
1105
|
+
* Call the method after calling [setEnable:](#VeLiveVideoEffectManager-setenable). Do not perform frequent synchronization operations in the main thread.
|
|
1106
|
+
* @param callback A callback function that takes a handle as an argument.
|
|
1107
|
+
* @param isGLThread Whether the callback is called in the GL thread.
|
|
1108
|
+
* @param isAsync Whether the callback is executed synchronously.
|
|
1109
|
+
*/
|
|
220
1110
|
setAdvancedFeature(callback: (handle: void) => void, isGLThread: BOOL, isAsync: BOOL): void;
|
|
221
1111
|
init(): this;
|
|
222
1112
|
}
|