diff options
author | Zdenek Kabelac <kabi@informatics.muni.cz> | 2003-02-10 09:35:32 +0000 |
---|---|---|
committer | Zdenek Kabelac <kabi@informatics.muni.cz> | 2003-02-10 09:35:32 +0000 |
commit | 5c91a6755b6412c918e20ff4735ca30f38a12569 (patch) | |
tree | 054521cdfc6d752e89883ef3fcfc05d6c31fd94c /libavcodec | |
parent | cd66005ddaebba2d6cb3b4eae75f70ae2446b204 (diff) | |
download | ffmpeg-5c91a6755b6412c918e20ff4735ca30f38a12569.tar.gz |
* static,const,compiler warning cleanup
Originally committed as revision 1567 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/ac3enc.c | 20 | ||||
-rw-r--r-- | libavcodec/common.c | 8 | ||||
-rw-r--r-- | libavcodec/eval.c | 15 | ||||
-rw-r--r-- | libavcodec/h263.c | 21 | ||||
-rw-r--r-- | libavcodec/i386/dsputil_mmx.c | 68 | ||||
-rw-r--r-- | libavcodec/i386/motion_est_mmx.c | 77 | ||||
-rw-r--r-- | libavcodec/imgconvert.c | 8 | ||||
-rw-r--r-- | libavcodec/imgresample.c | 1 | ||||
-rw-r--r-- | libavcodec/mjpeg.c | 4 | ||||
-rw-r--r-- | libavcodec/motion_est.c | 6 | ||||
-rw-r--r-- | libavcodec/mpegaudio.c | 6 | ||||
-rw-r--r-- | libavcodec/mpegaudiodec.c | 5 | ||||
-rw-r--r-- | libavcodec/mpegvideo.h | 6 | ||||
-rw-r--r-- | libavcodec/msmpeg4.c | 2 | ||||
-rw-r--r-- | libavcodec/ratecontrol.c | 4 | ||||
-rw-r--r-- | libavcodec/resample.c | 2 | ||||
-rw-r--r-- | libavcodec/utils.c | 4 | ||||
-rw-r--r-- | libavcodec/wmv2.c | 2 |
18 files changed, 128 insertions, 131 deletions
diff --git a/libavcodec/ac3enc.c b/libavcodec/ac3enc.c index 2becee57ba..7abc5f3971 100644 --- a/libavcodec/ac3enc.c +++ b/libavcodec/ac3enc.c @@ -28,18 +28,18 @@ typedef struct AC3EncodeContext { int nb_all_channels; int lfe_channel; int bit_rate; - int sample_rate; - int bsid; - int frame_size_min; /* minimum frame size in case rounding is necessary */ - int frame_size; /* current frame size in words */ + unsigned int sample_rate; + unsigned int bsid; + unsigned int frame_size_min; /* minimum frame size in case rounding is necessary */ + unsigned int frame_size; /* current frame size in words */ int halfratecod; - int frmsizecod; - int fscod; /* frequency */ - int acmod; + unsigned int frmsizecod; + unsigned int fscod; /* frequency */ + unsigned int acmod; int lfe; - int bsmod; + unsigned int bsmod; short last_samples[AC3_MAX_CHANNELS][256]; - int chbwcod[AC3_MAX_CHANNELS]; + unsigned int chbwcod[AC3_MAX_CHANNELS]; int nb_coefs[AC3_MAX_CHANNELS]; /* bitrate allocation control */ @@ -586,7 +586,7 @@ static int encode_exp(UINT8 encoded_exp[N/2], } /* return the size in bits taken by the mantissa */ -int compute_mantissa_size(AC3EncodeContext *s, UINT8 *m, int nb_coefs) +static int compute_mantissa_size(AC3EncodeContext *s, UINT8 *m, int nb_coefs) { int bits, mant, i; diff --git a/libavcodec/common.c b/libavcodec/common.c index aa766280b3..8c280f5e9a 100644 --- a/libavcodec/common.c +++ b/libavcodec/common.c @@ -160,16 +160,16 @@ int check_marker(GetBitContext *s, const char *msg) #define GET_DATA(v, table, i, wrap, size) \ {\ - const UINT8 *ptr = (UINT8 *)table + i * wrap;\ + const UINT8 *ptr = (const UINT8 *)table + i * wrap;\ switch(size) {\ case 1:\ - v = *(UINT8 *)ptr;\ + v = *(const UINT8 *)ptr;\ break;\ case 2:\ - v = *(UINT16 *)ptr;\ + v = *(const UINT16 *)ptr;\ break;\ default:\ - v = *(UINT32 *)ptr;\ + v = *(const UINT32 *)ptr;\ break;\ }\ } diff --git a/libavcodec/eval.c b/libavcodec/eval.c index bcaf4f59b2..1a9cce6add 100644 --- a/libavcodec/eval.c +++ b/libavcodec/eval.c @@ -23,6 +23,9 @@ * see http://joe.hotchkiss.com/programming/eval/eval.html */ +#include "avcodec.h" +#include "mpegvideo.h" + #include <stdio.h> #include <stdlib.h> #include <string.h> @@ -43,9 +46,9 @@ typedef struct Parser{ int stack_index; char *s; double *const_value; - char **const_name; // NULL terminated + const char **const_name; // NULL terminated double (**func1)(void *, double a); // NULL terminated - char **func1_name; // NULL terminated + const char **func1_name; // NULL terminated double (**func2)(void *, double a, double b); // NULL terminated char **func2_name; // NULL terminated void *opaque; @@ -71,7 +74,7 @@ static double pop(Parser *p){ return p->stack[ --p->stack_index ]; } -static int strmatch(char *s, char *prefix){ +static int strmatch(const char *s, const char *prefix){ int i; for(i=0; prefix[i]; i++){ if(prefix[i] != s[i]) return 0; @@ -126,7 +129,7 @@ static void evalPrimary(Parser *p){ else if( strmatch(next, "log" ) ) d= log(d); else if( strmatch(next, "squish") ) d= 1/(1+exp(4*d)); else if( strmatch(next, "gauss" ) ) d= exp(-d*d/2)/sqrt(2*M_PI); - else if( strmatch(next, "abs" ) ) d= abs(d); + else if( strmatch(next, "abs" ) ) d= fabs(d); else if( strmatch(next, "max" ) ) d= d > d2 ? d : d2; else if( strmatch(next, "min" ) ) d= d < d2 ? d : d2; else if( strmatch(next, "gt" ) ) d= d > d2 ? 1.0 : 0.0; @@ -228,8 +231,8 @@ static void evalExpression(Parser *p){ } } -double ff_eval(char *s, double *const_value, char **const_name, - double (**func1)(void *, double), char **func1_name, +double ff_eval(char *s, double *const_value, const char **const_name, + double (**func1)(void *, double), const char **func1_name, double (**func2)(void *, double, double), char **func2_name, void *opaque){ Parser p; diff --git a/libavcodec/h263.c b/libavcodec/h263.c index a9c1fc7421..dbf363be93 100644 --- a/libavcodec/h263.c +++ b/libavcodec/h263.c @@ -456,7 +456,7 @@ void mpeg4_encode_mb(MpegEncContext * s, DCTELEM block[6][64], int motion_x, int motion_y) { - int cbpc, cbpy, i, pred_x, pred_y; + int cbpc, cbpy, pred_x, pred_y; int bits; PutBitContext * const pb2 = s->data_partitioning ? &s->pb2 : &s->pb; PutBitContext * const tex_pb = s->data_partitioning && s->pict_type!=B_TYPE ? &s->tex_pb : &s->pb; @@ -467,7 +467,7 @@ void mpeg4_encode_mb(MpegEncContext * s, // printf("**mb x=%d y=%d\n", s->mb_x, s->mb_y); if (!s->mb_intra) { /* compute cbp */ - int cbp = 0; + int i, cbp = 0; for (i = 0; i < 6; i++) { if (s->block_last_index[i] >= 0) cbp |= 1 << (5 - i); @@ -728,7 +728,8 @@ void mpeg4_encode_mb(MpegEncContext * s, int dc_diff[6]; //dc values with the dc prediction subtracted int dir[6]; //prediction direction int zigzag_last_index[6]; - UINT8 *scan_table[6]; + UINT8 *scan_table[6]; + int i; for(i=0; i<6; i++){ const int level= block[i][0]; @@ -1010,7 +1011,7 @@ static int h263_pred_dc(MpegEncContext * s, int n, UINT16 **dc_val_ptr) } -void h263_pred_acdc(MpegEncContext * s, DCTELEM *block, int n) +static void h263_pred_acdc(MpegEncContext * s, DCTELEM *block, int n) { int x, y, wrap, a, c, pred_dc, scale, i; INT16 *dc_val, *ac_val, *ac_val1; @@ -4353,7 +4354,7 @@ static int decode_vol_header(MpegEncContext *s, GetBitContext *gb){ // FIXME a bunch of grayscale shape things if((s->mpeg_quant=get_bits1(gb))){ /* vol_quant_type */ - int i, j, v; + int i, v; /* load default matrixes */ for(i=0; i<64; i++){ @@ -4370,7 +4371,8 @@ static int decode_vol_header(MpegEncContext *s, GetBitContext *gb){ /* load custom intra matrix */ if(get_bits1(gb)){ int last=0; - for(i=0; i<64; i++){ + for(i=0; i<64; i++){ + int j; v= get_bits(gb, 8); if(v==0) break; @@ -4382,7 +4384,7 @@ static int decode_vol_header(MpegEncContext *s, GetBitContext *gb){ /* replicate last value */ for(; i<64; i++){ - j= s->idct_permutation[ ff_zigzag_direct[i] ]; + int j= s->idct_permutation[ ff_zigzag_direct[i] ]; s->intra_matrix[j]= v; s->chroma_intra_matrix[j]= v; } @@ -4391,7 +4393,8 @@ static int decode_vol_header(MpegEncContext *s, GetBitContext *gb){ /* load custom non intra matrix */ if(get_bits1(gb)){ int last=0; - for(i=0; i<64; i++){ + for(i=0; i<64; i++){ + int j; v= get_bits(gb, 8); if(v==0) break; @@ -4403,7 +4406,7 @@ static int decode_vol_header(MpegEncContext *s, GetBitContext *gb){ /* replicate last value */ for(; i<64; i++){ - j= s->idct_permutation[ ff_zigzag_direct[i] ]; + int j= s->idct_permutation[ ff_zigzag_direct[i] ]; s->inter_matrix[j]= last; s->chroma_inter_matrix[j]= last; } diff --git a/libavcodec/i386/dsputil_mmx.c b/libavcodec/i386/dsputil_mmx.c index 857f1d3985..6b18ba0152 100644 --- a/libavcodec/i386/dsputil_mmx.c +++ b/libavcodec/i386/dsputil_mmx.c @@ -23,30 +23,7 @@ int mm_flags; /* multimedia extension flags */ /* FIXME use them in static form */ -int pix_abs16x16_mmx(UINT8 *blk1, UINT8 *blk2, int lx); -int pix_abs16x16_x2_mmx(UINT8 *blk1, UINT8 *blk2, int lx); -int pix_abs16x16_y2_mmx(UINT8 *blk1, UINT8 *blk2, int lx); -int pix_abs16x16_xy2_mmx(UINT8 *blk1, UINT8 *blk2, int lx); - -int pix_abs16x16_mmx2(UINT8 *blk1, UINT8 *blk2, int lx); -int pix_abs16x16_x2_mmx2(UINT8 *blk1, UINT8 *blk2, int lx); -int pix_abs16x16_y2_mmx2(UINT8 *blk1, UINT8 *blk2, int lx); -int pix_abs16x16_xy2_mmx2(UINT8 *blk1, UINT8 *blk2, int lx); - -int pix_abs8x8_mmx(UINT8 *blk1, UINT8 *blk2, int lx); -int pix_abs8x8_x2_mmx(UINT8 *blk1, UINT8 *blk2, int lx); -int pix_abs8x8_y2_mmx(UINT8 *blk1, UINT8 *blk2, int lx); -int pix_abs8x8_xy2_mmx(UINT8 *blk1, UINT8 *blk2, int lx); - -int pix_abs8x8_mmx2(UINT8 *blk1, UINT8 *blk2, int lx); -int pix_abs8x8_x2_mmx2(UINT8 *blk1, UINT8 *blk2, int lx); -int pix_abs8x8_y2_mmx2(UINT8 *blk1, UINT8 *blk2, int lx); -int pix_abs8x8_xy2_mmx2(UINT8 *blk1, UINT8 *blk2, int lx); - -int sad16x16_mmx(void *s, UINT8 *blk1, UINT8 *blk2, int lx); -int sad8x8_mmx(void *s, UINT8 *blk1, UINT8 *blk2, int lx); -int sad16x16_mmx2(void *s, UINT8 *blk1, UINT8 *blk2, int lx); -int sad8x8_mmx2(void *s, UINT8 *blk1, UINT8 *blk2, int lx); +void dsputil_init_pix_mmx(DSPContext* c, unsigned mask); /* pixel operations */ static const uint64_t mm_bone __attribute__ ((aligned(8))) = 0x0101010101010101ULL; @@ -777,7 +754,7 @@ WARPER88_1616(hadamard8_diff_mmx, hadamard8_diff16_mmx) OP(%%mm5, out, %%mm7, d) #define QPEL_BASE(OPNAME, ROUNDER, RND, OP_MMX2, OP_3DNOW)\ -void OPNAME ## mpeg4_qpel16_h_lowpass_mmx2(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h){\ +static void OPNAME ## mpeg4_qpel16_h_lowpass_mmx2(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h){\ uint64_t temp;\ \ asm volatile(\ @@ -944,7 +921,7 @@ static void OPNAME ## mpeg4_qpel16_h_lowpass_3dnow(uint8_t *dst, uint8_t *src, i }\ }\ \ -void OPNAME ## mpeg4_qpel8_h_lowpass_mmx2(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h){\ +static void OPNAME ## mpeg4_qpel8_h_lowpass_mmx2(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h){\ uint64_t temp;\ \ asm volatile(\ @@ -1121,7 +1098,7 @@ static void OPNAME ## mpeg4_qpel16_v_lowpass_ ## MMX(uint8_t *dst, uint8_t *src, );\ }\ \ -void OPNAME ## mpeg4_qpel8_v_lowpass_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ +static void OPNAME ## mpeg4_qpel8_v_lowpass_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ uint64_t temp[9*4];\ uint64_t *temp_ptr= temp;\ int count= 9;\ @@ -1460,15 +1437,6 @@ void dsputil_init_mmx(DSPContext* c, unsigned mask) c->clear_blocks = clear_blocks_mmx; c->pix_sum = pix_sum16_mmx; - c->pix_abs16x16 = pix_abs16x16_mmx; - c->pix_abs16x16_x2 = pix_abs16x16_x2_mmx; - c->pix_abs16x16_y2 = pix_abs16x16_y2_mmx; - c->pix_abs16x16_xy2 = pix_abs16x16_xy2_mmx; - c->pix_abs8x8 = pix_abs8x8_mmx; - c->pix_abs8x8_x2 = pix_abs8x8_x2_mmx; - c->pix_abs8x8_y2 = pix_abs8x8_y2_mmx; - c->pix_abs8x8_xy2 = pix_abs8x8_xy2_mmx; - c->put_pixels_tab[0][0] = put_pixels16_mmx; c->put_pixels_tab[0][1] = put_pixels16_x2_mmx; c->put_pixels_tab[0][2] = put_pixels16_y2_mmx; @@ -1515,26 +1483,10 @@ void dsputil_init_mmx(DSPContext* c, unsigned mask) c->hadamard8_diff[0]= hadamard8_diff16_mmx; c->hadamard8_diff[1]= hadamard8_diff_mmx; - c->sad[0]= sad16x16_mmx; - c->sad[1]= sad8x8_mmx; - c->pix_norm1 = pix_norm1_mmx; c->sse[0] = sse16_mmx; if (mm_flags & MM_MMXEXT) { - c->pix_abs16x16 = pix_abs16x16_mmx2; - c->pix_abs16x16_x2 = pix_abs16x16_x2_mmx2; - c->pix_abs16x16_y2 = pix_abs16x16_y2_mmx2; - c->pix_abs16x16_xy2 = pix_abs16x16_xy2_mmx2; - - c->pix_abs8x8 = pix_abs8x8_mmx2; - c->pix_abs8x8_x2 = pix_abs8x8_x2_mmx2; - c->pix_abs8x8_y2 = pix_abs8x8_y2_mmx2; - c->pix_abs8x8_xy2 = pix_abs8x8_xy2_mmx2; - - c->sad[0]= sad16x16_mmx2; - c->sad[1]= sad8x8_mmx2; - c->put_pixels_tab[0][1] = put_pixels16_x2_mmx2; c->put_pixels_tab[0][2] = put_pixels16_y2_mmx2; c->put_no_rnd_pixels_tab[0][1] = put_no_rnd_pixels16_x2_mmx2; @@ -1644,7 +1596,7 @@ void dsputil_init_mmx(DSPContext* c, unsigned mask) SET_QPEL_FUNC(qpel_pixels_tab[1][15], qpel8_mc33_3dnow) } } - + dsputil_init_pix_mmx(c, mask); #if 0 // for speed testing get_pixels = just_return; @@ -1694,14 +1646,6 @@ void dsputil_set_bit_exact_mmx(DSPContext* c, unsigned mask) c->put_no_rnd_pixels_tab[1][1] = put_no_rnd_pixels8_x2_mmx; c->put_no_rnd_pixels_tab[1][2] = put_no_rnd_pixels8_y2_mmx; c->avg_pixels_tab[1][3] = avg_pixels8_xy2_mmx; - - if (mm_flags & MM_MMXEXT) { - c->pix_abs16x16_x2 = pix_abs16x16_x2_mmx; - c->pix_abs16x16_y2 = pix_abs16x16_y2_mmx; - c->pix_abs16x16_xy2 = pix_abs16x16_xy2_mmx; - c->pix_abs8x8_x2 = pix_abs8x8_x2_mmx; - c->pix_abs8x8_y2 = pix_abs8x8_y2_mmx; - c->pix_abs8x8_xy2= pix_abs8x8_xy2_mmx; - } } + dsputil_set_bit_exact_pix_mmx(c, mask); } diff --git a/libavcodec/i386/motion_est_mmx.c b/libavcodec/i386/motion_est_mmx.c index fa85db67b6..ec4f3ba633 100644 --- a/libavcodec/i386/motion_est_mmx.c +++ b/libavcodec/i386/motion_est_mmx.c @@ -20,6 +20,9 @@ */ #include "../dsputil.h" +void dsputil_init_pix_mmx(DSPContext* c, unsigned mask); +void dsputil_set_bit_exact_pix_mmx(DSPContext* c, unsigned mask); + static const __attribute__ ((aligned(8))) UINT64 round_tab[3]={ 0x0000000000000000, 0x0001000100010001, @@ -118,7 +121,7 @@ static inline void sad8_4_mmx2(UINT8 *blk1, UINT8 *blk2, int stride, int h) asm volatile( ".balign 16 \n\t" "movq "MANGLE(bone)", %%mm5 \n\t" - "1: \n\t" + "1: \n\t" "movq (%1, %%eax), %%mm0 \n\t" "movq (%2, %%eax), %%mm2 \n\t" "movq 1(%1, %%eax), %%mm1 \n\t" @@ -165,7 +168,7 @@ static inline void sad8_2_mmx(UINT8 *blk1a, UINT8 *blk1b, UINT8 *blk2, int strid "punpckhbw %%mm7, %%mm3 \n\t" "paddw %%mm0, %%mm1 \n\t" "paddw %%mm2, %%mm3 \n\t" - "movq (%3, %%eax), %%mm4 \n\t" + "movq (%3, %%eax), %%mm4 \n\t" "movq (%3, %%eax), %%mm2 \n\t" "paddw %%mm5, %%mm1 \n\t" "paddw %%mm5, %%mm3 \n\t" @@ -215,8 +218,8 @@ static inline void sad8_4_mmx(UINT8 *blk1, UINT8 *blk2, int stride, int h) "punpckhbw %%mm7, %%mm4 \n\t" "paddw %%mm3, %%mm2 \n\t" "paddw %%mm4, %%mm1 \n\t" - "movq (%3, %%eax), %%mm3 \n\t" - "movq (%3, %%eax), %%mm4 \n\t" + "movq (%3, %%eax), %%mm3 \n\t" + "movq (%3, %%eax), %%mm4 \n\t" "paddw %%mm5, %%mm2 \n\t" "paddw %%mm5, %%mm1 \n\t" "psrlw $2, %%mm2 \n\t" @@ -237,7 +240,7 @@ static inline void sad8_4_mmx(UINT8 *blk1, UINT8 *blk2, int stride, int h) ); } -static inline int sum_mmx() +static inline int sum_mmx(void) { int ret; asm volatile( @@ -253,7 +256,7 @@ static inline int sum_mmx() return ret&0xFFFF; } -static inline int sum_mmx2() +static inline int sum_mmx2(void) { int ret; asm volatile( @@ -265,7 +268,7 @@ static inline int sum_mmx2() #define PIX_SAD(suf)\ -int pix_abs8x8_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ +static int pix_abs8x8_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ {\ asm volatile("pxor %%mm7, %%mm7 \n\t"\ "pxor %%mm6, %%mm6 \n\t":);\ @@ -274,7 +277,7 @@ int pix_abs8x8_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ \ return sum_ ## suf();\ }\ -int sad8x8_ ## suf(void *s, UINT8 *blk2, UINT8 *blk1, int stride)\ +static int sad8x8_ ## suf(void *s, UINT8 *blk2, UINT8 *blk1, int stride)\ {\ asm volatile("pxor %%mm7, %%mm7 \n\t"\ "pxor %%mm6, %%mm6 \n\t":);\ @@ -284,7 +287,7 @@ int sad8x8_ ## suf(void *s, UINT8 *blk2, UINT8 *blk1, int stride)\ return sum_ ## suf();\ }\ \ -int pix_abs8x8_x2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ +static int pix_abs8x8_x2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ {\ asm volatile("pxor %%mm7, %%mm7 \n\t"\ "pxor %%mm6, %%mm6 \n\t"\ @@ -297,7 +300,7 @@ int pix_abs8x8_x2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ return sum_ ## suf();\ }\ \ -int pix_abs8x8_y2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ +static int pix_abs8x8_y2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ {\ asm volatile("pxor %%mm7, %%mm7 \n\t"\ "pxor %%mm6, %%mm6 \n\t"\ @@ -310,7 +313,7 @@ int pix_abs8x8_y2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ return sum_ ## suf();\ }\ \ -int pix_abs8x8_xy2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ +static int pix_abs8x8_xy2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ {\ asm volatile("pxor %%mm7, %%mm7 \n\t"\ "pxor %%mm6, %%mm6 \n\t"\ @@ -323,7 +326,7 @@ int pix_abs8x8_xy2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ return sum_ ## suf();\ }\ \ -int pix_abs16x16_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ +static int pix_abs16x16_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ {\ asm volatile("pxor %%mm7, %%mm7 \n\t"\ "pxor %%mm6, %%mm6 \n\t":);\ @@ -333,7 +336,7 @@ int pix_abs16x16_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ \ return sum_ ## suf();\ }\ -int sad16x16_ ## suf(void *s, UINT8 *blk2, UINT8 *blk1, int stride)\ +static int sad16x16_ ## suf(void *s, UINT8 *blk2, UINT8 *blk1, int stride)\ {\ asm volatile("pxor %%mm7, %%mm7 \n\t"\ "pxor %%mm6, %%mm6 \n\t":);\ @@ -343,7 +346,7 @@ int sad16x16_ ## suf(void *s, UINT8 *blk2, UINT8 *blk1, int stride)\ \ return sum_ ## suf();\ }\ -int pix_abs16x16_x2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ +static int pix_abs16x16_x2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ {\ asm volatile("pxor %%mm7, %%mm7 \n\t"\ "pxor %%mm6, %%mm6 \n\t"\ @@ -356,7 +359,7 @@ int pix_abs16x16_x2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ \ return sum_ ## suf();\ }\ -int pix_abs16x16_y2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ +static int pix_abs16x16_y2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ {\ asm volatile("pxor %%mm7, %%mm7 \n\t"\ "pxor %%mm6, %%mm6 \n\t"\ @@ -369,7 +372,7 @@ int pix_abs16x16_y2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ \ return sum_ ## suf();\ }\ -int pix_abs16x16_xy2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ +static int pix_abs16x16_xy2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ {\ asm volatile("pxor %%mm7, %%mm7 \n\t"\ "pxor %%mm6, %%mm6 \n\t"\ @@ -385,3 +388,45 @@ int pix_abs16x16_xy2_ ## suf(UINT8 *blk2, UINT8 *blk1, int stride)\ PIX_SAD(mmx) PIX_SAD(mmx2) + +void dsputil_init_pix_mmx(DSPContext* c, unsigned mask) +{ + if (mm_flags & MM_MMX) { + c->pix_abs16x16 = pix_abs16x16_mmx; + c->pix_abs16x16_x2 = pix_abs16x16_x2_mmx; + c->pix_abs16x16_y2 = pix_abs16x16_y2_mmx; + c->pix_abs16x16_xy2 = pix_abs16x16_xy2_mmx; + c->pix_abs8x8 = pix_abs8x8_mmx; + c->pix_abs8x8_x2 = pix_abs8x8_x2_mmx; + c->pix_abs8x8_y2 = pix_abs8x8_y2_mmx; + c->pix_abs8x8_xy2 = pix_abs8x8_xy2_mmx; + + c->sad[0]= sad16x16_mmx; + c->sad[1]= sad8x8_mmx; + } + if (mm_flags & MM_MMXEXT) { + c->pix_abs16x16 = pix_abs16x16_mmx2; + c->pix_abs16x16_x2 = pix_abs16x16_x2_mmx2; + c->pix_abs16x16_y2 = pix_abs16x16_y2_mmx2; + c->pix_abs16x16_xy2 = pix_abs16x16_xy2_mmx2; + c->pix_abs8x8 = pix_abs8x8_mmx2; + c->pix_abs8x8_x2 = pix_abs8x8_x2_mmx2; + c->pix_abs8x8_y2 = pix_abs8x8_y2_mmx2; + c->pix_abs8x8_xy2 = pix_abs8x8_xy2_mmx2; + + c->sad[0]= sad16x16_mmx2; + c->sad[1]= sad8x8_mmx2; + } +} + +void dsputil_set_bit_exact_pix_mmx(DSPContext* c, unsigned mask) +{ + if (mm_flags & MM_MMXEXT) { + c->pix_abs16x16_x2 = pix_abs16x16_x2_mmx; + c->pix_abs16x16_y2 = pix_abs16x16_y2_mmx; + c->pix_abs16x16_xy2 = pix_abs16x16_xy2_mmx; + c->pix_abs8x8_x2 = pix_abs8x8_x2_mmx; + c->pix_abs8x8_y2 = pix_abs8x8_y2_mmx; + c->pix_abs8x8_xy2 = pix_abs8x8_xy2_mmx; + } +} diff --git a/libavcodec/imgconvert.c b/libavcodec/imgconvert.c index 4c9722fa33..6f9e511449 100644 --- a/libavcodec/imgconvert.c +++ b/libavcodec/imgconvert.c @@ -739,7 +739,7 @@ static inline unsigned int bitcopy_n(unsigned int a, int n) #define RGB_IN(r, g, b, s)\ {\ - unsigned int v = ((UINT16 *)(s))[0];\ + unsigned int v = ((const UINT16 *)(s))[0];\ r = bitcopy_n(v >> (10 - 3), 3);\ g = bitcopy_n(v >> (5 - 3), 3);\ b = bitcopy_n(v << 3, 3);\ @@ -762,7 +762,7 @@ RGB_FUNCTIONS(rgb555) #define RGB_IN(r, g, b, s)\ {\ - unsigned int v = ((UINT16 *)(s))[0];\ + unsigned int v = ((const UINT16 *)(s))[0];\ r = bitcopy_n(v >> (11 - 3), 3);\ g = bitcopy_n(v >> (5 - 2), 2);\ b = bitcopy_n(v << 3, 3);\ @@ -833,7 +833,7 @@ RGB_FUNCTIONS(rgb24) #define RGB_IN(r, g, b, s)\ {\ - unsigned int v = ((UINT32 *)(s))[0];\ + unsigned int v = ((const UINT32 *)(s))[0];\ r = (v >> 16) & 0xff;\ g = (v >> 8) & 0xff;\ b = v & 0xff;\ @@ -1229,7 +1229,7 @@ static ConvertEntry convert_table[PIX_FMT_NB][PIX_FMT_NB] = { static int avpicture_alloc(AVPicture *picture, int pix_fmt, int width, int height) { - int size; + unsigned int size; void *ptr; size = avpicture_get_size(pix_fmt, width, height); diff --git a/libavcodec/imgresample.c b/libavcodec/imgresample.c index 28147fc72a..2e83342ce9 100644 --- a/libavcodec/imgresample.c +++ b/libavcodec/imgresample.c @@ -22,7 +22,6 @@ #ifdef USE_FASTMEMCPY #include "fastmemcpy.h" #endif -extern int mm_flags; #define NB_COMPONENTS 3 diff --git a/libavcodec/mjpeg.c b/libavcodec/mjpeg.c index 9617816bb9..ab26ec7aa3 100644 --- a/libavcodec/mjpeg.c +++ b/libavcodec/mjpeg.c @@ -1262,11 +1262,11 @@ out: static int mjpeg_decode_com(MJpegDecodeContext *s) { - int len, i; + int i; UINT8 *cbuf; /* XXX: verify len field validity */ - len = get_bits(&s->gb, 16)-2; + unsigned int len = get_bits(&s->gb, 16)-2; cbuf = av_malloc(len+1); for (i = 0; i < len; i++) diff --git a/libavcodec/motion_est.c b/libavcodec/motion_est.c index a8517fb7cd..ccf4e1e38d 100644 --- a/libavcodec/motion_est.c +++ b/libavcodec/motion_est.c @@ -61,8 +61,8 @@ typedef struct Minima{ }Minima; static int minima_cmp(const void *a, const void *b){ - Minima *da = (Minima *) a; - Minima *db = (Minima *) b; + const Minima *da = (const Minima *) a; + const Minima *db = (const Minima *) b; return da->height - db->height; } @@ -1193,7 +1193,7 @@ int ff_pre_estimate_p_frame_motion(MpegEncContext * s, return dmin; } -int ff_estimate_motion_b(MpegEncContext * s, +static int ff_estimate_motion_b(MpegEncContext * s, int mb_x, int mb_y, int16_t (*mv_table)[2], Picture *picture, int f_code) { int mx, my, range, dmin; diff --git a/libavcodec/mpegaudio.c b/libavcodec/mpegaudio.c index 28329ded4b..dbf7a4b3da 100644 --- a/libavcodec/mpegaudio.c +++ b/libavcodec/mpegaudio.c @@ -54,7 +54,7 @@ typedef struct MpegAudioContext { #include "mpegaudiotab.h" -int MPA_encode_init(AVCodecContext *avctx) +static int MPA_encode_init(AVCodecContext *avctx) { MpegAudioContext *s = avctx->priv_data; int freq = avctx->sample_rate; @@ -737,8 +737,8 @@ static void encode_frame(MpegAudioContext *s, flush_put_bits(p); } -int MPA_encode_frame(AVCodecContext *avctx, - unsigned char *frame, int buf_size, void *data) +static int MPA_encode_frame(AVCodecContext *avctx, + unsigned char *frame, int buf_size, void *data) { MpegAudioContext *s = avctx->priv_data; short *samples = data; diff --git a/libavcodec/mpegaudiodec.c b/libavcodec/mpegaudiodec.c index 9a066c905b..4a8f87410b 100644 --- a/libavcodec/mpegaudiodec.c +++ b/libavcodec/mpegaudiodec.c @@ -348,7 +348,8 @@ static int decode_init(AVCodecContext * avctx) huff_code_table[0] = NULL; for(i=1;i<16;i++) { const HuffTable *h = &mpa_huff_tables[i]; - int xsize, n, x, y; + int xsize, x, y; + unsigned int n; UINT8 *code_table; xsize = h->xsize; @@ -1448,7 +1449,7 @@ static int mp_decode_layer2(MPADecodeContext *s) /* * Seek back in the stream for backstep bytes (at most 511 bytes) */ -static void seek_to_maindata(MPADecodeContext *s, long backstep) +static void seek_to_maindata(MPADecodeContext *s, unsigned int backstep) { UINT8 *ptr; diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h index 91a4525785..9644e96178 100644 --- a/libavcodec/mpegvideo.h +++ b/libavcodec/mpegvideo.h @@ -20,6 +20,8 @@ #ifndef AVCODEC_MPEGVIDEO_H #define AVCODEC_MPEGVIDEO_H +#include "dsputil.h" + #define FRAME_SKIPED 100 // return value for header parsers if frame is not coded enum OutputFormat { @@ -771,8 +773,8 @@ int ff_rate_control_init(MpegEncContext *s); float ff_rate_estimate_qscale(MpegEncContext *s); void ff_write_pass1_stats(MpegEncContext *s); void ff_rate_control_uninit(MpegEncContext *s); -double ff_eval(char *s, double *const_value, char **const_name, - double (**func1)(void *, double), char **func1_name, +double ff_eval(char *s, double *const_value, const char **const_name, + double (**func1)(void *, double), const char **func1_name, double (**func2)(void *, double, double), char **func2_name, void *opaque); diff --git a/libavcodec/msmpeg4.c b/libavcodec/msmpeg4.c index 2c524a0675..5aee0cf90a 100644 --- a/libavcodec/msmpeg4.c +++ b/libavcodec/msmpeg4.c @@ -625,7 +625,7 @@ void msmpeg4_encode_mb(MpegEncContext * s, } /* old ffmpeg msmpeg4v3 mode */ -void ff_old_msmpeg4_dc_scale(MpegEncContext * s) +static void ff_old_msmpeg4_dc_scale(MpegEncContext * s) { if (s->qscale < 5){ s->y_dc_scale = 8; diff --git a/libavcodec/ratecontrol.c b/libavcodec/ratecontrol.c index 6bcbe1c672..ffb9237ac7 100644 --- a/libavcodec/ratecontrol.c +++ b/libavcodec/ratecontrol.c @@ -250,7 +250,7 @@ static double get_qscale(MpegEncContext *s, RateControlEntry *rce, double rate_f (rcc->i_cplx_sum[pict_type] + rcc->p_cplx_sum[pict_type]) / (double)rcc->frame_count[pict_type], 0 }; - char *const_names[]={ + static const char *const_names[]={ "PI", "E", "iTex", @@ -282,7 +282,7 @@ static double get_qscale(MpegEncContext *s, RateControlEntry *rce, double rate_f (void *)qp2bits, NULL }; - char *func1_names[]={ + static const char *func1_names[]={ "bits2qp", "qp2bits", NULL diff --git a/libavcodec/resample.c b/libavcodec/resample.c index b80bea3997..d3984bf803 100644 --- a/libavcodec/resample.c +++ b/libavcodec/resample.c @@ -43,7 +43,7 @@ struct ReSampleContext { static void init_mono_resample(ReSampleChannelContext *s, float ratio) { ratio = 1.0 / ratio; - s->iratio = (int)floor(ratio); + s->iratio = (int)floorf(ratio); if (s->iratio == 0) s->iratio = 1; s->incr = (int)((ratio / s->iratio) * FRAC); diff --git a/libavcodec/utils.c b/libavcodec/utils.c index 554c9cd157..f66e4c6a51 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -46,7 +46,7 @@ char *av_strdup(const char *s) /** * realloc which does nothing if the block is large enough */ -void *av_fast_realloc(void *ptr, int *size, int min_size) +void *av_fast_realloc(void *ptr, unsigned int *size, unsigned int min_size) { if(min_size < *size) return ptr; @@ -63,7 +63,7 @@ static char*** array_static = NULL; static const unsigned int grow_static = 64; // ^2 void *__av_mallocz_static(void** location, unsigned int size) { - int l = (last_static + grow_static) & ~(grow_static - 1); + unsigned int l = (last_static + grow_static) & ~(grow_static - 1); void *ptr = av_mallocz(size); if (!ptr) return NULL; diff --git a/libavcodec/wmv2.c b/libavcodec/wmv2.c index 6def6f2a81..269a055145 100644 --- a/libavcodec/wmv2.c +++ b/libavcodec/wmv2.c @@ -467,7 +467,7 @@ s->picture_number++; //FIXME ? return 0; } -void ff_wmv2_decode_init(MpegEncContext *s){ +static void ff_wmv2_decode_init(MpegEncContext *s){ } static inline int wmv2_decode_motion(Wmv2Context *w, int *mx_ptr, int *my_ptr){ |