织梦CMS - 轻松建站从此开始!

罗索

视频编码中的码率控制及应用(草稿)

落鹤生 发布于 2012-03-21 09:54 点击:次 
CBR,Constant bitrate,字面意思就是恒定码率,CBR与VBR是对应的,VBR,Variable bitrate,也即可变码率。很多情况下需要采用CBR进行编码或者传输。比如数字电视传输信道通常是固定带宽的,因此要求数字电视内容的传输采用CBR。VCD也是CBR的,码率为1.15Mbps。
TAG:

CBR与码率控制

CBR,Constant bitrate,字面意思就是恒定码率,CBR与VBR是对应的,VBR,Variable bitrate,也即可变码率。很多情况下需要采用CBR进行编码或者传输。比如数字电视传输信道通常是固定带宽的,因此要求数字电视内容的传输采用CBR。VCD也是CBR的,码率为1.15Mbps。

对于单个节目,采用CBR的好处在于:

  • 省去了索引文件,避免了索引生成的过程。
  • 可以实时生成快进快退流,避免了对于存储的浪费。
  • 由于没有索引文件,所以更容易在内核中实现流的推送,提升了性能。
  • 可以直接通过文件位置的seek实现时间上的seek。
  • 使得把推流功能独立出来更容易,从而可以直接把推流功能做到kernel中,这样更有利于性能的提升。

CBR并非单纯指的编码的视频流是恒定码率的,从不同的层面看,有如下CBR:

  • 视频编码层面的CBR。实现难度大,并非必须应用。
  • 音视频复用成单节目流的CBR,此时视频本身可以是VBR的。自索引的TS流。
  • 复用成多节目流的CBR,也就是统计复用,这时候每个节目流本身可以是VBR。数字电视传输。

视频编码层面的码率控制

由于画面复杂程度,场景切换,不同的帧编码类型不同等原因,每一帧编码后的大小都会不同。不采取任何码率控制的措施,编码出来的视频码流应该是VBR的。为了满足对于CBR的要求,需要对码率进行控制。

给出rc-buffer-size才能生成CBR,否则,总是生成的VBR。其实CBR是通过VBV来控制的。VBV就是Video buffering verifier。

采用x264编码的CBR需要继续研究。

复用成单节目TS流时的码率控制

参见我的博文:http://blog.sina.com.cn/s/blog_6a4c492f0100qy94.html

参考资料
  1. 关于ffmpeg中的VBR控制的讨论 http://www.chinavideo.org/archiver/?tid-256.html
  2. Mediaxyz访谈录:ffmpeg的码率控制
  3. H.263视频编码的码率控制算法及硬件实现 http://www.dzsc.com/data/html/2007-12-24/59765.html
  4. 有关面向H.26?码率控制的研究和设计
  5. FFMPEG设置 cbr讨论 http://blog.csdn.net/szu030606/archive/2010/10/12/5936386.aspx
  6. 码率控制CBR讨论 http://www.chinavideo.org/archiver/?tid-7377.html
  7. MPEG-2关键技术 http://lyj2682.spaces.live.com/blog/cns!177B1314D2038BE4!151.entry
  8. Real CBR x264 settings? http://forum.doom9.org/showthread.php?t=102893
  9. CBR讨论 http://hi.baidu.com/ilovejoy/blog/item/7be2cccb15433913be09e65f.html
(dqzhangp)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www.rosoo.net/a/201203/15852.html]
本文出处:blog.sina.com.cn/dqzhangp 作者:dqzhangp 原文
顶一下
(1)
50%
踩一下
(1)
50%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容