美文网首页
AudioToolbox

AudioToolbox

作者: 桃逸 | 来源:发表于2017-02-23 08:59 被阅读65次

    参考:http://blog.csdn.net/jiangyiaxiu/article/details/9197221

    这个库是C的接口,偏向于底层,用于在线流媒体播放;
    系统的AVPlayer播放简单音视频还可以,但是功能不强大,不能处理边听边存,断点续传,播放事件等;

    实现原理

    将读取到的数据存到buffer queue中,然后按照buffer的顺序进行播放;


    Paste_Image.png

    主要头文件

    • AudioQueue.h
    • AudioFile.h
    • AudioFileStream.h

    相关函数

    1.AudioFileStreamOpen AudioFileStreamOpen
    2.AudioFileStreamParseBytes 解析音频数据
    3.AudioQueueNewOutput 创建音频队列AudioQueueRef 、设置buffer callback函数
    4.AudioQueueAllocateBuffer 在AudioQueueRef中创建音频缓冲数据AudioQueueBufferRef
    5.AudioQueueEnqueueBuffer 把缓冲数据排队加入到AudioQueueRef等待播放
    6.AudioQueueStart 播放
    7.AudioQueueStop / AudioQueuePause 停止,暂停

    1. AudioQueueAddPropertyListener
    2. AudioFileGetProperty
    3. AudioQueueSetProperty
    4. AudioQueueSetParameter
    5. AudioFileOpenURL 通过url打开一个语音文件,并返回一个AudioFileID
    6. AudioFileReadPackets

    相关结构体

    1. AudioFileID
    2. AudioQueueRef
    3. AudioQueueBufferRef
    4. AudioStreamBasicDescription
    5. AudioStreamPacketDescription

    断点续传

    在http请求头中设置数据的请求范围,请求头中都是key-value成对
    [request setValue:range forHTTPHeaderField:@"Range"];

    相关文章

      网友评论

          本文标题:AudioToolbox

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