|
|
|
@@ -2707,11 +2707,6 @@ static int decode_slice_header(H264Context *h, H264Context *h0){ |
|
|
|
s->avctx->level = h->sps.level_idc; |
|
|
|
s->avctx->refs = h->sps.ref_frame_count; |
|
|
|
|
|
|
|
if(h == h0 && h->dequant_coeff_pps != pps_id){ |
|
|
|
h->dequant_coeff_pps = pps_id; |
|
|
|
init_dequant_tables(h); |
|
|
|
} |
|
|
|
|
|
|
|
s->mb_width= h->sps.mb_width; |
|
|
|
s->mb_height= h->sps.mb_height * (2 - h->sps.frame_mbs_only_flag); |
|
|
|
|
|
|
|
@@ -2786,7 +2781,7 @@ static int decode_slice_header(H264Context *h, H264Context *h0){ |
|
|
|
else |
|
|
|
s->avctx->pix_fmt = PIX_FMT_YUV420P10; |
|
|
|
break; |
|
|
|
default: |
|
|
|
case 8: |
|
|
|
if (CHROMA444){ |
|
|
|
if (s->avctx->colorspace == AVCOL_SPC_RGB) { |
|
|
|
s->avctx->pix_fmt = PIX_FMT_GBRP; |
|
|
|
@@ -2802,6 +2797,11 @@ static int decode_slice_header(H264Context *h, H264Context *h0){ |
|
|
|
hwaccel_pixfmt_list_h264_jpeg_420 : |
|
|
|
ff_hwaccel_pixfmt_list_420); |
|
|
|
} |
|
|
|
break; |
|
|
|
default: |
|
|
|
av_log(s->avctx, AV_LOG_ERROR, |
|
|
|
"Unsupported bit depth: %d\n", h->sps.bit_depth_luma); |
|
|
|
return AVERROR_INVALIDDATA; |
|
|
|
} |
|
|
|
|
|
|
|
s->avctx->hwaccel = ff_find_hwaccel(s->avctx->codec->id, s->avctx->pix_fmt); |
|
|
|
@@ -2846,6 +2846,11 @@ static int decode_slice_header(H264Context *h, H264Context *h0){ |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if(h == h0 && h->dequant_coeff_pps != pps_id){ |
|
|
|
h->dequant_coeff_pps = pps_id; |
|
|
|
init_dequant_tables(h); |
|
|
|
} |
|
|
|
|
|
|
|
h->frame_num= get_bits(&s->gb, h->sps.log2_max_frame_num); |
|
|
|
|
|
|
|
h->mb_mbaff = 0; |
|
|
|
|