美文网首页iOS音视频开发iOS Developer
移动端(iOS,安卓)即时通讯长链接传输格式speex音频文件录

移动端(iOS,安卓)即时通讯长链接传输格式speex音频文件录

作者: 王方帅 | 来源:发表于2017-04-16 09:48 被阅读345次

    录制原理:
    1,RecorderManager中通过AudioSession进行PCM音频录制,录制格式为WAV格式,并开启levelMeterState,可以实时显示录制音量
    2,获取PCM音频录制buffer,每20ms一个buffer,开启三个buffer来循环input到Encapsulator中进行speed音频编码
    3,Encapsulator中对于每一个输入的buffer放到oprationQueue中,按顺序进行encode,对于encode完的speex buffer,按页为单位,通过NSFileHandle寻址到当前已经写入的文件末尾,写入当前页
    4,录制过程中生成的PCM音频buffer只存在于内存中,占用少量内存,每转换一个buffer的speex格式则将其存储到本地文件中
    5,在8khz下每秒钟占用1kB的本地存储空间(8khz对于语音说话足够)

    播放原理:
    1,PlayerManager中将本地存储的speex文件整个读入内存中
    2,Decapsulator中将speex一段段的读入buffer,通过SpeexCodec进行decode
    3,decode的PCM音频buffer输入到RawAudioDataPlayer中
    4,RawAudioDataPlayer 将PCM的buffer音频通过AudioQueueEnqueueBuffer进行播放输出

    引用:http://blog.csdn.net/a_asinceo/article/details/46487125 iOS安卓互通方案

    相关文章

      网友评论

        本文标题:移动端(iOS,安卓)即时通讯长链接传输格式speex音频文件录

        本文链接:https://www.haomeiwen.com/subject/wmfaattx.html