
视频编解码
文章平均质量分 52
chfe910
这个作者很懒,什么都没留下…
展开
-
HEVC量化:色度QP值
如果色度信号使用较大的量化步长会出现颜色漂移现象。为了应对这一问题,HEVC标准将色度信号的量化参数限制为0~45。具体来说,亮度信号QP小于30时,色度信号QP与前者相同;而当亮度信号QP为30~51时,二者对应关系如下表所示。---------------------------------------------------------------------------------原创 2015-01-06 17:24:27 · 4012 阅读 · 1 评论 -
HEVC解码器的TDecCu部分
我的这篇文章《HEVC解码器流程》给出了HEVC解码器的整体流程图,这里主要针对TDecCu部分进行讲解。TDecCu入口主要有两部分:一部分是decodeCtu,完成的是熵解码和逆扫描;另外一部分是decompressCtu,完成的是预测、反量化、反变换和重构等功能。具体流程图如下图所示。红色部分表示的是递归函数,对应括号里面完成的是相应的劈分。原创 2014-12-26 10:46:30 · 1185 阅读 · 2 评论 -
HEVC逆扫描之五:扫描表示例
以8x8亮度块、4x4色度快为例。8x8亮度块像素点扫描表尺寸是8x8,CG扫描表尺寸是2x2;4x4色度块像素点扫描表尺寸是4x4,CG扫描表尺寸是1x1,三种扫描方式的扫描表如下表所示。扫描方式分量像素点/CG扫描表对角扫描亮度像素点扫描表0, 8, 1, 16, 9,原创 2014-12-30 15:58:42 · 865 阅读 · 0 评论 -
HEVC逆扫描之四:CG内部逆扫描过程
注:HM代码版本为HM-16.2+SCM-3.0rc1/。在HEVC逆扫描之三:TU逆扫描过程中介绍了TU的逆扫描过程,这里继续介绍CG内部的逆扫描过程。4x4CG内部的逆扫描流程如下图所示。图14 4x4CG逆扫描流程对于每一个4x4块,也是按照与扫描顺序相反的顺序进行逆扫描的。首先通过熵解码解出CG标识(如果是TU内的第一个或者原创 2014-12-28 14:46:36 · 1462 阅读 · 0 评论 -
HEVC逆扫描之二:关于扫描表的说明
注:HM代码版本为HM-16.2+SCM-3.0rc1/。在介绍逆扫描的过程之前,先说明扫描表的存储和初始化过程(初始化只在解码器启动时进行,对应函数为initROM())。HEVC扫描方式中提到:对于超过 4x4 的块,先将块分成若干个4x4的CG(Coefficient Group),CG之间和每个CG内部都使用选定的扫描顺序进行扫描。所以,存在两种扫描表:像素原创 2014-12-28 14:19:00 · 1262 阅读 · 0 评论 -
HEVC解码器流程
注:HM代码版本为HM-16.2+SCM-3.0rc1/。从整个解码器的角度画了一下整体的流程图,后续有完善还会继续更新。原创 2014-12-23 19:48:10 · 2939 阅读 · 0 评论 -
HEVC逆扫描之三:TU逆扫描过程
注:HM代码版本为HM-16.2+SCM-3.0rc1/。对应TDecSbac::parseCoeffNxN()函数解析。暂时先忽略掉几个模式:pcCU->getCUTransquantBypass(uiAbsPartIdx)、pcCU->getSlice()->getPPS()->getUseTransformSkip()、pcCU->isRDPCMEnabled(uiAbsPa原创 2014-12-28 14:37:38 · 2027 阅读 · 0 评论 -
HEVC逆扫描之一:在HM代码中的位置
逆扫描在整个解码器标准代码中的位置如下图所示:图3 逆扫描在整个解码器标准代码中的位置在上图中,在TDecEntropy::xDecodeTransform()函数中通过递归调用将CU划分成TU,在TDecSbac::parseCoeffNxN()函数中完成对TU以4x4为单位的逆扫描。原创 2014-12-28 14:16:52 · 1065 阅读 · 0 评论 -
HEVC扫描方式
注:HM代码版本为HM-16.2+SCM-3.0rc1/。三种扫描方式HEVC有三种扫描方式:朝右上角的对角扫描、水平扫描、垂直扫描。对应如下图所示。 图1 HEVC三种扫描方式根据模式不同,使用水平、竖直、对角三种方式之一。对于超过4x4的块,先将块分成若干个4x4的CG(Coefficient Group),CG之间和每个CG内部都使用选定的扫描顺序进行扫原创 2014-12-28 13:40:54 · 2012 阅读 · 0 评论 -
使用 WebSockets 进行 HTML5 视频直播
实验环境:Ubuntu。参考以下两个链接进行实践:http://segmentfault.com/blog/xingrz/1190000000392586http://phoboslab.org/log/2013/09/html5-live-video-streaming-via-websockets这个解决方案是通过一个MPEG流转发服务器来实现的,该转发原创 2015-01-19 20:40:01 · 1765 阅读 · 0 评论