diff options
-rw-r--r-- | common/av_common.c | 7 | ||||
-rw-r--r-- | video/decode/vd_lavc.c | 11 |
2 files changed, 6 insertions, 12 deletions
diff --git a/common/av_common.c b/common/av_common.c index 5cb434f969..6efa1803fd 100644 --- a/common/av_common.c +++ b/common/av_common.c @@ -144,6 +144,11 @@ void mp_set_avcodec_threads(struct mp_log *l, AVCodecContext *avctx, int threads avctx->thread_count = threads; } +static bool is_crap(AVCodec *codec) +{ + return !!strstr(codec->name, "_vdpau"); +} + void mp_add_lavc_decoders(struct mp_decoder_list *list, enum AVMediaType type) { AVCodec *cur = NULL; @@ -151,7 +156,7 @@ void mp_add_lavc_decoders(struct mp_decoder_list *list, enum AVMediaType type) cur = av_codec_next(cur); if (!cur) break; - if (av_codec_is_decoder(cur) && cur->type == type) { + if (av_codec_is_decoder(cur) && cur->type == type && !is_crap(cur)) { mp_add_decoder(list, "lavc", mp_codec_from_av_codec_id(cur->id), cur->name, cur->long_name); } diff --git a/video/decode/vd_lavc.c b/video/decode/vd_lavc.c index 0520c3a4fd..fa1d2ddf55 100644 --- a/video/decode/vd_lavc.c +++ b/video/decode/vd_lavc.c @@ -335,17 +335,6 @@ static int init(struct dec_video *vd, const char *decoder) ctx->opts = vd->opts; ctx->decoder = talloc_strdup(ctx, decoder); - if (bstr_endswith0(bstr0(decoder), "_vdpau")) { - MP_WARN(vd, "VDPAU decoder '%s' was requested. " - "This way of enabling hardware\ndecoding is not supported " - "anymore. Use --hwdec=vdpau instead.\nThe --hwdec-codec=... " - "option can be used to restrict which codecs are\nenabled, " - "otherwise all hardware decoding is tried for all codecs.\n", - decoder); - uninit(vd); - return 0; - } - reinit(vd); if (!ctx->avctx) { |