iOS采集录制音视频API选择推荐

需求

对于整个iOS体系中音视频众多框架,咱们不该该盲目选择,针对音视频的采集录制,须要根据本身的实际需求选择最适合项目的API,以至于最高效的完成项目任务.ios

如下是一些主要中低层框架的选择推荐与原理讲述,代码实战,能够经过如下连接了解你须要的,也能够从文中连接找到对应文章,去github下载相应的Demo帮助你快速开发.git


iOS中音频架构图

3.CoreAudioLevel

1.上层API

对于仅仅想直接播放个音频或视频的需求,没有必要使用底层的API,这些API能够简单的直接调用一些相似start,stop,设置一些资源文件路径就能够作录制与播放.github

  • 视频播放:AVPlayer
  • 视频录制:UIImagePickerController
  • 音频播放:AVAudioPlayer
  • 音频录制:AVAudioRecorder

以上API如需了解使用自行百度,简单易用.架构

2.中层API

若是想采集到视频帧,音频帧加以利用,须要使用一些中层的API,对于采集而言,视频最底层即AVCaptureSession,咱们能够经过回调函数拿到指定格式的音频视频.录制基本也同理.但对音频而言,若是不对音频有太多具体设置,仅仅作同步,能够直接使用AVCaputureSession中的音频采集.框架

3.底层,功能最多的API

音频采集方面还能够使用更底层,更好用的Audio Queue, Audio Unit.post

  • 音频采集/播放: Audio Queue, Audio Unit
  • 音频录制: Audio File -简书,掘金,博客

Audio Queue与Audio Unit的选择cdn

  • Audio Queue: 以队列的形式高效采集音频数据,能够直接设置采集PCM,AAC等压缩,未压缩类型格式音频数据.
  • Audio Unit: 比起Audio Queue, 提供更加专业音频处理,支持混合,均衡,格式转换和实时输入/输出,用于录制,播放,离线渲染和实时对话,例如VoIP(互联网协议语音).能够从iOS应用程序动态加载和使用它.
相关文章
相关标签/搜索