ffmpeg | branch: master | Anton Khirnov <an...@khirnov.net> | Sat Nov 15 20:00:22 2014 +0100| [2c6a7f9348378f887066fb1669c46b9485e8ef3e] | committer: Anton Khirnov
hevc: do not store rqt_root_cbf in the context It does not need to be accessed outside of hls_coding_unit(). > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=2c6a7f9348378f887066fb1669c46b9485e8ef3e --- libavcodec/hevc.c | 7 ++++--- libavcodec/hevc.h | 2 -- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c index 5dbcc70..4557bdf 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; diff --git a/libavcodec/hevc.h b/libavcodec/hevc.h index 2cc2608..37131cd 100644 --- a/libavcodec/hevc.h +++ b/libavcodec/hevc.h @@ -605,8 +605,6 @@ typedef struct CodingUnit { enum PredMode pred_mode; ///< PredMode enum PartMode part_mode; ///< PartMode - uint8_t rqt_root_cbf; - // Inferred parameters uint8_t intra_split_flag; ///< IntraSplitFlag uint8_t max_trafo_depth; ///< MaxTrafoDepth _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog