刘品
学以致用---博主简介:专注语音、视频数字信号处理方面的研究以及算法在手机平台上面的移植和优化。涉及语音/音频编解码,语音增强,语音识别,语音音质客观评估,VOIP语音引擎 Qos算法模块和声音变速不变调和变调不变速等功能实现。熟悉ARM 各个系列的CPU,用ARMv4,ARMv5,ARMv6 and Cortex Neon 汇编优化相关算法代码,争取perforamance 最优。目前主要Windows mobile and Android platform上做相关speech/audio算法以及应用开发, HEVC 编解码器PC 和手机上的开发与应用。(交流Email:liupin.2008@gmail.com)

学习一下:

 

在voice这方面,是如何计算使用某种codec所消耗的带宽呢?
在默认情况下,把模拟话音转换为数字话音后,按20ms一段20ms一段切开,用rtp封装起来,然后包上udp header,ip header,最后是layer 2的包头,然后发出去。

假设咱们用g.729编码,并在ethernet上传输。一起来算算一路话音需要多大带宽吧。

g.729每路话音是8kbit/s,那么开始转换
8000bps / 8 = 1000 bytes/s,得到g.729每秒需要带宽1000 bytes

那么默认都是没20ms的话音封成一个packet,也就可以算出1妙内发送多少个packet
1s / 20ms = 50个

也就是说g.729每20ms需要的带宽为
1000bytes/s / 50 = 20bytes/s

之后以太网帧头6-byte,ip包头20-byte,udp包头8-byte,rtp包头12-byte
这样,再加上g.729的payload为20bytes
也就是说每20ms就要产生一个6 + 20 + 8 + 12 + 20 = 66-byte长度的帧
那么一秒就要发送50个66-byte,等于3300-byte,转成kbit/s
3300byte/s * 8 /1000 = 26.4kbit/s

最终得出g.729一路话音占用带宽(包括layer2 header)为26.4kbps

 

 

 

转自:http://blog.csdn.net/force_eagle/archive/2007/10/22/1836423.aspx

posted on 2008-08-31 16:34  liupin  阅读(1055)  评论(0)    收藏  举报

-->