Browse Source

h264: update the current bit depth/chroma type in init_slice_header()

With frame threading, it is currently only updated in the context where
the change occurs, but not in any other contexts.
tags/n2.7
Anton Khirnov 10 years ago
parent
commit
c9ccbc7333
1 changed files with 3 additions and 4 deletions
  1. +3
    -4
      libavcodec/h264_slice.c

+ 3
- 4
libavcodec/h264_slice.c View File

@@ -1014,6 +1014,8 @@ static int h264_slice_header_init(H264Context *h, int reinit)

h->avctx->bits_per_raw_sample = h->sps.bit_depth_luma;
h->pixel_shift = h->sps.bit_depth_luma > 8;
h->chroma_format_idc = h->sps.chroma_format_idc;
h->bit_depth_luma = h->sps.bit_depth_luma;

ff_h264dsp_init(&h->h264dsp, h->sps.bit_depth_luma,
h->sps.chroma_format_idc);
@@ -1158,11 +1160,8 @@ int ff_h264_decode_slice_header(H264Context *h, H264SliceContext *sl)
h->sps = *h->sps_buffers[h->pps.sps_id];

if (h->bit_depth_luma != h->sps.bit_depth_luma ||
h->chroma_format_idc != h->sps.chroma_format_idc) {
h->bit_depth_luma = h->sps.bit_depth_luma;
h->chroma_format_idc = h->sps.chroma_format_idc;
h->chroma_format_idc != h->sps.chroma_format_idc)
needs_reinit = 1;
}

if (h->flags & CODEC_FLAG_LOW_DELAY ||
(h->sps.bitstream_restriction_flag &&


Loading…
Cancel
Save