Browse Source

hevc: do not store pcm_flag in the context

It does not need to be accessed outside of hls_coding_unit().
tags/n2.5
Anton Khirnov 11 years ago
parent
commit
920bca3e23
2 changed files with 5 additions and 6 deletions
  1. +5
    -4
      libavcodec/hevc.c
  2. +0
    -2
      libavcodec/hevc.h

+ 5
- 4
libavcodec/hevc.c View File

@@ -2065,7 +2065,6 @@ static int hls_coding_unit(HEVCContext *s, int x0, int y0, int log2_cb_size)
lc->cu.pred_mode = MODE_INTRA;
lc->cu.part_mode = PART_2Nx2N;
lc->cu.intra_split_flag = 0;
lc->cu.pcm_flag = 0;

SAMPLE_CTB(s->skip_flag, x_cb, y_cb) = 0;
for (x = 0; x < 4; x++)
@@ -2096,6 +2095,8 @@ static int hls_coding_unit(HEVCContext *s, int x0, int y0, int log2_cb_size)
if (!s->sh.disable_deblocking_filter_flag)
ff_hevc_deblocking_boundary_strengths(s, x0, y0, log2_cb_size);
} else {
int pcm_flag = 0;

if (s->sh.slice_type != I_SLICE)
lc->cu.pred_mode = ff_hevc_pred_mode_decode(s);
if (lc->cu.pred_mode != MODE_INTRA ||
@@ -2109,9 +2110,9 @@ static int hls_coding_unit(HEVCContext *s, int x0, int y0, int log2_cb_size)
if (lc->cu.part_mode == PART_2Nx2N && s->sps->pcm_enabled_flag &&
log2_cb_size >= s->sps->pcm.log2_min_pcm_cb_size &&
log2_cb_size <= s->sps->pcm.log2_max_pcm_cb_size) {
lc->cu.pcm_flag = ff_hevc_pcm_flag_decode(s);
pcm_flag = ff_hevc_pcm_flag_decode(s);
}
if (lc->cu.pcm_flag) {
if (pcm_flag) {
intra_prediction_unit_default_value(s, x0, y0, log2_cb_size);
ret = hls_pcm_sample(s, x0, y0, log2_cb_size);
if (s->sps->pcm.loop_filter_disable_flag)
@@ -2161,7 +2162,7 @@ static int hls_coding_unit(HEVCContext *s, int x0, int y0, int log2_cb_size)
}
}

if (!lc->cu.pcm_flag) {
if (!pcm_flag) {
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);


+ 0
- 2
libavcodec/hevc.h View File

@@ -607,8 +607,6 @@ typedef struct CodingUnit {

uint8_t rqt_root_cbf;

uint8_t pcm_flag;

// Inferred parameters
uint8_t intra_split_flag; ///< IntraSplitFlag
uint8_t max_trafo_depth; ///< MaxTrafoDepth


Loading…
Cancel
Save