* compilation fix (ARM users please check)

Originally committed as revision 1225 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Zdenek Kabelac 2002-11-19 07:33:36 +00:00
parent 231dd3f327
commit 83f238cbf0
4 changed files with 13 additions and 4 deletions

View File

@ -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;
} }

View File

@ -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)
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;

View File

@ -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);

View File

@ -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