diff options
Diffstat (limited to 'libavcodec/armv4l/mpegvideo_arm.c')
-rw-r--r-- | libavcodec/armv4l/mpegvideo_arm.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libavcodec/armv4l/mpegvideo_arm.c b/libavcodec/armv4l/mpegvideo_arm.c index afb7a41c9d..a3fa8b726c 100644 --- a/libavcodec/armv4l/mpegvideo_arm.c +++ b/libavcodec/armv4l/mpegvideo_arm.c @@ -22,18 +22,21 @@ #include "../avcodec.h" extern void j_rev_dct_ARM(DCTELEM *data); +/* XXX: local hack */ +static void (*ff_put_pixels_clamped)(const DCTELEM *block, UINT8 *pixels, int line_size); +static void (*ff_add_pixels_clamped)(const DCTELEM *block, UINT8 *pixels, int line_size); /* XXX: those functions should be suppressed ASAP when all IDCTs are converted */ static void arm_idct_put(UINT8 *dest, int line_size, DCTELEM *block) { j_rev_dct_ARM (block); - put_pixels_clamped(block, dest, line_size); + ff_put_pixels_clamped(block, dest, line_size); } static void arm_idct_add(UINT8 *dest, int line_size, DCTELEM *block) { j_rev_dct_ARM (block); - add_pixels_clamped(block, dest, line_size); + ff_add_pixels_clamped(block, dest, line_size); } void MPV_common_init_armv4l(MpegEncContext *s) @@ -41,6 +44,9 @@ void MPV_common_init_armv4l(MpegEncContext *s) int i; const int idct_algo= s->avctx->idct_algo; + ff_put_pixels_clamped = s->avctx->dsp.put_pixels_clamped; + ff_add_pixels_clamped = s->avctx->dsp.put_pixels_clamped; + if(idct_algo==FF_IDCT_AUTO || idct_algo==FF_IDCT_ARM){ s->idct_put= arm_idct_put; s->idct_add= arm_idct_add; |