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.
This commit is contained in:
@@ -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++) {
|
||||
|
Reference in New Issue
Block a user