startFileRecording method
Future<int?>
startFileRecording({
- required RecordingConfig config,
- required RecordingType recordingType,
@detail api
@hiddensdk(audiosdk)
@author wangzhanqiang
@brief 该方法将通话过程中的音视频数据录制到本地的文件中。
@param config 本地录制参数配置,参看 RecordingConfig{@link #RecordingConfig}
@param recordingType 本地录制的媒体类型,参看 RecordingType{@link #RecordingType}
注意:屏幕流仅支持录制视频(RECORD_VIDEO_ONLY);主流支持录制所有类型。
@return 0: 正常
-1: 参数设置异常
-2: 当前版本 SDK 不支持该特性,请联系技术支持人员
@note
- 该方法需在进房后调用。
- 调用该方法后,你会收到 onRecordingStateUpdate{@link #IRTCEngineEventHandler#onRecordingStateUpdate} 回调。
- 如果录制正常,系统每秒钟会通过 onRecordingProgressUpdate{@link #IRTCEngineEventHandler#onRecordingProgressUpdate} 回调通知录制进度。
Implementation
Future<int?> startFileRecording(
{required RecordingConfig config,
required RecordingType recordingType}) async {
$a() => ($instance as $p_a.RTCEngine).startFileRecording(
unpackObject<$p_a.RecordingConfig>(config),
t_RecordingType.code_to_android(recordingType));
$i() => ($instance as $p_i.ByteRTCEngine).startFileRecording(
unpackObject<$p_i.ByteRTCRecordingConfig>(config),
t_RecordingType.code_to_ios(recordingType));
if (Platform.isAndroid) {
return $a();
} else if (Platform.isIOS) {
return $i();
} else {
throw UnsupportedError(
'Not Support Platform ${Platform.operatingSystem}');
}
}