关于数字音频的采样精度

音频的一个采样用几个bit来表示,叫采样精度,又叫位深(bit-depth)。我们常用的位深是16bit,也就是16bit表达一个采样,这样,最高信噪比可以表示为20log(2^16)=96db,而用24bit位深的话,最高信噪比可以到达20log(2^24)=144db。
专业的数字音频处理软件内部其实都是用float型来表示一个采样,也就是32bit,那么最高信噪比可以达到193db,这个信噪比已经非常高了。
我们需要达到的目标,比如达到业界vivo的codec cs4398信噪比120db,这个只需要24bit就能在理论上提供了可行性。
对于MP3等有损格式,无论压缩前的pcm数据是24bit还是16bit的,压缩过程中都会尽量使用最小bit-depth来存储数据,因此解码时的bit-depth理论上时没有意义的。但是工程上讲,使用24bit解码器的mp3,解码时进行加减乘除运算的精度变大,从而能提高一些信噪比。
为了方便处理,通常会把24bit放入一个32bit int,怎么放呢?跟容器类型和机器大小端有关系。
比如WAV容器,它存储是小端的,这样,存储0xAABBCC这个24bit的采样就需要存成:
CC BB AA (---地址从低到高--->)
为了转化为 int32_t 进行处理,需要把它的高位填充到一个 int32_t 型数中的高位,而最低 8位补零,最终得到 0xAABBCC00 。由于arm 也是小端的,内存中应该是这样的布局:
00 CC BB AA (---地址从低到高--->)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值