AAC MP3音频帧采样点大小

音频aac、mp3文档规定:

AAC:帧大小1024个sample,采样率为44100Hz ,帧播放时长:acc dur=1024/44100 = 0.02322s=23.22ms

MP3:帧大小1152个sample,采样率为44100Hz ,帧播放时长: mp3 dur=1152/44100 = 0.02608s=26.08ms

pcm:

假设音频采样率 = 8000,采样通道 = 2,位深度 = 8,采样间隔 = 20ms

首先我们计算一秒钟总的数据量,采样间隔采用20ms的话,说明每秒钟需采集50次(1s=1000ms),那么总的数据量计算为

一秒钟总的数据量 =8000 * 2*8/8 = 16000(Byte)

所以每帧音频数据大小 = 16000/50 =320(Byte)

每个通道样本数 = 320/2 = 160(Byte)

为什么aac、mp3的帧是1024、1152呢?

理解:应该是只有pcm相关的(g711、g722、g726、adpcm、pcm)才有真实的帧和帧长,也就是采样点或叫作采样间隔。

那么,采样率44100,就不是每次采1个,而是1s内平均采样够44100个就对了,那么采样间隔就正确出现了,每秒钟需采集50次(1s=1000ms),每次采集320Byte,每次采集时长20ms。

而aac、mp3的帧固定是1024、1152。所以如果 采集率为44100

那么,采1帧aac播放1024/44100=23.22ms,每秒只需要采43.06帧

那么,采1帧mp3播放1152/44100=26.08ms,每秒只需要采38.34帧

对于acc、mp3等一般对应于播放时长(约定相对应于PCM每次取多少个sample),如1024、1152。

所以aac、mp3为约定、固定是1024、1152。(个采集数)

采样率 sampling = 44100

格式(编码字节数、采样一位所占的字节数) format = s16(格式)=16(bit)

声道数 channels = 2

一次采样(一秒中所占的位数)TotalBit = sampling * channels * format = 1411200

一次采样(一秒中所占的字节数)TotalByte = TotalBit/8 = 176400

  1. AAC:
    nb_samples和frame_size = 1024

一帧数据量:10242s16/8 = 4096个字节。

ACC帧率 (一秒播放帧数)= TotalByte/4096 = 43.06640625帧

  1. MP3:
    nb_samples和frame_size = 1152

一帧数据量:11522s16/8 = 4608个字节。

MP3帧率 (一秒播放帧数)= TotalByte/4608 = 38.28125帧

一文搞懂音频视频中的采样率、采样精度、码率、分辨率https://zhuanlan.zhihu.com/p/335312838

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值