pcma和pcmu pcm编码_PCM、G.729等常用VoIP编码的实际带宽计算

博客介绍了PCM编码的基本原理,64Kb的来源,并详细解析了PCMA和PCMU两种编码方式。通过计算得出,在20ms打包周期下,PCMA和G.729的带宽需求分别为85.6 Kb/秒和29.6 Kb/秒。同时强调,尽管G.729压缩效率高,但CPU资源消耗也更大,强调了在特定条件下选择合适编码的重要性。

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

我觉得通信背景的同学,一提到PCM编码,脑海里都能跳出来一个数值64k。

一、64KB还是64Kb?

64Kb!

二、哪里来的64Kb?

CCITT规定抽样率为每秒8000KHz,每抽样值编8位码,所以每秒共采集64Kbit数据。

三、PCMA和PCMU

就是对采集到的64Kbit按照不同的对数压缩特征(A率和μ率)进行编码。

编码后的数据大小仍然是64Kbit(所谓的无损编码?)。

四、160字节是怎么来的?

经常听过“每包数据长度是160字节”,哪里来的?

上面已经知道,使用PCM编码,每秒产生64000bit数据。

转化成字节,就是64000bit/(8bit/字节)=8000字节。

好了,下面需要考虑怎么把这8000字节数据发送出去了。

五、这每秒产生的8000字节数据你打算怎么处理?

你可以选择先什么都不做,等一秒结束,编码出所有的数据,然后把这一个包全部发出去,那这一个包就是8000字节。

你也可以选择,每等待100ms,编码一次数据,然后把这一个包发送出去,那这一个包就是8000字节/(1000ms/100ms)=800字节。

你也可以选择,每等待10ms,编码一次数据,然后把这一个包发送出去,那这一个包就是8000字节/(1000ms/10ms)=80字节。

你的等待时间就是打包周期,把一个周期的数据放到一个数据包里就叫打包。

等等,说了半天还是没出现160字节。

六、160字节找出来了!

当打包周期是20ms的时候,一个包就是8000/(1000ms/20ms)=160字节。

这么巧,20ms也是PCMA最常用的打包周期,G.729也是。

七、如何封装这一包160字节?

1. 封装在哪种消息协议发送出去呢?

RTP(消息头格式定长12*8=96bit)

2. RTP承载在什么传输协议?</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值