Browse Source

Enable decoding of high bit depth h264.

This patch completes the high bit depth h264 decoding support.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
tags/n0.8
Oskar Arvidsson Ronald S. Bultje 14 years ago
parent
commit
d545cf804c
1 changed files with 11 additions and 0 deletions
  1. +11
    -0
      libavcodec/h264.c

+ 11
- 0
libavcodec/h264.c View File

@@ -1930,12 +1930,23 @@ static int decode_slice_header(H264Context *h, H264Context *h0){
av_reduce(&s->avctx->time_base.num, &s->avctx->time_base.den,
h->sps.num_units_in_tick, den, 1<<30);
}

switch (h->sps.bit_depth_luma) {
case 9 :
s->avctx->pix_fmt = PIX_FMT_YUV420P9;
break;
case 10 :
s->avctx->pix_fmt = PIX_FMT_YUV420P10;
break;
default:
s->avctx->pix_fmt = s->avctx->get_format(s->avctx,
s->avctx->codec->pix_fmts ?
s->avctx->codec->pix_fmts :
s->avctx->color_range == AVCOL_RANGE_JPEG ?
hwaccel_pixfmt_list_h264_jpeg_420 :
ff_hwaccel_pixfmt_list_420);
}

s->avctx->hwaccel = ff_find_hwaccel(s->avctx->codec->id, s->avctx->pix_fmt);

if (MPV_common_init(s) < 0)


Loading…
Cancel
Save