diff options
author | Diego Biurrun <diego@biurrun.de> | 2013-11-05 08:16:31 +0100 |
---|---|---|
committer | Diego Biurrun <diego@biurrun.de> | 2013-11-13 21:07:45 +0100 |
commit | 19e30a58fc8ee6187a0bc14aff7f566a13c81421 (patch) | |
tree | faf20ff671c7a6e7f6984f30b058b22b59ca8c73 /libavcodec/error_resilience.c | |
parent | c7f7bfc9e3a3150ba72bc34366c13fb2210c66ac (diff) | |
download | ffmpeg-19e30a58fc8ee6187a0bc14aff7f566a13c81421.tar.gz |
Deprecate obsolete XvMC hardware decoding support
XvMC has long ago been superseded by newer acceleration APIs, such as
VDPAU, and few downstreams still support it. Furthermore XvMC is not
implemented within the hwaccel framework, but requires its own specific
code in the MPEG-1/2 decoder, which is a maintenance burden.
Diffstat (limited to 'libavcodec/error_resilience.c')
-rw-r--r-- | libavcodec/error_resilience.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libavcodec/error_resilience.c b/libavcodec/error_resilience.c index 1769d2b839..51ebc04628 100644 --- a/libavcodec/error_resilience.c +++ b/libavcodec/error_resilience.c @@ -27,11 +27,13 @@ #include <limits.h> +#include "libavutil/internal.h" #include "avcodec.h" #include "error_resilience.h" #include "mpegvideo.h" #include "rectangle.h" #include "thread.h" +#include "version.h" /** * @param stride the number of MVs to get to the next row @@ -672,11 +674,15 @@ static int is_intra_more_likely(ERContext *s) if (undamaged_count < 5) return 0; // almost all MBs damaged -> use temporal prediction +#if FF_API_XVMC +FF_DISABLE_DEPRECATION_WARNINGS // prevent dsp.sad() check, that requires access to the image if (CONFIG_MPEG_XVMC_DECODER && s->avctx->xvmc_acceleration && s->cur_pic->f.pict_type == AV_PICTURE_TYPE_I) return 1; +FF_ENABLE_DEPRECATION_WARNINGS +#endif /* FF_API_XVMC */ skip_amount = FFMAX(undamaged_count / 50, 1); // check only up to 50 MBs is_intra_likely = 0; @@ -1105,9 +1111,13 @@ void ff_er_frame_end(ERContext *s) } else guess_mv(s); +#if FF_API_XVMC +FF_DISABLE_DEPRECATION_WARNINGS /* the filters below are not XvMC compatible, skip them */ if (CONFIG_MPEG_XVMC_DECODER && s->avctx->xvmc_acceleration) goto ec_clean; +FF_ENABLE_DEPRECATION_WARNINGS +#endif /* FF_API_XVMC */ /* fill DC for inter blocks */ for (mb_y = 0; mb_y < s->mb_height; mb_y++) { for (mb_x = 0; mb_x < s->mb_width; mb_x++) { |