客户端音频录制

更新时间: 2024/08/05 15:02:55

NERTC SDK 在实时音视频通话过程中,支持客户端录制和服务端录制两种录制方式。客户端录制支持实时的通话过程音频录制,录制文件保存在用户本地设备中,适用于通话过程录音场景。

功能介绍

客户端录制指在通话过程中将房间内混流后的音频流录制下来,并存放在用户本地设备中以供后续回放或存档。NERTC SDK 支持通过客户端进行实时音频录制,每次录制生成一个音频文件,其中包含房间内所有用户混流后的音频数据。开启录制时可以指定录制文件的存放路径及格式、录制采样率、音质等。

目前支持的音频格式包括:

  • WAV:文件大,音质保真度高。
  • AAC:文件小,有一定的音质损失。

注意事项

  • 文件后缀必须以 .wav.aac 结尾。
  • 加入房间后才能开始录音。
  • 客户端只能同时运行一个录音任务,正在录音时,如果重复调用 startAudioRecording,会结束当前录制任务,并重新开始新的录音任务。
  • 当前用户离开房间时,自动停止录音。您也可以在通话中随时调用 stopAudioRecording 手动停止录音。

实现方法

  1. 加入房间后,调用 startAudioRecording 开始录音。

  2. 需要结束录音时,调用 stopAudioRecording 手动停止录音。

    如果未手动结束录音,本端离开房间时会自动结束录音。

  3. 收到 onAudioRecording 回调。

示例代码

//开始录音
int res = engine->StartAudioRecording(path, 32000, kNERtcAudioRecordingQualityHigh);
//结束录音
int res = engine->StopAudioRecording();
//回调
void NERTCEngine::onAudioRecording(NERtcAudioRecordingCode code, const char *file_path) {
    //OnAudioRecordCb(code, std::string(file_path));
}
此文档是否对你有帮助?
有帮助
去反馈
  • 功能介绍
  • 注意事项
  • 实现方法
  • 示例代码