Commit e4bf3a97 authored by Michael Niedermayer's avatar Michael Niedermayer

Merge branch 'master' of https://github.com/upsuper/ffmpeg-vdadec

* 'master' of https://github.com/upsuper/ffmpeg-vdadec:
  vda_h264_dec: remove check_format
Merged-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parents c8faa474 4a023d5b
...@@ -135,48 +135,6 @@ static av_cold int vdadec_close(AVCodecContext *avctx) ...@@ -135,48 +135,6 @@ static av_cold int vdadec_close(AVCodecContext *avctx)
return 0; return 0;
} }
static av_cold int check_format(AVCodecContext *avctx)
{
AVCodecParserContext *parser;
uint8_t *pout;
int psize;
int index;
H264Context *h;
int ret = -1;
/* init parser & parse file */
parser = av_parser_init(avctx->codec->id);
if (!parser) {
av_log(avctx, AV_LOG_ERROR, "Failed to open H.264 parser.\n");
goto final;
}
parser->flags = PARSER_FLAG_COMPLETE_FRAMES;
index = av_parser_parse2(parser, avctx, &pout, &psize, NULL, 0, 0, 0, 0);
if (index < 0) {
av_log(avctx, AV_LOG_ERROR, "Failed to parse this file.\n");
goto release_parser;
}
/* check if support */
h = parser->priv_data;
switch (h->sps.bit_depth_luma) {
case 8:
if (!CHROMA444(h) && !CHROMA422(h)) {
// only this will H.264 decoder switch to hwaccel
ret = 0;
break;
}
default:
av_log(avctx, AV_LOG_ERROR, "Unsupported file.\n");
}
release_parser:
av_parser_close(parser);
final:
return ret;
}
static av_cold int vdadec_init(AVCodecContext *avctx) static av_cold int vdadec_init(AVCodecContext *avctx)
{ {
VDADecoderContext *ctx = avctx->priv_data; VDADecoderContext *ctx = avctx->priv_data;
...@@ -194,10 +152,6 @@ static av_cold int vdadec_init(AVCodecContext *avctx) ...@@ -194,10 +152,6 @@ static av_cold int vdadec_init(AVCodecContext *avctx)
ff_h264_vda_decoder.pix_fmts = vda_pixfmts; ff_h264_vda_decoder.pix_fmts = vda_pixfmts;
} }
/* check if VDA supports this file */
if (check_format(avctx) < 0)
goto failed;
/* init vda */ /* init vda */
memset(vda_ctx, 0, sizeof(struct vda_context)); memset(vda_ctx, 0, sizeof(struct vda_context));
vda_ctx->width = avctx->width; vda_ctx->width = avctx->width;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment