diff options
author | Oskar Arvidsson <oskar@irock.se> | 2011-03-29 17:49:00 +0200 |
---|---|---|
committer | Ronald S. Bultje <rsbultje@gmail.com> | 2011-05-10 07:24:38 -0400 |
commit | d545cf804c4a246285d75aae48741da5d2344993 (patch) | |
tree | 18b33c90befd6c0840e337fcd2a2fb6462ff7e71 /libavcodec/h264.c | |
parent | 19a0729b4cfacfd90b8ee84ab0c093ff7e397e65 (diff) | |
download | ffmpeg-d545cf804c4a246285d75aae48741da5d2344993.tar.gz |
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>
Diffstat (limited to 'libavcodec/h264.c')
-rw-r--r-- | libavcodec/h264.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/libavcodec/h264.c b/libavcodec/h264.c index 1388dd5c09..616d0a4804 100644 --- a/libavcodec/h264.c +++ b/libavcodec/h264.c @@ -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) |