[关闭]
@zhangever 2017-07-24T16:22:11.000000Z 字数 793 阅读 985

音频录制方案

设计


1 接口

1.1 开始录制 startRecord

1.1.1 参数

序号 参数名 类型 说明
1. appId String appId
2. channel String 频道号
3. channelKey String 媒体key

1.1.2 逻辑

Created with Raphaël 2.1.2appDocappDocJavaJavapythonpythononInviteAcceptedByPeerupdateOrderStatusstartRecordsubprocess.Popen("./Record --appid",shell=True)

需要缓存录制进程,key=channel,value=subProcess

1.2 停止录制 stopRecord

1.2.1 参数

序号 参数名 类型 说明
1. channel String 频道号
2. caller String 主叫
3. callee String 被叫
4. uuid String 混音文件id
5. uuid1 String 主叫文件id
6. uuid2 String 被叫文件id

1.2.2逻辑

Created with Raphaël 2.1.2JavaTimerJavaTimerpythonpythonstopRecordlistFoldersByChannelaac2wavcombineWavwav2aacput2ossmove to /tmp

说明:
1. java timer到点调用python
2. python停止录制
3. 根据channel号找出该channel所有的目录,遍历目录列表,对每个目录做如下操作:
3.1 把该目录下的音频转成wav文件
3.2 wav文件合并(optional, 第一阶段先直接录混音,也就是只输出一个音频文件,后期每个说话人都会有一个音频文件)
4. 把所有目录的wav文件都append起来
5. 把最终结果转成aac
6. 上传至阿里云,更新数据库
7. 把音频目录移到/tmp目录

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注