comparison armv4l/mpegvideo_arm.c @ 874:8cc0d241da37 libavcodec

* compilation fix (ARM users please check)
author kabi
date Tue, 19 Nov 2002 07:33:36 +0000
parents c3fc09466f92
children c76442f7d0b2
comparison
equal deleted inserted replaced
873:47f44f256a3c 874:8cc0d241da37
20 #include "../dsputil.h" 20 #include "../dsputil.h"
21 #include "../mpegvideo.h" 21 #include "../mpegvideo.h"
22 #include "../avcodec.h" 22 #include "../avcodec.h"
23 23
24 extern void j_rev_dct_ARM(DCTELEM *data); 24 extern void j_rev_dct_ARM(DCTELEM *data);
25 /* XXX: local hack */
26 static void (*ff_put_pixels_clamped)(const DCTELEM *block, UINT8 *pixels, int line_size);
27 static void (*ff_add_pixels_clamped)(const DCTELEM *block, UINT8 *pixels, int line_size);
25 28
26 /* XXX: those functions should be suppressed ASAP when all IDCTs are 29 /* XXX: those functions should be suppressed ASAP when all IDCTs are
27 converted */ 30 converted */
28 static void arm_idct_put(UINT8 *dest, int line_size, DCTELEM *block) 31 static void arm_idct_put(UINT8 *dest, int line_size, DCTELEM *block)
29 { 32 {
30 j_rev_dct_ARM (block); 33 j_rev_dct_ARM (block);
31 put_pixels_clamped(block, dest, line_size); 34 ff_put_pixels_clamped(block, dest, line_size);
32 } 35 }
33 static void arm_idct_add(UINT8 *dest, int line_size, DCTELEM *block) 36 static void arm_idct_add(UINT8 *dest, int line_size, DCTELEM *block)
34 { 37 {
35 j_rev_dct_ARM (block); 38 j_rev_dct_ARM (block);
36 add_pixels_clamped(block, dest, line_size); 39 ff_add_pixels_clamped(block, dest, line_size);
37 } 40 }
38 41
39 void MPV_common_init_armv4l(MpegEncContext *s) 42 void MPV_common_init_armv4l(MpegEncContext *s)
40 { 43 {
41 int i; 44 int i;
42 const int idct_algo= s->avctx->idct_algo; 45 const int idct_algo= s->avctx->idct_algo;
43 46
47 ff_put_pixels_clamped = s->avctx->dsp.put_pixels_clamped;
48 ff_add_pixels_clamped = s->avctx->dsp.put_pixels_clamped;
49
44 if(idct_algo==FF_IDCT_AUTO || idct_algo==FF_IDCT_ARM){ 50 if(idct_algo==FF_IDCT_AUTO || idct_algo==FF_IDCT_ARM){
45 s->idct_put= arm_idct_put; 51 s->idct_put= arm_idct_put;
46 s->idct_add= arm_idct_add; 52 s->idct_add= arm_idct_add;
47 s->idct_permutation_type= FF_NO_IDCT_PERM; 53 s->idct_permutation_type= FF_NO_IDCT_PERM;
48 } 54 }