美文网首页
iOS音频学习之五做个本地播放器

iOS音频学习之五做个本地播放器

作者: 程序狗 | 来源:发表于2018-03-12 16:25 被阅读41次

    经过前面几章,我们要来写一个简单的本地播放器,运用到之前说到的AudioFileStream,AudioFile,AVAudioSession

    AudioFileStream vs AudioFile

    两种都是解析音频信息及分离帧,为什么要同时使用
    1.对于网络流播放必须要AudioFileStream,因为我们之前在AudioFile说过Open的时候要求使用者提供数据,如果提供的数据不足会直接跳过并且返回错误码,而数据不足的情况在网络流中很常见,所以没办法使用AudioFile单独进行网络流数据的解析
    2.本地音乐播放选用AudioFile更为合适,原因是AudioFileStream是主要用在流播放,虽然不限于网络流和本地流,但是流数据是按顺序提供的所以AudioFileStream也是顺序解析的,被解析的音频文件还是需要符合流播放的特性,对于不符合的本地文件AudioFileStream会在Parse返回NotOptimized错误;而AudioFile的解析过程并不是顺序的,它会在解析时通过回调向使用者索要某个位置的数据,即使数据在文件末尾也没关系,所以AudioFile适用于所有类型的音频文件;

    所以我们需要同时使用这两个类,前者可以应对流播放的音频数据,实现边播边缓冲的体验,用AudioFile处理无法流播放的音频数据,让用户在下载完成之后仍然能够进行播放

    具体demo看https://github.com/chanbendong/ZJAudioPlayer

    相关文章

      网友评论

          本文标题:iOS音频学习之五做个本地播放器

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