Revision 085d9d98 libavcodec/h264_loopfilter.c

View differences:

libavcodec/h264_loopfilter.c
594 594
        if( dir == 0 ) {
595 595
            filter_mb_edgev( h, &img_y[4*edge], linesize, bS, qp );
596 596
            if( (edge&1) == 0 ) {
597
                filter_mb_edgecv( h, &img_cb[2*edge], uvlinesize, bS,
598
                                  ( h->chroma_qp[0] + get_chroma_qp( h, 0, s->current_picture.qscale_table[mbn_xy] ) + 1 ) >> 1);
599
                filter_mb_edgecv( h, &img_cr[2*edge], uvlinesize, bS,
600
                                  ( h->chroma_qp[1] + get_chroma_qp( h, 1, s->current_picture.qscale_table[mbn_xy] ) + 1 ) >> 1);
597
                int qp= ( h->chroma_qp[0] + get_chroma_qp( h, 0, s->current_picture.qscale_table[mbn_xy] ) + 1 ) >> 1;
598
                filter_mb_edgecv( h, &img_cb[2*edge], uvlinesize, bS, qp);
599
                if(h->pps.chroma_qp_diff)
600
                    qp= ( h->chroma_qp[1] + get_chroma_qp( h, 1, s->current_picture.qscale_table[mbn_xy] ) + 1 ) >> 1;
601
                filter_mb_edgecv( h, &img_cr[2*edge], uvlinesize, bS, qp);
601 602
            }
602 603
        } else {
603 604
            filter_mb_edgeh( h, &img_y[4*edge*linesize], linesize, bS, qp );
604 605
            if( (edge&1) == 0 ) {
605
                filter_mb_edgech( h, &img_cb[2*edge*uvlinesize], uvlinesize, bS,
606
                                  ( h->chroma_qp[0] + get_chroma_qp( h, 0, s->current_picture.qscale_table[mbn_xy] ) + 1 ) >> 1);
607
                filter_mb_edgech( h, &img_cr[2*edge*uvlinesize], uvlinesize, bS,
608
                                  ( h->chroma_qp[1] + get_chroma_qp( h, 1, s->current_picture.qscale_table[mbn_xy] ) + 1 ) >> 1);
606
                int qp= ( h->chroma_qp[0] + get_chroma_qp( h, 0, s->current_picture.qscale_table[mbn_xy] ) + 1 ) >> 1;
607
                filter_mb_edgech( h, &img_cb[2*edge*uvlinesize], uvlinesize, bS, qp);
608
                if(h->pps.chroma_qp_diff)
609
                    qp= ( h->chroma_qp[1] + get_chroma_qp( h, 1, s->current_picture.qscale_table[mbn_xy] ) + 1 ) >> 1;
610
                filter_mb_edgech( h, &img_cr[2*edge*uvlinesize], uvlinesize, bS, qp);
609 611
            }
610 612
        }
611 613
    }

Also available in: Unified diff