Browse Source

hevc: implement pic_output_flag handling

Sample-Id: OPFLAG_B_Qualcomm_1.bit, OPFLAG_C_Qualcomm_1.bit
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
tags/n2.3
Gildas Cocherel Anton Khirnov 11 years ago
parent
commit
458e7c9483
2 changed files with 7 additions and 1 deletions
  1. +2
    -0
      libavcodec/hevc.c
  2. +5
    -1
      libavcodec/hevc_refs.c

+ 2
- 0
libavcodec/hevc.c View File

@@ -546,6 +546,8 @@ static int hls_slice_header(HEVCContext *s)
return AVERROR_INVALIDDATA;
}

// when flag is not present, picture is inferred to be output
sh->pic_output_flag = 1;
if (s->pps->output_flag_present_flag)
sh->pic_output_flag = get_bits1(gb);



+ 5
- 1
libavcodec/hevc_refs.c View File

@@ -143,8 +143,12 @@ int ff_hevc_set_new_ref(HEVCContext *s, AVFrame **frame, int poc)
*frame = ref->frame;
s->ref = ref;

if (s->sh.pic_output_flag)
ref->flags = HEVC_FRAME_FLAG_OUTPUT | HEVC_FRAME_FLAG_SHORT_REF;
else
ref->flags = HEVC_FRAME_FLAG_SHORT_REF;

ref->poc = poc;
ref->flags = HEVC_FRAME_FLAG_OUTPUT | HEVC_FRAME_FLAG_SHORT_REF;
ref->sequence = s->seq_decode;
ref->window = s->sps->output_window;



Loading…
Cancel
Save