Originally committed as revision 3977 to svn://svn.ffmpeg.org/ffmpeg/trunktags/v0.5
| @@ -3740,7 +3740,7 @@ void opt_intra_matrix(const char *arg) | |||||
| static void opt_target(const char *arg) | static void opt_target(const char *arg) | ||||
| { | { | ||||
| int norm = -1; | int norm = -1; | ||||
| static const char const *frame_rates[] = {"25", "30000/1001", "24000/1001"}; | |||||
| static const char *const frame_rates[] = {"25", "30000/1001", "24000/1001"}; | |||||
| if(!strncmp(arg, "pal-", 4)) { | if(!strncmp(arg, "pal-", 4)) { | ||||
| norm = 0; | norm = 0; | ||||
| @@ -314,6 +314,7 @@ static int adx_decode_init(AVCodecContext * avctx) | |||||
| return 0; | return 0; | ||||
| } | } | ||||
| #if 0 | |||||
| static void dump(unsigned char *buf,size_t len) | static void dump(unsigned char *buf,size_t len) | ||||
| { | { | ||||
| int i; | int i; | ||||
| @@ -324,6 +325,8 @@ static void dump(unsigned char *buf,size_t len) | |||||
| } | } | ||||
| av_log(NULL, AV_LOG_ERROR, "\n"); | av_log(NULL, AV_LOG_ERROR, "\n"); | ||||
| } | } | ||||
| #endif | |||||
| static int adx_decode_frame(AVCodecContext *avctx, | static int adx_decode_frame(AVCodecContext *avctx, | ||||
| void *data, int *data_size, | void *data, int *data_size, | ||||
| uint8_t *buf0, int buf_size) | uint8_t *buf0, int buf_size) | ||||
| @@ -2201,6 +2201,8 @@ void avcodec_register_all(void); | |||||
| void avcodec_flush_buffers(AVCodecContext *avctx); | void avcodec_flush_buffers(AVCodecContext *avctx); | ||||
| void avcodec_default_free_buffers(AVCodecContext *s); | |||||
| /* misc usefull functions */ | /* misc usefull functions */ | ||||
| /** | /** | ||||
| @@ -264,6 +264,7 @@ static void refill(CABACContext *c){ | |||||
| c->bytestream+= CABAC_BITS/8; | c->bytestream+= CABAC_BITS/8; | ||||
| } | } | ||||
| #if 0 /* all use commented */ | |||||
| static void refill2(CABACContext *c){ | static void refill2(CABACContext *c){ | ||||
| int i, x; | int i, x; | ||||
| @@ -282,7 +283,7 @@ static void refill2(CABACContext *c){ | |||||
| c->low += x<<i; | c->low += x<<i; | ||||
| c->bytestream+= CABAC_BITS/8; | c->bytestream+= CABAC_BITS/8; | ||||
| } | } | ||||
| #endif | |||||
| static inline void renorm_cabac_decoder(CABACContext *c){ | static inline void renorm_cabac_decoder(CABACContext *c){ | ||||
| while(c->range < (0x200 << CABAC_BITS)){ | while(c->range < (0x200 << CABAC_BITS)){ | ||||
| @@ -303,7 +304,7 @@ static inline void renorm_cabac_decoder_once(CABACContext *c){ | |||||
| static inline int get_cabac(CABACContext *c, uint8_t * const state){ | static inline int get_cabac(CABACContext *c, uint8_t * const state){ | ||||
| int RangeLPS= c->lps_range[*state][c->range>>(CABAC_BITS+7)]<<(CABAC_BITS+1); | int RangeLPS= c->lps_range[*state][c->range>>(CABAC_BITS+7)]<<(CABAC_BITS+1); | ||||
| int bit, lps_mask; | |||||
| int bit, lps_mask attribute_unused; | |||||
| c->range -= RangeLPS; | c->range -= RangeLPS; | ||||
| #if 1 | #if 1 | ||||
| @@ -119,12 +119,14 @@ static int decode_init(AVCodecContext *avctx){ | |||||
| return 0; | return 0; | ||||
| } | } | ||||
| #if 0 | |||||
| static int encode_init(AVCodecContext *avctx){ | static int encode_init(AVCodecContext *avctx){ | ||||
| common_init(avctx); | common_init(avctx); | ||||
| return 0; | return 0; | ||||
| } | } | ||||
| #endif | |||||
| AVCodec cljr_decoder = { | AVCodec cljr_decoder = { | ||||
| "cljr", | "cljr", | ||||
| @@ -85,6 +85,14 @@ extern const struct AVOption avoptions_workaround_bug[11]; | |||||
| #endif | #endif | ||||
| #endif | #endif | ||||
| #ifndef attribute_unused | |||||
| #if defined(__GNUC__) && (__GNUC__ > 3 || __GNUC__ == 3 && __GNUC_MINOR__ > 0) | |||||
| # define attribute_unused __attribute__((unused)) | |||||
| #else | |||||
| # define attribute_unused | |||||
| #endif | |||||
| #endif | |||||
| #ifndef EMULATE_INTTYPES | #ifndef EMULATE_INTTYPES | ||||
| # include <inttypes.h> | # include <inttypes.h> | ||||
| #else | #else | ||||
| @@ -31,6 +31,9 @@ | |||||
| #include "simple_idct.h" | #include "simple_idct.h" | ||||
| #include "faandct.h" | #include "faandct.h" | ||||
| /* snow.c */ | |||||
| void ff_spatial_dwt(int *buffer, int width, int height, int stride, int type, int decomposition_count); | |||||
| uint8_t cropTbl[256 + 2 * MAX_NEG_CROP] = {0, }; | uint8_t cropTbl[256 + 2 * MAX_NEG_CROP] = {0, }; | ||||
| uint32_t squareTbl[512] = {0, }; | uint32_t squareTbl[512] = {0, }; | ||||
| @@ -2378,7 +2381,7 @@ H264_MC(avg_, 16) | |||||
| #define op_scale2(x) dst[x] = clip_uint8( (src[x]*weights + dst[x]*weightd + offset) >> (log2_denom+1)) | #define op_scale2(x) dst[x] = clip_uint8( (src[x]*weights + dst[x]*weightd + offset) >> (log2_denom+1)) | ||||
| #define H264_WEIGHT(W,H) \ | #define H264_WEIGHT(W,H) \ | ||||
| static void weight_h264_pixels ## W ## x ## H ## _c(uint8_t *block, int stride, int log2_denom, int weight, int offset){ \ | static void weight_h264_pixels ## W ## x ## H ## _c(uint8_t *block, int stride, int log2_denom, int weight, int offset){ \ | ||||
| int x, y; \ | |||||
| int attribute_unused x, y; \ | |||||
| offset <<= log2_denom; \ | offset <<= log2_denom; \ | ||||
| if(log2_denom) offset += 1<<(log2_denom-1); \ | if(log2_denom) offset += 1<<(log2_denom-1); \ | ||||
| for(y=0; y<H; y++, block += stride){ \ | for(y=0; y<H; y++, block += stride){ \ | ||||
| @@ -2404,7 +2407,7 @@ static void weight_h264_pixels ## W ## x ## H ## _c(uint8_t *block, int stride, | |||||
| } \ | } \ | ||||
| } \ | } \ | ||||
| static void biweight_h264_pixels ## W ## x ## H ## _c(uint8_t *dst, uint8_t *src, int stride, int log2_denom, int weightd, int weights, int offsetd, int offsets){ \ | static void biweight_h264_pixels ## W ## x ## H ## _c(uint8_t *dst, uint8_t *src, int stride, int log2_denom, int weightd, int weights, int offsetd, int offsets){ \ | ||||
| int x, y; \ | |||||
| int attribute_unused x, y; \ | |||||
| int offset = (offsets + offsetd + 1) >> 1; \ | int offset = (offsets + offsetd + 1) >> 1; \ | ||||
| offset = ((offset << 1) + 1) << log2_denom; \ | offset = ((offset << 1) + 1) << log2_denom; \ | ||||
| for(y=0; y<H; y++, dst += stride, src += stride){ \ | for(y=0; y<H; y++, dst += stride, src += stride){ \ | ||||
| @@ -86,7 +86,7 @@ typedef struct { | |||||
| faacDecFrameInfo *hInfo, | faacDecFrameInfo *hInfo, | ||||
| unsigned char *buffer, | unsigned char *buffer, | ||||
| unsigned long buffer_size); | unsigned long buffer_size); | ||||
| unsigned char* FAADAPI (*faacDecGetErrorMessage)(unsigned char errcode); | |||||
| char* FAADAPI (*faacDecGetErrorMessage)(unsigned char errcode); | |||||
| #endif | #endif | ||||
| void FAADAPI (*faacDecClose)(faacDecHandle hDecoder); | void FAADAPI (*faacDecClose)(faacDecHandle hDecoder); | ||||
| @@ -126,11 +126,6 @@ static int faac_init_mp4(AVCodecContext *avctx) | |||||
| return r; | return r; | ||||
| } | } | ||||
| static int faac_init_aac(AVCodecContext *avctx) | |||||
| { | |||||
| return 0; | |||||
| } | |||||
| static int faac_decode_frame(AVCodecContext *avctx, | static int faac_decode_frame(AVCodecContext *avctx, | ||||
| void *data, int *data_size, | void *data, int *data_size, | ||||
| uint8_t *buf, int buf_size) | uint8_t *buf, int buf_size) | ||||
| @@ -239,7 +234,7 @@ static int faac_decode_init(AVCodecContext *avctx) | |||||
| unsigned char*))); | unsigned char*))); | ||||
| dfaac(Decode, (void *FAADAPI (*)(faacDecHandle, faacDecFrameInfo*, | dfaac(Decode, (void *FAADAPI (*)(faacDecHandle, faacDecFrameInfo*, | ||||
| unsigned char*, unsigned long))); | unsigned char*, unsigned long))); | ||||
| dfaac(GetErrorMessage, (unsigned char* FAADAPI (*)(unsigned char))); | |||||
| dfaac(GetErrorMessage, (char* FAADAPI (*)(unsigned char))); | |||||
| #endif | #endif | ||||
| #undef dfacc | #undef dfacc | ||||
| @@ -143,6 +143,7 @@ static int64_t get_utf8(GetBitContext *gb) | |||||
| return val; | return val; | ||||
| } | } | ||||
| #if 0 | |||||
| static int skip_utf8(GetBitContext *gb) | static int skip_utf8(GetBitContext *gb) | ||||
| { | { | ||||
| int ones=0, bytes; | int ones=0, bytes; | ||||
| @@ -163,6 +164,7 @@ static int skip_utf8(GetBitContext *gb) | |||||
| } | } | ||||
| return 0; | return 0; | ||||
| } | } | ||||
| #endif | |||||
| static int get_crc8(const uint8_t *buf, int count){ | static int get_crc8(const uint8_t *buf, int count){ | ||||
| int crc=0; | int crc=0; | ||||
| @@ -1940,7 +1940,6 @@ static void init_uni_h263_rl_tab(RLTable *rl, uint32_t *bits_tab, uint8_t *len_t | |||||
| int level= slevel < 0 ? -slevel : slevel; | int level= slevel < 0 ? -slevel : slevel; | ||||
| int sign= slevel < 0 ? 1 : 0; | int sign= slevel < 0 ? 1 : 0; | ||||
| int bits, len, code; | int bits, len, code; | ||||
| int level1, run1; | |||||
| len_tab[index]= 100; | len_tab[index]= 100; | ||||
| @@ -45,7 +45,9 @@ | |||||
| void *av_malloc(unsigned int size) | void *av_malloc(unsigned int size) | ||||
| { | { | ||||
| void *ptr; | void *ptr; | ||||
| #ifdef MEMALIGN_HACK | |||||
| int diff; | int diff; | ||||
| #endif | |||||
| /* lets disallow possible ambiguous cases */ | /* lets disallow possible ambiguous cases */ | ||||
| if(size > INT_MAX) | if(size > INT_MAX) | ||||
| @@ -97,7 +99,10 @@ void *av_malloc(unsigned int size) | |||||
| */ | */ | ||||
| void *av_realloc(void *ptr, unsigned int size) | void *av_realloc(void *ptr, unsigned int size) | ||||
| { | { | ||||
| #ifdef MEMALIGN_HACK | |||||
| int diff; | int diff; | ||||
| #endif | |||||
| /* lets disallow possible ambiguous cases */ | /* lets disallow possible ambiguous cases */ | ||||
| if(size > INT_MAX) | if(size > INT_MAX) | ||||
| return NULL; | return NULL; | ||||
| @@ -676,7 +676,7 @@ static int encode_picture_lossless(AVCodecContext *avctx, unsigned char *buf, in | |||||
| if(avctx->pix_fmt == PIX_FMT_RGBA32){ | if(avctx->pix_fmt == PIX_FMT_RGBA32){ | ||||
| int x, y, i; | int x, y, i; | ||||
| const int linesize= p->linesize[0]; | const int linesize= p->linesize[0]; | ||||
| uint16_t (*buffer)[4]= s->rd_scratchpad; | |||||
| uint16_t (*buffer)[4]= (void *) s->rd_scratchpad; | |||||
| int left[3], top[3], topleft[3]; | int left[3], top[3], topleft[3]; | ||||
| for(i=0; i<3; i++){ | for(i=0; i<3; i++){ | ||||
| @@ -317,6 +317,7 @@ static inline void no_motion_search(MpegEncContext * s, | |||||
| *my_ptr = 16 * s->mb_y; | *my_ptr = 16 * s->mb_y; | ||||
| } | } | ||||
| #if 0 /* the use of these functions is inside #if 0 */ | |||||
| static int full_motion_search(MpegEncContext * s, | static int full_motion_search(MpegEncContext * s, | ||||
| int *mx_ptr, int *my_ptr, int range, | int *mx_ptr, int *my_ptr, int range, | ||||
| int xmin, int ymin, int xmax, int ymax, uint8_t *ref_picture) | int xmin, int ymin, int xmax, int ymax, uint8_t *ref_picture) | ||||
| @@ -537,7 +538,7 @@ static int phods_motion_search(MpegEncContext * s, | |||||
| *my_ptr = my; | *my_ptr = my; | ||||
| return dminy; | return dminy; | ||||
| } | } | ||||
| #endif /* 0 */ | |||||
| #define Z_THRESHOLD 256 | #define Z_THRESHOLD 256 | ||||
| @@ -730,7 +731,6 @@ static inline int h263_mv4_search(MpegEncContext *s, int mx, int my, int shift) | |||||
| int dmin_sum=0, mx4_sum=0, my4_sum=0; | int dmin_sum=0, mx4_sum=0, my4_sum=0; | ||||
| int same=1; | int same=1; | ||||
| const int stride= c->stride; | const int stride= c->stride; | ||||
| const int uvstride= c->uvstride; | |||||
| uint8_t *mv_penalty= c->current_mv_penalty; | uint8_t *mv_penalty= c->current_mv_penalty; | ||||
| init_mv4_ref(c); | init_mv4_ref(c); | ||||
| @@ -881,7 +881,6 @@ static int interlaced_search(MpegEncContext *s, int ref_index, | |||||
| uint8_t * const mv_penalty= c->current_mv_penalty; | uint8_t * const mv_penalty= c->current_mv_penalty; | ||||
| int same=1; | int same=1; | ||||
| const int stride= 2*s->linesize; | const int stride= 2*s->linesize; | ||||
| const int uvstride= 2*s->uvlinesize; | |||||
| int dmin_sum= 0; | int dmin_sum= 0; | ||||
| const int mot_stride= s->mb_stride; | const int mot_stride= s->mb_stride; | ||||
| const int xy= s->mb_x + s->mb_y*mot_stride; | const int xy= s->mb_x + s->mb_y*mot_stride; | ||||
| @@ -25,11 +25,11 @@ | |||||
| //lets hope gcc will remove the unused vars ...(gcc 3.2.2 seems to do it ...) | //lets hope gcc will remove the unused vars ...(gcc 3.2.2 seems to do it ...) | ||||
| #define LOAD_COMMON\ | #define LOAD_COMMON\ | ||||
| uint32_t * const score_map= c->score_map;\ | |||||
| const int xmin= c->xmin;\ | |||||
| const int ymin= c->ymin;\ | |||||
| const int xmax= c->xmax;\ | |||||
| const int ymax= c->ymax;\ | |||||
| uint32_t attribute_unused * const score_map= c->score_map;\ | |||||
| const int attribute_unused xmin= c->xmin;\ | |||||
| const int attribute_unused ymin= c->ymin;\ | |||||
| const int attribute_unused xmax= c->xmax;\ | |||||
| const int attribute_unused ymax= c->ymax;\ | |||||
| uint8_t *mv_penalty= c->current_mv_penalty;\ | uint8_t *mv_penalty= c->current_mv_penalty;\ | ||||
| const int pred_x= c->pred_x;\ | const int pred_x= c->pred_x;\ | ||||
| const int pred_y= c->pred_y;\ | const int pred_y= c->pred_y;\ | ||||
| @@ -132,7 +132,7 @@ int MP3lame_encode_frame(AVCodecContext *avctx, | |||||
| unsigned char *frame, int buf_size, void *data) | unsigned char *frame, int buf_size, void *data) | ||||
| { | { | ||||
| Mp3AudioContext *s = avctx->priv_data; | Mp3AudioContext *s = avctx->priv_data; | ||||
| int len, i; | |||||
| int len; | |||||
| int lame_result; | int lame_result; | ||||
| /* lame 3.91 dies on '1-channel interleaved' data */ | /* lame 3.91 dies on '1-channel interleaved' data */ | ||||
| @@ -468,6 +468,7 @@ static void compute_scale_factors(unsigned char scale_code[SBLIMIT], | |||||
| break; | break; | ||||
| default: | default: | ||||
| assert(0); //cant happen | assert(0); //cant happen | ||||
| code = 0; /* kill warning */ | |||||
| } | } | ||||
| #if 0 | #if 0 | ||||
| @@ -257,11 +257,13 @@ static inline int l3_unscale(int value, int exponent) | |||||
| static int dev_4_3_coefs[DEV_ORDER]; | static int dev_4_3_coefs[DEV_ORDER]; | ||||
| #if 0 /* unused */ | |||||
| static int pow_mult3[3] = { | static int pow_mult3[3] = { | ||||
| POW_FIX(1.0), | POW_FIX(1.0), | ||||
| POW_FIX(1.25992104989487316476), | POW_FIX(1.25992104989487316476), | ||||
| POW_FIX(1.58740105196819947474), | POW_FIX(1.58740105196819947474), | ||||
| }; | }; | ||||
| #endif | |||||
| static void int_pow_init(void) | static void int_pow_init(void) | ||||
| { | { | ||||
| @@ -274,6 +276,7 @@ static void int_pow_init(void) | |||||
| } | } | ||||
| } | } | ||||
| #if 0 /* unused, remove? */ | |||||
| /* return the mantissa and the binary exponent */ | /* return the mantissa and the binary exponent */ | ||||
| static int int_pow(int i, int *exp_ptr) | static int int_pow(int i, int *exp_ptr) | ||||
| { | { | ||||
| @@ -318,6 +321,7 @@ static int int_pow(int i, int *exp_ptr) | |||||
| *exp_ptr = eq; | *exp_ptr = eq; | ||||
| return a; | return a; | ||||
| } | } | ||||
| #endif | |||||
| static int decode_init(AVCodecContext * avctx) | static int decode_init(AVCodecContext * avctx) | ||||
| { | { | ||||
| @@ -1820,7 +1820,7 @@ void ff_print_debug_info(MpegEncContext *s, AVFrame *pict){ | |||||
| for(i=0; i<4; i++){ | for(i=0; i<4; i++){ | ||||
| int sx= mb_x*16 + 4 + 8*(i&1); | int sx= mb_x*16 + 4 + 8*(i&1); | ||||
| int sy= mb_y*16 + 4 + 8*(i>>1); | int sy= mb_y*16 + 4 + 8*(i>>1); | ||||
| int xy= (mb_x*2 + (i&1) + (mb_y*2 + (i>>1))*mv_stride) << mv_sample_log2-1; | |||||
| int xy= (mb_x*2 + (i&1) + (mb_y*2 + (i>>1))*mv_stride) << (mv_sample_log2-1); | |||||
| int mx= (pict->motion_val[direction][xy][0]>>shift) + sx; | int mx= (pict->motion_val[direction][xy][0]>>shift) + sx; | ||||
| int my= (pict->motion_val[direction][xy][1]>>shift) + sy; | int my= (pict->motion_val[direction][xy][1]>>shift) + sy; | ||||
| draw_arrow(ptr, sx, sy, mx, my, width, height, s->linesize, 100); | draw_arrow(ptr, sx, sy, mx, my, width, height, s->linesize, 100); | ||||
| @@ -1830,7 +1830,7 @@ void ff_print_debug_info(MpegEncContext *s, AVFrame *pict){ | |||||
| for(i=0; i<2; i++){ | for(i=0; i<2; i++){ | ||||
| int sx=mb_x*16 + 8; | int sx=mb_x*16 + 8; | ||||
| int sy=mb_y*16 + 4 + 8*i; | int sy=mb_y*16 + 4 + 8*i; | ||||
| int xy= (mb_x*2 + (mb_y*2 + i)*mv_stride) << mv_sample_log2-1; | |||||
| int xy= (mb_x*2 + (mb_y*2 + i)*mv_stride) << (mv_sample_log2-1); | |||||
| int mx=(pict->motion_val[direction][xy][0]>>shift); | int mx=(pict->motion_val[direction][xy][0]>>shift); | ||||
| int my=(pict->motion_val[direction][xy][1]>>shift); | int my=(pict->motion_val[direction][xy][1]>>shift); | ||||
| @@ -1844,7 +1844,7 @@ void ff_print_debug_info(MpegEncContext *s, AVFrame *pict){ | |||||
| for(i=0; i<2; i++){ | for(i=0; i<2; i++){ | ||||
| int sx=mb_x*16 + 4 + 8*i; | int sx=mb_x*16 + 4 + 8*i; | ||||
| int sy=mb_y*16 + 8; | int sy=mb_y*16 + 8; | ||||
| int xy= (mb_x*2 + i + mb_y*2*mv_stride) << mv_sample_log2-1; | |||||
| int xy= (mb_x*2 + i + mb_y*2*mv_stride) << (mv_sample_log2-1); | |||||
| int mx=(pict->motion_val[direction][xy][0]>>shift); | int mx=(pict->motion_val[direction][xy][0]>>shift); | ||||
| int my=(pict->motion_val[direction][xy][1]>>shift); | int my=(pict->motion_val[direction][xy][1]>>shift); | ||||
| @@ -2077,7 +2077,6 @@ static int skip_check(MpegEncContext *s, Picture *p, Picture *ref){ | |||||
| int x, y, plane; | int x, y, plane; | ||||
| int score=0; | int score=0; | ||||
| int64_t score64=0; | int64_t score64=0; | ||||
| int64_t threshold; | |||||
| for(plane=0; plane<3; plane++){ | for(plane=0; plane<3; plane++){ | ||||
| const int stride= p->linesize[plane]; | const int stride= p->linesize[plane]; | ||||
| @@ -504,6 +504,7 @@ typedef struct MpegAudioParseContext { | |||||
| #define MPA_HEADER_SIZE 4 | #define MPA_HEADER_SIZE 4 | ||||
| /* header + layer + bitrate + freq + lsf/mpeg25 */ | /* header + layer + bitrate + freq + lsf/mpeg25 */ | ||||
| #undef SAME_HEADER_MASK /* mpegaudio.h defines different version */ | |||||
| #define SAME_HEADER_MASK \ | #define SAME_HEADER_MASK \ | ||||
| (0xffe00000 | (3 << 17) | (3 << 10) | (3 << 19)) | (0xffe00000 | (3 << 17) | (3 << 10) | (3 << 19)) | ||||
| @@ -58,7 +58,7 @@ void ff_init_range_decoder(RangeCoder *c, const uint8_t *buf, int buf_size){ | |||||
| void ff_build_rac_states(RangeCoder *c, int factor, int max_p){ | void ff_build_rac_states(RangeCoder *c, int factor, int max_p){ | ||||
| const int64_t one= 1LL<<32; | const int64_t one= 1LL<<32; | ||||
| int64_t p; | int64_t p; | ||||
| int last_p8, p8, i, j; | |||||
| int last_p8, p8, i; | |||||
| memset(c->zero_state, 0, sizeof(c->zero_state)); | memset(c->zero_state, 0, sizeof(c->zero_state)); | ||||
| memset(c-> one_state, 0, sizeof(c-> one_state)); | memset(c-> one_state, 0, sizeof(c-> one_state)); | ||||
| @@ -94,7 +94,7 @@ static inline void refill(RangeCoder *c){ | |||||
| static inline int get_rac(RangeCoder *c, uint8_t * const state){ | static inline int get_rac(RangeCoder *c, uint8_t * const state){ | ||||
| int range1= (c->range * (*state)) >> 8; | int range1= (c->range * (*state)) >> 8; | ||||
| int one_mask; | |||||
| int attribute_unused one_mask; | |||||
| c->range -= range1; | c->range -= range1; | ||||
| #if 1 | #if 1 | ||||
| @@ -128,7 +128,6 @@ ReSampleContext *audio_resample_init(int output_channels, int input_channels, | |||||
| int output_rate, int input_rate) | int output_rate, int input_rate) | ||||
| { | { | ||||
| ReSampleContext *s; | ReSampleContext *s; | ||||
| int i; | |||||
| if ( input_channels > 2) | if ( input_channels > 2) | ||||
| { | { | ||||
| @@ -287,6 +287,7 @@ void rv20_encode_picture_header(MpegEncContext *s, int picture_number){ | |||||
| } | } | ||||
| } | } | ||||
| #if 0 /* unused, remove? */ | |||||
| static int get_num(GetBitContext *gb) | static int get_num(GetBitContext *gb) | ||||
| { | { | ||||
| int n, n1; | int n, n1; | ||||
| @@ -299,6 +300,7 @@ static int get_num(GetBitContext *gb) | |||||
| return (n << 16) | n1; | return (n << 16) | n1; | ||||
| } | } | ||||
| } | } | ||||
| #endif | |||||
| #endif //CONFIG_ENCODERS | #endif //CONFIG_ENCODERS | ||||
| @@ -845,7 +845,7 @@ static int sonic_decode_close(AVCodecContext *avctx) | |||||
| } | } | ||||
| static int sonic_decode_frame(AVCodecContext *avctx, | static int sonic_decode_frame(AVCodecContext *avctx, | ||||
| int16_t *data, int *data_size, | |||||
| void *data, int *data_size, | |||||
| uint8_t *buf, int buf_size) | uint8_t *buf, int buf_size) | ||||
| { | { | ||||
| SonicContext *s = avctx->priv_data; | SonicContext *s = avctx->priv_data; | ||||
| @@ -600,6 +600,7 @@ static uint16_t svq1_packet_checksum (uint8_t *data, int length, int value) { | |||||
| return value; | return value; | ||||
| } | } | ||||
| #if 0 /* unused, remove? */ | |||||
| static uint16_t svq1_component_checksum (uint16_t *pixels, int pitch, | static uint16_t svq1_component_checksum (uint16_t *pixels, int pitch, | ||||
| int width, int height, int value) { | int width, int height, int value) { | ||||
| int x, y; | int x, y; | ||||
| @@ -614,6 +615,7 @@ static uint16_t svq1_component_checksum (uint16_t *pixels, int pitch, | |||||
| return value; | return value; | ||||
| } | } | ||||
| #endif | |||||
| static void svq1_parse_string (GetBitContext *bitbuf, uint8_t *out) { | static void svq1_parse_string (GetBitContext *bitbuf, uint8_t *out) { | ||||
| uint8_t seed; | uint8_t seed; | ||||
| @@ -677,18 +677,6 @@ AVCodec *avcodec_find_decoder_by_name(const char *name) | |||||
| return NULL; | return NULL; | ||||
| } | } | ||||
| static AVCodec *avcodec_find(enum CodecID id) | |||||
| { | |||||
| AVCodec *p; | |||||
| p = first_avcodec; | |||||
| while (p) { | |||||
| if (p->id == id) | |||||
| return p; | |||||
| p = p->next; | |||||
| } | |||||
| return NULL; | |||||
| } | |||||
| void avcodec_string(char *buf, int buf_size, AVCodecContext *enc, int encode) | void avcodec_string(char *buf, int buf_size, AVCodecContext *enc, int encode) | ||||
| { | { | ||||
| const char *codec_name; | const char *codec_name; | ||||
| @@ -151,12 +151,14 @@ static int decode_init(AVCodecContext *avctx){ | |||||
| return 0; | return 0; | ||||
| } | } | ||||
| #if 0 | |||||
| static int encode_init(AVCodecContext *avctx){ | static int encode_init(AVCodecContext *avctx){ | ||||
| common_init(avctx); | common_init(avctx); | ||||
| return 0; | return 0; | ||||
| } | } | ||||
| #endif | |||||
| AVCodec vcr1_decoder = { | AVCodec vcr1_decoder = { | ||||
| "vcr1", | "vcr1", | ||||
| @@ -101,6 +101,7 @@ static int wmv2_encode_init(AVCodecContext *avctx){ | |||||
| return 0; | return 0; | ||||
| } | } | ||||
| #if 0 /* unused, remove? */ | |||||
| static int wmv2_encode_end(AVCodecContext *avctx){ | static int wmv2_encode_end(AVCodecContext *avctx){ | ||||
| if(MPV_encode_end(avctx) < 0) | if(MPV_encode_end(avctx) < 0) | ||||
| @@ -111,6 +112,7 @@ static int wmv2_encode_end(AVCodecContext *avctx){ | |||||
| return 0; | return 0; | ||||
| } | } | ||||
| #endif | |||||
| int ff_wmv2_encode_picture_header(MpegEncContext * s, int picture_number) | int ff_wmv2_encode_picture_header(MpegEncContext * s, int picture_number) | ||||
| { | { | ||||
| @@ -261,7 +261,6 @@ static int ffm_write_trailer(AVFormatContext *s) | |||||
| { | { | ||||
| ByteIOContext *pb = &s->pb; | ByteIOContext *pb = &s->pb; | ||||
| FFMContext *ffm = s->priv_data; | FFMContext *ffm = s->priv_data; | ||||
| int i; | |||||
| /* flush packets */ | /* flush packets */ | ||||
| if (ffm->packet_ptr > ffm->packet) | if (ffm->packet_ptr > ffm->packet) | ||||
| @@ -44,7 +44,6 @@ static int flv_read_header(AVFormatContext *s, | |||||
| AVFormatParameters *ap) | AVFormatParameters *ap) | ||||
| { | { | ||||
| int offset, flags; | int offset, flags; | ||||
| AVStream *st; | |||||
| s->ctx_flags |= AVFMTCTX_NOHEADER; //ok we have a header but theres no fps, codec type, sample_rate, ... | s->ctx_flags |= AVFMTCTX_NOHEADER; //ok we have a header but theres no fps, codec type, sample_rate, ... | ||||
| @@ -49,7 +49,7 @@ typedef struct { | |||||
| static int http_connect(URLContext *h, const char *path, const char *hoststr, | static int http_connect(URLContext *h, const char *path, const char *hoststr, | ||||
| const char *auth); | const char *auth); | ||||
| static int http_write(URLContext *h, uint8_t *buf, int size); | static int http_write(URLContext *h, uint8_t *buf, int size); | ||||
| static char *b64_encode( unsigned char *src ); | |||||
| static char *b64_encode(const unsigned char *src ); | |||||
| /* return non zero if error */ | /* return non zero if error */ | ||||
| @@ -287,7 +287,7 @@ URLProtocol http_protocol = { | |||||
| * b64_encode: stolen from VLC's http.c | * b64_encode: stolen from VLC's http.c | ||||
| *****************************************************************************/ | *****************************************************************************/ | ||||
| static char *b64_encode( unsigned char *src ) | |||||
| static char *b64_encode( const unsigned char *src ) | |||||
| { | { | ||||
| static const char b64[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; | static const char b64[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; | ||||
| unsigned int len= strlen(src); | unsigned int len= strlen(src); | ||||
| @@ -97,16 +97,6 @@ static enum CodecID av_str2id(const IdStrMap *tags, const char *str) | |||||
| return CODEC_ID_NONE; | return CODEC_ID_NONE; | ||||
| } | } | ||||
| static const char *av_id2str(const IdStrMap *tags, enum CodecID id) | |||||
| { | |||||
| while (tags->id) { | |||||
| if(tags->id == id) | |||||
| return tags->str; | |||||
| tags++; | |||||
| } | |||||
| return NULL; | |||||
| } | |||||
| /* return -1 if no image found */ | /* return -1 if no image found */ | ||||
| static int find_image_range(int *pfirst_index, int *plast_index, | static int find_image_range(int *pfirst_index, int *plast_index, | ||||
| const char *path) | const char *path) | ||||
| @@ -415,12 +415,12 @@ static int mov_read_default(MOVContext *c, ByteIOContext *pb, MOV_atom_t atom) | |||||
| static int mov_read_ctab(MOVContext *c, ByteIOContext *pb, MOV_atom_t atom) | static int mov_read_ctab(MOVContext *c, ByteIOContext *pb, MOV_atom_t atom) | ||||
| { | { | ||||
| unsigned int len; | |||||
| MOV_ctab_t *t; | |||||
| #if 1 | #if 1 | ||||
| url_fskip(pb, atom.size); // for now | url_fskip(pb, atom.size); // for now | ||||
| #else | #else | ||||
| VERY VERY BROKEN, NEVER execute this, needs rewrite | VERY VERY BROKEN, NEVER execute this, needs rewrite | ||||
| unsigned int len; | |||||
| MOV_ctab_t *t; | |||||
| c->ctab = av_realloc(c->ctab, ++c->ctab_size); | c->ctab = av_realloc(c->ctab, ++c->ctab_size); | ||||
| t = c->ctab[c->ctab_size]; | t = c->ctab[c->ctab_size]; | ||||
| t->seed = get_be32(pb); | t->seed = get_be32(pb); | ||||
| @@ -793,6 +793,7 @@ static int mov_write_trak_tag(ByteIOContext *pb, MOVTrack* track) | |||||
| return updateSize(pb, pos); | return updateSize(pb, pos); | ||||
| } | } | ||||
| #if 0 | |||||
| /* TODO: Not sorted out, but not necessary either */ | /* TODO: Not sorted out, but not necessary either */ | ||||
| static int mov_write_iods_tag(ByteIOContext *pb, MOVContext *mov) | static int mov_write_iods_tag(ByteIOContext *pb, MOVContext *mov) | ||||
| { | { | ||||
| @@ -806,6 +807,7 @@ static int mov_write_iods_tag(ByteIOContext *pb, MOVContext *mov) | |||||
| put_be16(pb, 0x01ff); | put_be16(pb, 0x01ff); | ||||
| return 0x15; | return 0x15; | ||||
| } | } | ||||
| #endif | |||||
| static int mov_write_mvhd_tag(ByteIOContext *pb, MOVContext *mov) | static int mov_write_mvhd_tag(ByteIOContext *pb, MOVContext *mov) | ||||
| { | { | ||||
| @@ -530,6 +530,7 @@ static int get_vcd_padding_size(AVFormatContext *ctx, int64_t pts) | |||||
| } | } | ||||
| #if 0 /* unused, remove? */ | |||||
| /* return the exact available payload size for the next packet for | /* return the exact available payload size for the next packet for | ||||
| stream 'stream_index'. 'pts' and 'dts' are only used to know if | stream 'stream_index'. 'pts' and 'dts' are only used to know if | ||||
| timestamps are needed in the packet header. */ | timestamps are needed in the packet header. */ | ||||
| @@ -613,6 +614,7 @@ static int get_packet_payload_size(AVFormatContext *ctx, int stream_index, | |||||
| } | } | ||||
| return s->packet_size - buf_index; | return s->packet_size - buf_index; | ||||
| } | } | ||||
| #endif | |||||
| /* Write an MPEG padding packet header. */ | /* Write an MPEG padding packet header. */ | ||||
| static void put_padding_packet(AVFormatContext *ctx, ByteIOContext *pb,int packet_bytes) | static void put_padding_packet(AVFormatContext *ctx, ByteIOContext *pb,int packet_bytes) | ||||
| @@ -979,6 +981,7 @@ static void put_vcd_padding_sector(AVFormatContext *ctx) | |||||
| s->packet_number++; | s->packet_number++; | ||||
| } | } | ||||
| #if 0 /* unused, remove? */ | |||||
| static int64_t get_vcd_scr(AVFormatContext *ctx,int stream_index,int64_t pts) | static int64_t get_vcd_scr(AVFormatContext *ctx,int stream_index,int64_t pts) | ||||
| { | { | ||||
| MpegMuxContext *s = ctx->priv_data; | MpegMuxContext *s = ctx->priv_data; | ||||
| @@ -998,6 +1001,7 @@ static int64_t get_vcd_scr(AVFormatContext *ctx,int stream_index,int64_t pts) | |||||
| return scr; | return scr; | ||||
| } | } | ||||
| #endif | |||||
| static int remove_decoded_packets(AVFormatContext *ctx, int64_t scr){ | static int remove_decoded_packets(AVFormatContext *ctx, int64_t scr){ | ||||
| // MpegMuxContext *s = ctx->priv_data; | // MpegMuxContext *s = ctx->priv_data; | ||||
| @@ -1319,6 +1323,7 @@ static int find_next_start_code(ByteIOContext *pb, int *size_ptr, | |||||
| return val; | return val; | ||||
| } | } | ||||
| #if 0 /* unused, remove? */ | |||||
| /* XXX: optimize */ | /* XXX: optimize */ | ||||
| static int find_prev_start_code(ByteIOContext *pb, int *size_ptr) | static int find_prev_start_code(ByteIOContext *pb, int *size_ptr) | ||||
| { | { | ||||
| @@ -1351,6 +1356,7 @@ static int find_prev_start_code(ByteIOContext *pb, int *size_ptr) | |||||
| *size_ptr = pos_start - pos; | *size_ptr = pos_start - pos; | ||||
| return start_code; | return start_code; | ||||
| } | } | ||||
| #endif | |||||
| /* read the next PES header. Return its position in ppos | /* read the next PES header. Return its position in ppos | ||||
| (if not NULL), and its start code, pts and dts. | (if not NULL), and its start code, pts and dts. | ||||
| @@ -280,16 +280,11 @@ static int nsv_parse_NSVf_header(AVFormatContext *s, AVFormatParameters *ap) | |||||
| { | { | ||||
| NSVContext *nsv = s->priv_data; | NSVContext *nsv = s->priv_data; | ||||
| ByteIOContext *pb = &s->pb; | ByteIOContext *pb = &s->pb; | ||||
| uint32_t tag, tag1, handler; | |||||
| int codec_type, stream_index, frame_period, bit_rate, scale, rate; | |||||
| unsigned int file_size, size, nb_frames; | |||||
| unsigned int file_size, size; | |||||
| int64_t duration; | int64_t duration; | ||||
| int strings_size; | int strings_size; | ||||
| int table_entries; | int table_entries; | ||||
| int table_entries_used; | int table_entries_used; | ||||
| int i, n; | |||||
| AVStream *st; | |||||
| NSVStream *ast; | |||||
| PRINT(("%s()\n", __FUNCTION__)); | PRINT(("%s()\n", __FUNCTION__)); | ||||
| @@ -501,14 +496,7 @@ fail: | |||||
| static int nsv_read_header(AVFormatContext *s, AVFormatParameters *ap) | static int nsv_read_header(AVFormatContext *s, AVFormatParameters *ap) | ||||
| { | { | ||||
| NSVContext *nsv = s->priv_data; | NSVContext *nsv = s->priv_data; | ||||
| ByteIOContext *pb = &s->pb; | |||||
| uint32_t tag, tag1, handler; | |||||
| int codec_type, stream_index, frame_period, bit_rate, scale, rate; | |||||
| unsigned int size, nb_frames; | |||||
| int table_entries; | |||||
| int i, n, err; | |||||
| AVStream *st; | |||||
| NSVStream *ast; | |||||
| int i, err; | |||||
| PRINT(("%s()\n", __FUNCTION__)); | PRINT(("%s()\n", __FUNCTION__)); | ||||
| PRINT(("filename '%s'\n", s->filename)); | PRINT(("filename '%s'\n", s->filename)); | ||||
| @@ -543,7 +531,6 @@ static int nsv_read_chunk(AVFormatContext *s, int fill_header) | |||||
| AVStream *st[2] = {NULL, NULL}; | AVStream *st[2] = {NULL, NULL}; | ||||
| NSVStream *nst; | NSVStream *nst; | ||||
| AVPacket *pkt; | AVPacket *pkt; | ||||
| uint32_t v = 0; | |||||
| int i, err = 0; | int i, err = 0; | ||||
| uint8_t auxcount; /* number of aux metadata, also 4 bits of vsize */ | uint8_t auxcount; /* number of aux metadata, also 4 bits of vsize */ | ||||
| uint32_t vsize; | uint32_t vsize; | ||||
| @@ -667,7 +654,6 @@ null_chunk_retry: | |||||
| static int nsv_read_packet(AVFormatContext *s, AVPacket *pkt) | static int nsv_read_packet(AVFormatContext *s, AVPacket *pkt) | ||||
| { | { | ||||
| NSVContext *nsv = s->priv_data; | NSVContext *nsv = s->priv_data; | ||||
| ByteIOContext *pb = &s->pb; | |||||
| int i, err = 0; | int i, err = 0; | ||||
| PRINT(("%s()\n", __FUNCTION__)); | PRINT(("%s()\n", __FUNCTION__)); | ||||
| @@ -695,18 +681,20 @@ static int nsv_read_packet(AVFormatContext *s, AVPacket *pkt) | |||||
| static int nsv_read_seek(AVFormatContext *s, int stream_index, int64_t timestamp, int flags) | static int nsv_read_seek(AVFormatContext *s, int stream_index, int64_t timestamp, int flags) | ||||
| { | { | ||||
| #if 0 | |||||
| NSVContext *avi = s->priv_data; | NSVContext *avi = s->priv_data; | ||||
| AVStream *st; | AVStream *st; | ||||
| NSVStream *ast; | NSVStream *ast; | ||||
| int frame_number, i; | int frame_number, i; | ||||
| int64_t pos; | int64_t pos; | ||||
| #endif | |||||
| return -1; | return -1; | ||||
| } | } | ||||
| static int nsv_read_close(AVFormatContext *s) | static int nsv_read_close(AVFormatContext *s) | ||||
| { | { | ||||
| int i; | |||||
| /* int i; */ | |||||
| NSVContext *nsv = s->priv_data; | NSVContext *nsv = s->priv_data; | ||||
| if (nsv->index_entries) | if (nsv->index_entries) | ||||
| @@ -1051,7 +1051,7 @@ static int decode_info_header(NUTContext *nut){ | |||||
| } | } | ||||
| if(!strcmp(type, "v")){ | if(!strcmp(type, "v")){ | ||||
| int value= get_v(bc); | |||||
| get_v(bc); | |||||
| }else{ | }else{ | ||||
| if(!strcmp(name, "Author")) | if(!strcmp(name, "Author")) | ||||
| get_str(bc, s->author, sizeof(s->author)); | get_str(bc, s->author, sizeof(s->author)); | ||||
| @@ -107,6 +107,7 @@ static int str_probe(AVProbeData *p) | |||||
| return 50; | return 50; | ||||
| } | } | ||||
| #if 0 | |||||
| static void dump(unsigned char *buf,size_t len) | static void dump(unsigned char *buf,size_t len) | ||||
| { | { | ||||
| int i; | int i; | ||||
| @@ -117,6 +118,7 @@ static void dump(unsigned char *buf,size_t len) | |||||
| } | } | ||||
| av_log(NULL, AV_LOG_DEBUG, "\n"); | av_log(NULL, AV_LOG_DEBUG, "\n"); | ||||
| } | } | ||||
| #endif | |||||
| static int str_read_header(AVFormatContext *s, | static int str_read_header(AVFormatContext *s, | ||||
| AVFormatParameters *ap) | AVFormatParameters *ap) | ||||
| @@ -57,8 +57,7 @@ static int tcp_open(URLContext *h, const char *uri, int flags) | |||||
| struct sockaddr_in dest_addr; | struct sockaddr_in dest_addr; | ||||
| char hostname[1024], *q; | char hostname[1024], *q; | ||||
| int port, fd = -1; | int port, fd = -1; | ||||
| TCPContext *s; | |||||
| const char *p; | |||||
| TCPContext *s = NULL; | |||||
| fd_set wfds; | fd_set wfds; | ||||
| int fd_max, ret; | int fd_max, ret; | ||||
| struct timeval tv; | struct timeval tv; | ||||
| @@ -160,14 +160,14 @@ int udp_ipv6_set_local(URLContext *h) { | |||||
| socklen_t addrlen; | socklen_t addrlen; | ||||
| char sbuf[NI_MAXSERV]; | char sbuf[NI_MAXSERV]; | ||||
| char hbuf[NI_MAXHOST]; | char hbuf[NI_MAXHOST]; | ||||
| struct addrinfo *res0; | |||||
| struct addrinfo *res0 = NULL; | |||||
| int family; | int family; | ||||
| if (s->local_port != 0) { | if (s->local_port != 0) { | ||||
| res0 = udp_ipv6_resolve_host(0, s->local_port, SOCK_DGRAM, AF_UNSPEC, AI_PASSIVE); | res0 = udp_ipv6_resolve_host(0, s->local_port, SOCK_DGRAM, AF_UNSPEC, AI_PASSIVE); | ||||
| if (res0 == 0) return -1; | |||||
| if (res0 == 0) | |||||
| goto fail; | |||||
| family = res0->ai_family; | family = res0->ai_family; | ||||
| freeaddrinfo(res0); | |||||
| } else { | } else { | ||||
| family = s->dest_addr.ss_family; | family = s->dest_addr.ss_family; | ||||
| } | } | ||||
| @@ -183,6 +183,8 @@ int udp_ipv6_set_local(URLContext *h) { | |||||
| perror("bind"); | perror("bind"); | ||||
| goto fail; | goto fail; | ||||
| } | } | ||||
| freeaddrinfo(res0); | |||||
| res0 = NULL; | |||||
| } | } | ||||
| addrlen = sizeof(clientaddr); | addrlen = sizeof(clientaddr); | ||||
| @@ -207,6 +209,8 @@ int udp_ipv6_set_local(URLContext *h) { | |||||
| #else | #else | ||||
| close(udp_fd); | close(udp_fd); | ||||
| #endif | #endif | ||||
| if(res0) | |||||
| freeaddrinfo(res0); | |||||
| return -1; | return -1; | ||||
| } | } | ||||
| @@ -274,13 +278,16 @@ int udp_get_file_handle(URLContext *h) | |||||
| /* return non zero if error */ | /* return non zero if error */ | ||||
| static int udp_open(URLContext *h, const char *uri, int flags) | static int udp_open(URLContext *h, const char *uri, int flags) | ||||
| { | { | ||||
| struct sockaddr_in my_addr, my_addr1; | |||||
| char hostname[1024]; | char hostname[1024]; | ||||
| int port, udp_fd = -1, tmp; | int port, udp_fd = -1, tmp; | ||||
| UDPContext *s = NULL; | UDPContext *s = NULL; | ||||
| int is_output, len; | |||||
| int is_output; | |||||
| const char *p; | const char *p; | ||||
| char buf[256]; | char buf[256]; | ||||
| #ifndef CONFIG_IPV6 | |||||
| struct sockaddr_in my_addr, my_addr1; | |||||
| int len; | |||||
| #endif | |||||
| h->is_streamed = 1; | h->is_streamed = 1; | ||||
| h->max_packet_size = 1472; | h->max_packet_size = 1472; | ||||
| @@ -1275,7 +1275,6 @@ av_log(s, AV_LOG_DEBUG, "%Ld %Ld %Ld / %Ld %Ld %Ld target:%Ld limit:%Ld start:%L | |||||
| } | } | ||||
| static int av_seek_frame_byte(AVFormatContext *s, int stream_index, int64_t pos, int flags){ | static int av_seek_frame_byte(AVFormatContext *s, int stream_index, int64_t pos, int flags){ | ||||
| AVInputFormat *avif= s->iformat; | |||||
| int64_t pos_min, pos_max; | int64_t pos_min, pos_max; | ||||
| #if 0 | #if 0 | ||||
| AVStream *st; | AVStream *st; | ||||
| @@ -140,7 +140,6 @@ void get_audio_frame(int16_t *samples, int frame_size, int nb_channels) | |||||
| void write_audio_frame(AVFormatContext *oc, AVStream *st) | void write_audio_frame(AVFormatContext *oc, AVStream *st) | ||||
| { | { | ||||
| int out_size; | |||||
| AVCodecContext *c; | AVCodecContext *c; | ||||
| AVPacket pkt; | AVPacket pkt; | ||||
| av_init_packet(&pkt); | av_init_packet(&pkt); | ||||