aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>2013-02-24 17:17:41 +0100
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>2013-02-24 19:49:06 +0100
commitc65eb7907c49cb20ac46ba8d05d9894a7d6671d3 (patch)
tree97328bf2a0fc0eb2c7eecc5c2cd82223e0bbbc00
parentdb6e2e848b21d988fb108995387a8c7836da4dc7 (diff)
downloadffmpeg-c65eb7907c49cb20ac46ba8d05d9894a7d6671d3.tar.gz
mpeg12: Fix non-hwaccel VDPAU decode.
Previously avctx->hwaccel would have been set to a dummy value, now an explicit check is necessary instead. Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
-rw-r--r--libavcodec/mpeg12.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/mpeg12.c b/libavcodec/mpeg12.c
index 6462529107..2ef33602f9 100644
--- a/libavcodec/mpeg12.c
+++ b/libavcodec/mpeg12.c
@@ -1349,7 +1349,7 @@ static int mpeg_decode_postinit(AVCodecContext *avctx)
avctx->hwaccel = ff_find_hwaccel(avctx->codec->id, avctx->pix_fmt);
// until then pix_fmt may be changed right after codec init
if (avctx->pix_fmt == AV_PIX_FMT_XVMC_MPEG2_IDCT ||
- avctx->hwaccel )
+ avctx->hwaccel || uses_vdpau(avctx))
if (avctx->idct_algo == FF_IDCT_AUTO)
avctx->idct_algo = FF_IDCT_SIMPLE;
@@ -2085,7 +2085,7 @@ static int vcr2_init_sequence(AVCodecContext *avctx)
avctx->pix_fmt = mpeg_get_pixelformat(avctx);
avctx->hwaccel = ff_find_hwaccel(avctx->codec->id, avctx->pix_fmt);
- if( avctx->pix_fmt == AV_PIX_FMT_XVMC_MPEG2_IDCT || avctx->hwaccel )
+ if (avctx->pix_fmt == AV_PIX_FMT_XVMC_MPEG2_IDCT || avctx->hwaccel || uses_vdpau(avctx))
if (avctx->idct_algo == FF_IDCT_AUTO)
avctx->idct_algo = FF_IDCT_SIMPLE;