mirror of https://git.ffmpeg.org/ffmpeg.git
avcodec/h264_cavlc: Remove code duplication
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
parent
bd4c778e19
commit
ab8a8246c8
|
@ -419,20 +419,13 @@ static int decode_residual(const H264Context *h, H264SliceContext *sl,
|
||||||
else
|
else
|
||||||
coeff_token = get_vlc2(gb, chroma422_dc_coeff_token_vlc_table,
|
coeff_token = get_vlc2(gb, chroma422_dc_coeff_token_vlc_table,
|
||||||
CHROMA422_DC_COEFF_TOKEN_VLC_BITS, 1);
|
CHROMA422_DC_COEFF_TOKEN_VLC_BITS, 1);
|
||||||
total_coeff= coeff_token>>2;
|
|
||||||
}else{
|
}else{
|
||||||
if(n >= LUMA_DC_BLOCK_INDEX){
|
total_coeff = pred_non_zero_count(h, sl, n >= LUMA_DC_BLOCK_INDEX ?
|
||||||
total_coeff= pred_non_zero_count(h, sl, (n - LUMA_DC_BLOCK_INDEX)*16);
|
(n - LUMA_DC_BLOCK_INDEX) * 16 : n);
|
||||||
coeff_token = get_vlc2(gb, coeff_token_vlc[total_coeff],
|
coeff_token = get_vlc2(gb, coeff_token_vlc[total_coeff],
|
||||||
COEFF_TOKEN_VLC_BITS, 2);
|
COEFF_TOKEN_VLC_BITS, 2);
|
||||||
total_coeff= coeff_token>>2;
|
|
||||||
}else{
|
|
||||||
total_coeff= pred_non_zero_count(h, sl, n);
|
|
||||||
coeff_token = get_vlc2(gb, coeff_token_vlc[total_coeff],
|
|
||||||
COEFF_TOKEN_VLC_BITS, 2);
|
|
||||||
total_coeff= coeff_token>>2;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
total_coeff = coeff_token >> 2;
|
||||||
sl->non_zero_count_cache[scan8[n]] = total_coeff;
|
sl->non_zero_count_cache[scan8[n]] = total_coeff;
|
||||||
|
|
||||||
//FIXME set last_non_zero?
|
//FIXME set last_non_zero?
|
||||||
|
|
Loading…
Reference in New Issue