AI 音频录制 On-App AI
功能介绍
-
AI 音频录制以下流程:音频采集、音频 AI 处理、音频封装;
-
AI 音频录制,主要依赖以下5个关键能力:
-
获取全局唯一的录音管理器
开发者可通过 getRecorderManager API 获取全局唯一的录音管理器。 -
开始录音
开发者可通过 RecorderManager.start API 开启录音。 -
暂停录音
开发者可通过 RecorderManager.pause API 暂停录音。 -
继续录音
开发者可通过 RecorderManager.resume API 继续录音。 -
停止录音
开发者可通过 RecorderManager.stop API 停止录音。
交互流程
sequenceDiagram
participant 用户
participant 面板
participant RecorderManager
participant 音频引擎
rect rgb(200, 230, 255)
Note over 用户,RecorderManager: 初始化阶段
用户 ->> 面板: 1. 请求录音功能
面板 ->> RecorderManager: 2. getRecorderManager()
RecorderManager -->> 面板: 3. 返回全局管理器实例
end
rect rgb(200, 255, 225)
Note over 用户,音频引擎: 录音控制阶段
用户 ->> RecorderManager: 4. start()
RecorderManager ->> 音频引擎: 5. 启动录音设备
Note right of 音频引擎: 启用AGC(自动增益控制)、启用VAD(语音活动检测)
par 实时处理
音频引擎 ->> 音频引擎: 6. AGC动态调节音量
音频引擎 ->> 音频引擎: 7. VAD识别人声段
音频引擎 ->> RecorderManager: 8. 实时回调音量数据
RecorderManager ->> 面板: 9. 更新UI波形图
end
alt 用户暂停
用户 ->> RecorderManager: 10. pause()
RecorderManager ->> 音频引擎: 11. 暂停输入流
音频引擎 -->> RecorderManager: 12. 确认暂停
else 用户继续
用户 ->> RecorderManager: 13. resume()
RecorderManager ->> 音频引擎: 14. 恢复输入流
音频引擎 -->> RecorderManager: 15. 确认恢复
end
end
rect rgb(255, 225, 200)
Note over 用户,RecorderManager: 结束录音阶段
用户 ->> RecorderManager: 16. stop()
RecorderManager ->> 音频引擎: 17. 停止录音
音频引擎 ->> 音频引擎: 18. 生成最终音频文件
Note right of 音频引擎: 支持格式:MP3、G.711A、G.711U、nOpus、AAC、mSBC
音频引擎 -->> RecorderManager: 19. 返回文件路径
RecorderManager ->> 用户: 20. 显示录音完成
end