MediaRecorderConfiguration
音视频流录制配置。
Dart
(explicitToJson: true, includeIfNull: false)
class MediaRecorderConfiguration {
const MediaRecorderConfiguration(
{this.storagePath,
this.containerFormat,
this.streamType,
this.maxDurationMs,
this.recorderInfoUpdateInterval,
this.width,
this.height,
this.fps,
this.sampleRate,
this.channelNum,
this.videoSourceType});
(name: 'storagePath')
final String? storagePath;
(name: 'containerFormat')
final MediaRecorderContainerFormat? containerFormat;
(name: 'streamType')
final MediaRecorderStreamType? streamType;
(name: 'maxDurationMs')
final int? maxDurationMs;
(name: 'recorderInfoUpdateInterval')
final int? recorderInfoUpdateInterval;
(name: 'width')
final int? width;
(name: 'height')
final int? height;
(name: 'fps')
final int? fps;
(name: 'sample_rate')
final int? sampleRate;
(name: 'channel_num')
final int? channelNum;
(name: 'videoSourceType')
final VideoSourceType? videoSourceType;
factory MediaRecorderConfiguration.fromJson(Map<String, dynamic> json) =>
_$MediaRecorderConfigurationFromJson(json);
Map<String, dynamic> toJson() => _$MediaRecorderConfigurationToJson(this);
}
storagePath
录制文件在本地保存的绝对路径,需精确到文件名及格式。例如:
- Windows:
C:\Users\<user_name>\AppData\Local\Agora\<process_name>\example.mp4
- iOS:
/App Sandbox/Library/Caches/example.mp4
- macOS:
/Library/Logs/example.mp4
- Android:
/storage/emulated/0/Android/data/<package name>/files/example.mp4
注意
请确保你指定的路径存在并且可写。
containerFormat
录制文件的格式。详见 MediaRecorderContainerFormat。
streamType
录制内容。详见 MediaRecorderStreamType。
maxDurationMs
最大录制时长,单位为毫秒,默认值为 120000。
recorderInfoUpdateInterval
录制信息更新间隔,单位为毫秒,取值范围为 [1000,10000]。SDK 会根据该值的设置触发 onRecorderInfoUpdated 回调,报告更新后的录制信息。
width
录制视频的宽度 (px),宽 × 高的最大值不应超过 3840 × 2160。 该参数仅在 调用 createMediaRecorder 且将 RecorderStreamInfo 中的 type设置为 preview 时需要传入。
height
录制视频的高度 (px),宽 × 高的最大值不超过 3840 × 2160。 该参数仅在 调用 createMediaRecorder 且将 RecorderStreamInfo 中的 type设置为 preview 时需要传入。
fps
录制视频的帧率,最高值不超过 30,如: 5、10、15、24、30 等。 该参数仅在 调用 createMediaRecorder 且将 RecorderStreamInfo 中的 type设置为 preview 时需要传入。
sampleRate
录制音频的采样率 (Hz),可设置为 16000,32000,44100 或 48000。 该参数仅在 调用 createMediaRecorder 且将 RecorderStreamInfo 中的 type设置为 preview 时需要传入。
channelNum
录制音频的声道数:
- 1: 单声道
- 2: 双声道
videoSourceType
录制视频源的类型。详见 VideoSourceType。 该参数仅在 调用 createMediaRecorder 且将 RecorderStreamInfo 中的 type设置为 preview 时需要传入。