iOS音视频基础

本文介绍了iOS平台上的音视频基础知识,包括从麦克风采集音频、常见的音频格式(如pcm、aac、g711),以及视频采集过程和技术,如分辨率、码率、H.264编码标准,并讨论了ijkplayer在iOS集成的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

iOS音视频基础

音频

在直播项目中,一般从麦克风(手机、电脑话筒)采集音频,从编程接口获取PCM Buffer,这块内存里,存放的就是音频数据。音频领域一些格式:pcm、aac、g711

  • g711 - 打电话,只需要听到清楚的声音的压缩格式(音频采样格式率为8000)
  • acc - CD级别的音质

音频容器:MP3、wma、m4a

PCM(Pulse Code Modulation)也被称为脉冲编码调制。PCM音频数据是未经压缩的音频采样数据裸流,它是由模拟信号经过采样、量化、编码转换成的标准的数字音频数据。

视频

在现实世界中,画面中,每秒刷新超过24(帧 fps)张图片,就可以骗过人眼观测的范围,看起来就相当的连续

  • 分辨率 - 单帧画面大小,例如1920X1080 1280X720
  • 码率 - 单张图片数据流的大小。原始的RAW码率比较大。

视频采集
从摄像头,sensor,感光元件,拍摄画面,把它编码存储为图片

  • RGB
  • YUV

H.264算法进行压缩

什么是H.264?H.264是一种高性能的视频编解码技术。目前国际上制定视频编解码技术的组织有两个,一个是“国际电联”,它制定的标准有H.261、H.263、H.263+等,另一个是“国际标准化组织(ISO)”它制定的标准有MPEG-1、MPEG-2、MPEG-4等。而H.264则是由两个组织联合组建的联合视频组(JVT)共同制定的新数字视频编码标准,所以它既是ITU-T的H.264,又是ISO/IEC的MPEG-4高级视频编码,而且它将成为MPEG-4标准的第10部分。因此,不论是MPEG-4 AVC、MPEG-4 Part 10,还是ISO/IEC 14496-10,都是指H.264。

ijkplayer

Bilibili/ijkplayer,是Android/iOS视频播放器,基于FFmpeg n3.4

在iOS中集成ijkplayer,可参考官网,打包成framework,可参考iOS中集成ijkplayer视频直播框架

可能会出现的问题:

1.提示C compiler test failed错误

解决方法,切回到ijkplayer-ios目录下,执行

sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer/

然后再执行:

cd ios
./compile-ffmpeg.sh clean
./compile-ffmpeg.sh all
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值