[SCM] libav/experimental: hevc: Drop unnecessary shifts in deblocking_filter_CTB

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Aug 10 16:01:28 UTC 2014


The following commit has been merged in the experimental branch:
commit 50c988aa6d6c6f0ceb8f922bcea34800b56b85d9
Author: Luca Barbato <lu_zero at gentoo.org>
Date:   Wed Feb 19 20:38:53 2014 +0100

    hevc: Drop unnecessary shifts in deblocking_filter_CTB
    
    beta_offset is pre-multiplied by 2.

diff --git a/libavcodec/hevc_filter.c b/libavcodec/hevc_filter.c
index d3f2ff1..3437fd0 100644
--- a/libavcodec/hevc_filter.c
+++ b/libavcodec/hevc_filter.c
@@ -374,8 +374,8 @@ static void deblocking_filter_CTB(HEVCContext *s, int x0, int y0)
                 const int qp0 = (get_qPy(s, x - 1, y)     + get_qPy(s, x, y)     + 1) >> 1;
                 const int qp1 = (get_qPy(s, x - 1, y + 4) + get_qPy(s, x, y + 4) + 1) >> 1;
 
-                beta[0] = betatable[av_clip(qp0 + (beta_offset >> 1 << 1), 0, MAX_QP)];
-                beta[1] = betatable[av_clip(qp1 + (beta_offset >> 1 << 1), 0, MAX_QP)];
+                beta[0] = betatable[av_clip(qp0 + beta_offset, 0, MAX_QP)];
+                beta[1] = betatable[av_clip(qp1 + beta_offset, 0, MAX_QP)];
                 tc[0]   = bs0 ? TC_CALC(qp0, bs0) : 0;
                 tc[1]   = bs1 ? TC_CALC(qp1, bs1) : 0;
                 src     = &s->frame->data[LUMA][y * s->frame->linesize[LUMA] + (x << s->sps->pixel_shift)];
@@ -439,8 +439,8 @@ static void deblocking_filter_CTB(HEVCContext *s, int x0, int y0)
                 tc_offset   = x >= x0 ? cur_tc_offset : left_tc_offset;
                 beta_offset = x >= x0 ? cur_beta_offset : left_beta_offset;
 
-                beta[0] = betatable[av_clip(qp0 + (beta_offset >> 1 << 1), 0, MAX_QP)];
-                beta[1] = betatable[av_clip(qp1 + (beta_offset >> 1 << 1), 0, MAX_QP)];
+                beta[0] = betatable[av_clip(qp0 + beta_offset, 0, MAX_QP)];
+                beta[1] = betatable[av_clip(qp1 + beta_offset, 0, MAX_QP)];
                 tc[0]   = bs0 ? TC_CALC(qp0, bs0) : 0;
                 tc[1]   = bs1 ? TC_CALC(qp1, bs1) : 0;
                 src     = &s->frame->data[LUMA][y * s->frame->linesize[LUMA] + (x << s->sps->pixel_shift)];

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list