On 2014-02-19 22:43:09 +0100, Luca Barbato wrote: > beta_offset is pre-multiplied by 2. > --- > libavcodec/hevc_filter.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > 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)];
ok, also a strange method to clear the least significant bit Janne _______________________________________________ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel