diff options
author | Anton Khirnov <anton@khirnov.net> | 2014-11-15 20:00:22 +0100 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2014-11-17 09:25:12 +0100 |
commit | 2c6a7f9348378f887066fb1669c46b9485e8ef3e (patch) | |
tree | acfbc95dc229e3538bf33c6b0a9ad6252b7d47c9 /libavcodec/hevc.c | |
parent | 920bca3e2332dced9c78bd14cfc2ff138188bd57 (diff) | |
download | ffmpeg-2c6a7f9348378f887066fb1669c46b9485e8ef3e.tar.gz |
hevc: do not store rqt_root_cbf in the context
It does not need to be accessed outside of hls_coding_unit().
Diffstat (limited to 'libavcodec/hevc.c')
-rw-r--r-- | libavcodec/hevc.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c index 5dbcc70290..4557bdf5bd 100644 --- a/libavcodec/hevc.c +++ b/libavcodec/hevc.c @@ -2061,7 +2061,6 @@ static int hls_coding_unit(HEVCContext *s, int x0, int y0, int log2_cb_size) lc->cu.x = x0; lc->cu.y = y0; - lc->cu.rqt_root_cbf = 1; lc->cu.pred_mode = MODE_INTRA; lc->cu.part_mode = PART_2Nx2N; lc->cu.intra_split_flag = 0; @@ -2163,11 +2162,13 @@ static int hls_coding_unit(HEVCContext *s, int x0, int y0, int log2_cb_size) } if (!pcm_flag) { + int rqt_root_cbf = 1; + if (lc->cu.pred_mode != MODE_INTRA && !(lc->cu.part_mode == PART_2Nx2N && lc->pu.merge_flag)) { - lc->cu.rqt_root_cbf = ff_hevc_no_residual_syntax_flag_decode(s); + rqt_root_cbf = ff_hevc_no_residual_syntax_flag_decode(s); } - if (lc->cu.rqt_root_cbf) { + if (rqt_root_cbf) { lc->cu.max_trafo_depth = lc->cu.pred_mode == MODE_INTRA ? s->sps->max_transform_hierarchy_depth_intra + lc->cu.intra_split_flag : s->sps->max_transform_hierarchy_depth_inter; |