Revision 9873ae0d

View differences:

libavcodec/h264_loopfilter.c
479 479
                if( IS_INTRA(mb_type|s->current_picture.mb_type[mbn_xy]) ) {
480 480
                    *(uint64_t*)bS= 0x0003000300030003ULL;
481 481
                } else {
482
                    const uint8_t *mbn_nnz = h->non_zero_count[mbn_xy] + 4+3*8; //FIXME  8x8dct?
482
                    if(!CABAC && IS_8x8DCT(s->current_picture.mb_type[mbn_xy])){
483
                        bS[0]= 1+((h->cbp_table[mbn_xy] & 4)||h->non_zero_count_cache[scan8[0]+0]);
484
                        bS[1]= 1+((h->cbp_table[mbn_xy] & 4)||h->non_zero_count_cache[scan8[0]+1]);
485
                        bS[2]= 1+((h->cbp_table[mbn_xy] & 8)||h->non_zero_count_cache[scan8[0]+2]);
486
                        bS[3]= 1+((h->cbp_table[mbn_xy] & 8)||h->non_zero_count_cache[scan8[0]+3]);
487
                    }else{
488
                    const uint8_t *mbn_nnz = h->non_zero_count[mbn_xy] + 4+3*8;
483 489
                    int i;
484 490
                    for( i = 0; i < 4; i++ ) {
485 491
                        bS[i] = 1 + !!(h->non_zero_count_cache[scan8[0]+i] | mbn_nnz[i]);
486 492
                    }
493
                    }
487 494
                }
488 495
                // Do not use s->qscale as luma quantizer because it has not the same
489 496
                // value in IPCM macroblocks.

Also available in: Unified diff