ITPub博客

首页 > 应用开发 > IT综合 > 流媒体 Buffer 设计原理

流媒体 Buffer 设计原理

原创 IT综合 作者:helloxchen 时间:2010-11-05 16:47:45 0 删除 编辑

1. Buffer 设计大小依据:

(1) 依据是 你所需要缓冲多长时间,比如是100ms还是50ms;

(2) 大小: 即每秒钟会收到的字节数;

Buffer = dwBytesPerSec * dwLatencyInMilliseconds / 1000;

2. 举例:

采集声音:(G711规格)

Buffer = 16 /8 * 8000 * (PTime) /1000

其中, 16/8为每一个G711的Samplez占用2个字节,

8000为采样率,即每1s需要采样8000个G711的Sample,

PTime = 缓冲时间(ms),假设PTime为50ms,

则 Buffer = 2*8000 * 50 / 1000 = 800 Bytes,(压缩前)

即 Capture的Buffer 大小为 mp_byte CapBuf [800];

这样,

经过G711压缩后得到的大小为400Bytes 每个包。

3. 每隔多长时间单位发送?

pTime * 采样频率。

如: 20 * 8000 /1000 = 160 (20为PTime, 8000为采样频率),

用WireShark截包看下来就是每两个包之间间隔160个单位。

50 * 8000 /1000 = 400 (同样)

转自http://blog.csdn.net/Laong126/archive/2010/01/14/5190182.aspx

[@more@]

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24790158/viewspace-1040982/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: G711/G722/G723 规格
请登录后发表评论 登录
全部评论
  • 博文量
    171
  • 访问量
    311114