diff options
author | Joakim Plate <elupus@ecce.se> | 2013-10-13 05:20:00 -0700 |
---|---|---|
committer | Joakim Plate <elupus@ecce.se> | 2013-10-13 05:20:00 -0700 |
commit | f02ac98fe8851aac15245792b9798813fbd06c1a (patch) | |
tree | b66159bb00350d826f012e6bf65f964139ef731a | |
parent | 82ba5d998b5cbe58b04768a270ed366957e17823 (diff) | |
parent | 99243803fc0c13051f44040dc5081e5a98634252 (diff) |
Merge pull request #3417 from elupus/mpeg2sd
dvdplayer: disallow hw accel of SD mpeg2's
-rw-r--r-- | xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp index 143675ab6c..59dc781849 100644 --- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp @@ -71,6 +71,14 @@ enum PixelFormat CDVDVideoCodecFFmpeg::GetFormat( struct AVCodecContext * avctx if(!ctx->IsHardwareAllowed()) return ctx->m_dllAvCodec.avcodec_default_get_format(avctx, fmt); + /* there are many corrupt mpeg2 rips from dvd's which don't * + * follow profile spec properly, they go corrupt on hw, so * + * keep those running in software for the time being. */ + if (avctx->codec_id == AV_CODEC_ID_MPEG2VIDEO + && avctx->height <= 576 + && avctx->width <= 720) + return ctx->m_dllAvCodec.avcodec_default_get_format(avctx, fmt); + const PixelFormat * cur = fmt; while(*cur != PIX_FMT_NONE) { |