Commit 83f238cb authored by Zdenek Kabelac's avatar Zdenek Kabelac

* compilation fix (ARM users please check)

Originally committed as revision 1225 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent 231dd3f3
...@@ -21,7 +21,7 @@ ...@@ -21,7 +21,7 @@
extern void j_rev_dct_ARM(DCTELEM *data); extern void j_rev_dct_ARM(DCTELEM *data);
void dsputil_init_armv4l(void) void dsputil_init_armv4l(DSPContext* c, unsigned mask)
{ {
// ff_idct = j_rev_dct_ARM; // ff_idct = j_rev_dct_ARM;
} }
...@@ -22,18 +22,21 @@ ...@@ -22,18 +22,21 @@
#include "../avcodec.h" #include "../avcodec.h"
extern void j_rev_dct_ARM(DCTELEM *data); 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 /* XXX: those functions should be suppressed ASAP when all IDCTs are
converted */ converted */
static void arm_idct_put(UINT8 *dest, int line_size, DCTELEM *block) static void arm_idct_put(UINT8 *dest, int line_size, DCTELEM *block)
{ {
j_rev_dct_ARM (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) static void arm_idct_add(UINT8 *dest, int line_size, DCTELEM *block)
{ {
j_rev_dct_ARM (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) void MPV_common_init_armv4l(MpegEncContext *s)
...@@ -41,6 +44,9 @@ void MPV_common_init_armv4l(MpegEncContext *s) ...@@ -41,6 +44,9 @@ void MPV_common_init_armv4l(MpegEncContext *s)
int i; int i;
const int idct_algo= s->avctx->idct_algo; 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){ if(idct_algo==FF_IDCT_AUTO || idct_algo==FF_IDCT_ARM){
s->idct_put= arm_idct_put; s->idct_put= arm_idct_put;
s->idct_add= arm_idct_add; s->idct_add= arm_idct_add;
......
...@@ -228,7 +228,7 @@ int DCT_common_init(MpegEncContext *s) ...@@ -228,7 +228,7 @@ int DCT_common_init(MpegEncContext *s)
MPV_common_init_mmi(s); MPV_common_init_mmi(s);
#endif #endif
#ifdef ARCH_ARMV4L #ifdef ARCH_ARMV4L
MPV_common_init_armv4l(); MPV_common_init_armv4l(s);
#endif #endif
#ifdef ARCH_POWERPC #ifdef ARCH_POWERPC
MPV_common_init_ppc(s); MPV_common_init_ppc(s);
......
...@@ -551,6 +551,9 @@ void MPV_common_init_mlib(MpegEncContext *s); ...@@ -551,6 +551,9 @@ void MPV_common_init_mlib(MpegEncContext *s);
#ifdef HAVE_MMI #ifdef HAVE_MMI
void MPV_common_init_mmi(MpegEncContext *s); void MPV_common_init_mmi(MpegEncContext *s);
#endif #endif
#ifdef ARCH_ARMV4L
MPV_common_init_armv4l(MpegEncContext *s);
#endif
#ifdef ARCH_POWERPC #ifdef ARCH_POWERPC
void MPV_common_init_ppc(MpegEncContext *s); void MPV_common_init_ppc(MpegEncContext *s);
#endif #endif
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment