分析H264把量化步长为1并且关闭deblock时候压缩还是有损的原因

       上次向业内一个专业人士提问,如何得到一个无损的压缩后的码流。被告知可以通过设置QP为4并且关闭deblock来实现。

       我使用jm和x264两种编码器分别尝试了下。发现编码后的ssim都是小于1的。证明不是真的无损。使用elecard查看码流,是否qp恒定为4并且disable_deblocking_filter_idc 为 1。确定了这些都正常后,我开始查找原因。

       查看《新一代视频压缩编码标准H.264》后,发现H.264把DCT变化的系数放到量化那一步了,好处是DCT变化是一个整数变化。

      坏处就是在量化时要乘以这个系数。其中系数a= \frac{1}{2},b=\sqrt{\frac{2}{5}}。round()是取整函数。所以在量化过程中存在取整带来的损失,导致编码不是无损。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值