[FFmpeg-cvslog] hevc: do not store the transform inter_split flag in the context

Anton Khirnov git at videolan.org
Mon Jul 28 13:15:23 CEST 2014


ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Sun Jul 27 09:49:37 2014 +0000| [0daa2554636ba1d31f3162ffb86991e84eb938a8] | committer: Anton Khirnov

hevc: do not store the transform inter_split flag in the context

It does not need to be preserved.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=0daa2554636ba1d31f3162ffb86991e84eb938a8
---

 libavcodec/hevc.c |   12 ++++++------
 libavcodec/hevc.h |    3 ---
 2 files changed, 6 insertions(+), 9 deletions(-)

diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c
index 9c5cc50..c2c4006 100644
--- a/libavcodec/hevc.c
+++ b/libavcodec/hevc.c
@@ -1361,20 +1361,20 @@ static int hls_transform_tree(HEVCContext *s, int x0, int y0,
 
     lc->tt.cbf_luma = 1;
 
-    lc->tt.inter_split_flag = s->sps->max_transform_hierarchy_depth_inter == 0 &&
-                              lc->cu.pred_mode == MODE_INTER &&
-                              lc->cu.part_mode != PART_2Nx2N &&
-                              trafo_depth == 0;
-
     if (log2_trafo_size <= s->sps->log2_max_trafo_size &&
         log2_trafo_size >  s->sps->log2_min_tb_size    &&
         trafo_depth     < lc->cu.max_trafo_depth       &&
         !(lc->cu.intra_split_flag && trafo_depth == 0)) {
         split_transform_flag = ff_hevc_split_transform_flag_decode(s, log2_trafo_size);
     } else {
+        int inter_split = s->sps->max_transform_hierarchy_depth_inter == 0 &&
+                          lc->cu.pred_mode == MODE_INTER &&
+                          lc->cu.part_mode != PART_2Nx2N &&
+                          trafo_depth == 0;
+
         split_transform_flag = log2_trafo_size > s->sps->log2_max_trafo_size ||
                                (lc->cu.intra_split_flag && trafo_depth == 0) ||
-                               lc->tt.inter_split_flag;
+                               inter_split;
     }
 
     if (log2_trafo_size > 2) {
diff --git a/libavcodec/hevc.h b/libavcodec/hevc.h
index e8f8f1a..6894160 100644
--- a/libavcodec/hevc.h
+++ b/libavcodec/hevc.h
@@ -650,9 +650,6 @@ typedef struct TransformTree {
     uint8_t cbf_cb[MAX_TRANSFORM_DEPTH][MAX_CU_SIZE * MAX_CU_SIZE];
     uint8_t cbf_cr[MAX_TRANSFORM_DEPTH][MAX_CU_SIZE * MAX_CU_SIZE];
     uint8_t cbf_luma;
-
-    // Inferred parameters
-    uint8_t inter_split_flag;
 } TransformTree;
 
 typedef struct TransformUnit {



More information about the ffmpeg-cvslog mailing list