Woody Home Page
 
   
IAX2协议下Speex实际使用带宽
  
2007年11月10日
几年前H.323还流行的时候, SIP是作为一个简单的VoIP协议出现的. 到今天它已经一点都不简单了. 真正简单的VoIP协议是Asterisk系统自带的IAX2. 在我们AR1688软件中, IAX2二进制代码只有19k字节, 而SIP用掉了44k字节.
使用同样编码算法的时候, IAX2也会比SIP少用一点带宽. 它不使用RTP协议传送语音数据. 大多数语音数据都是在"Mini Frame"中传送, 只有4个字节的包头, 比12个字节的RTP包头小.
按照我们前面SIP带宽的同样方式计算, IAX2中Speex网络包总共(50 + x)字节. 当2帧(40ms)Speex数据在一个网络包中传送的时候, 实际使用带宽跟不同比特率组合的计算见下表.
(50 + 2x) / 5的公式来源于: 8kbps * ((50 + 2x) / 2x) * (x / 20). 比特率8kbps刚好是每20毫秒20个字节的数据.
比特率 (kbps) 2.15 3.95 5.95 8 11 15 18.2 24.6
20ms帧 (x byte) 6 10 15 20 28 38 46 62
SIP (58 + 2x) / 5 (kbps) 14 15.6 17.6 19.6 22.8 26.8 30 36.4
IAX2 (50 + 2x) / 5 (kbps) 12.4 14 16 18 21.2 25.2 28.4 34.8

本页面尚无任何评论.

更多选项? 请先登录或者注册. metropolitan-tundra