文档中心
互动直播 (Legacy)
API 参考
AgoraMediaRecorder Class Reference
Objective-C API Reference for iOS/macOS
AgoraMediaRecorder Class Reference
Inherits from |
NSObject |
Declared in |
AgoraRtcEngineKit.h |
Overview
AgoraMediaRecorder 接口,用于在客户端录制以下内容:
- 本地麦克风采集且经 SDK 编码为 AAC 格式的音频。
- 本地摄像头采集且经 SDK 编码的视频。
Note: 通信场景下,如果频道内有 SDK 版本低于 3.0.0 的用户,该功能不可用。
+ (instancetype _Nonnull)sharedMediaRecorderWithRtcEngine:(AgoraRtcEngineKit *_Nonnull)engine delegate:(id<AgoraMediaRecorderDelegate> _Nullable)delegate
Return Value
AgoraMediaRecorder
Declared In
AgoraRtcEngineKit.h
+ (void)destroy
Declared In
AgoraRtcEngineKit.h
- (int)enableMainQueueDispatch:(BOOL)enabled
Parameters
enabled |
- YES: 分发回调方法到主队列
- NO: 不分发回调方法到主队列
|
Discussion
如果不分发回调方法到主队列, App 应将 UI 操作分发到主队列。
Declared In
AgoraRtcEngineKit.h
- (int)startRecording:(AgoraMediaRecorderConfiguration *_Nonnull)config
Discussion
成功获取 AgoraMediaRecorder 对象后,你可以调用该方法开启本地音视频流录制。
该方法录制的是本地麦克风采集的、编码为 AAC 格式的音频或本地摄像头采集的、编码后的视频。只有当检测到可录制的音视频流时,才能成功生成录制文件;
当没有可录制的音视频或录制中的音视频流中断超过 5 秒后,SDK 会停止录制,
并触发 stateDidChanged (AgoraMediaRecorderStateError, AgoraMediaRecorderErrorCodeNoStream)。
Declared In
AgoraRtcEngineKit.h
- (int)stopRecording
Return Value
- 0(ERR_OK): 方法调用成功
< 0: 方法调用失败
Discussion
Note: 调用 startRecording 后,如果要停止录制,必须调用 stopRecording
;否则,生成的录制文件可能无法正常播放。
Declared In
AgoraRtcEngineKit.h