diff options
Diffstat (limited to 'src/libffmpeg/diff_to_ffmpeg_cvs.txt')
-rw-r--r-- | src/libffmpeg/diff_to_ffmpeg_cvs.txt | 322 |
1 files changed, 134 insertions, 188 deletions
diff --git a/src/libffmpeg/diff_to_ffmpeg_cvs.txt b/src/libffmpeg/diff_to_ffmpeg_cvs.txt index 7a97c12a2..329714dda 100644 --- a/src/libffmpeg/diff_to_ffmpeg_cvs.txt +++ b/src/libffmpeg/diff_to_ffmpeg_cvs.txt @@ -1,13 +1,14 @@ +? diff_to_ffmpeg_cvs.txt Index: libavcodec/avcodec.h =================================================================== RCS file: /cvsroot/ffmpeg/ffmpeg/libavcodec/avcodec.h,v -retrieving revision 1.426 -diff -u -r1.426 avcodec.h ---- libavcodec/avcodec.h 20 Oct 2005 20:04:45 -0000 1.426 -+++ libavcodec/avcodec.h 23 Oct 2005 12:33:01 -0000 +retrieving revision 1.446 +diff -u -r1.446 avcodec.h +--- libavcodec/avcodec.h 24 Jan 2006 21:57:26 -0000 1.446 ++++ libavcodec/avcodec.h 5 Feb 2006 13:43:22 -0000 @@ -31,6 +31,13 @@ - #define AV_TIME_BASE 1000000 - #define AV_TIME_BASE_Q (AVRational){1, AV_TIME_BASE} + #define AV_TIME_BASE 1000000 + #define AV_TIME_BASE_Q (AVRational){1, AV_TIME_BASE} +/* FIXME: We cannot use ffmpeg's XvMC capabilities, since that would require + * linking the ffmpeg plugin against XvMC libraries, which is a bad thing, @@ -17,9 +18,9 @@ diff -u -r1.426 avcodec.h +#undef HAVE_XVMC + enum CodecID { - CODEC_ID_NONE, + CODEC_ID_NONE, CODEC_ID_MPEG1VIDEO, -@@ -2418,6 +2425,13 @@ +@@ -2573,6 +2580,13 @@ extern unsigned int av_xiphlacing(unsigned char *s, unsigned int v); @@ -36,13 +37,13 @@ diff -u -r1.426 avcodec.h Index: libavcodec/dsputil.c =================================================================== RCS file: /cvsroot/ffmpeg/ffmpeg/libavcodec/dsputil.c,v -retrieving revision 1.125 -diff -u -r1.125 dsputil.c ---- libavcodec/dsputil.c 14 Aug 2005 15:42:39 -0000 1.125 -+++ libavcodec/dsputil.c 23 Oct 2005 12:33:20 -0000 +retrieving revision 1.133 +diff -u -r1.133 dsputil.c +--- libavcodec/dsputil.c 5 Feb 2006 13:35:16 -0000 1.133 ++++ libavcodec/dsputil.c 5 Feb 2006 13:43:47 -0000 @@ -371,6 +371,8 @@ - assert(s>=0); - + assert(s>=0); + return s>>2; +#else + return 0; @@ -52,15 +53,15 @@ diff -u -r1.125 dsputil.c Index: libavcodec/dsputil.h =================================================================== RCS file: /cvsroot/ffmpeg/ffmpeg/libavcodec/dsputil.h,v -retrieving revision 1.120 -diff -u -r1.120 dsputil.h ---- libavcodec/dsputil.h 19 Sep 2005 23:26:47 -0000 1.120 -+++ libavcodec/dsputil.h 23 Oct 2005 12:33:24 -0000 +retrieving revision 1.127 +diff -u -r1.127 dsputil.h +--- libavcodec/dsputil.h 5 Feb 2006 13:35:16 -0000 1.127 ++++ libavcodec/dsputil.h 5 Feb 2006 13:43:50 -0000 @@ -31,6 +31,9 @@ #include "common.h" #include "avcodec.h" -+#if defined(ARCH_X86) ++#if defined(ARCH_X86) || defined(ARCH_X86_64) +#define HAVE_MMX 1 +#endif @@ -69,21 +70,21 @@ diff -u -r1.120 dsputil.h Index: libavcodec/motion_est.c =================================================================== RCS file: /cvsroot/ffmpeg/ffmpeg/libavcodec/motion_est.c,v -retrieving revision 1.110 -diff -u -r1.110 motion_est.c ---- libavcodec/motion_est.c 26 Aug 2005 19:05:44 -0000 1.110 -+++ libavcodec/motion_est.c 23 Oct 2005 12:33:36 -0000 -@@ -20,6 +20,9 @@ - * +retrieving revision 1.120 +diff -u -r1.120 motion_est.c +--- libavcodec/motion_est.c 22 Jan 2006 20:54:52 -0000 1.120 ++++ libavcodec/motion_est.c 5 Feb 2006 13:44:03 -0000 +@@ -21,6 +21,9 @@ * new Motion Estimation (X1/EPZS) by Michael Niedermayer <michaelni@gmx.at> */ -+ + +/* motion estimation only needed for encoders */ +#ifdef CONFIG_ENCODERS - ++ /** * @file motion_est.c -@@ -2038,3 +2041,5 @@ + * Motion estimation. +@@ -2111,3 +2114,5 @@ } } } @@ -92,10 +93,10 @@ diff -u -r1.110 motion_est.c Index: libavcodec/mpeg12.c =================================================================== RCS file: /cvsroot/ffmpeg/ffmpeg/libavcodec/mpeg12.c,v -retrieving revision 1.242 -diff -u -r1.242 mpeg12.c ---- libavcodec/mpeg12.c 14 Aug 2005 15:42:39 -0000 1.242 -+++ libavcodec/mpeg12.c 23 Oct 2005 12:34:08 -0000 +retrieving revision 1.248 +diff -u -r1.248 mpeg12.c +--- libavcodec/mpeg12.c 4 Feb 2006 20:32:02 -0000 1.248 ++++ libavcodec/mpeg12.c 5 Feb 2006 13:44:22 -0000 @@ -34,6 +34,13 @@ //#include <assert.h> @@ -108,9 +109,9 @@ diff -u -r1.242 mpeg12.c + + /* Start codes. */ - #define SEQ_END_CODE 0x000001b7 - #define SEQ_START_CODE 0x000001b3 -@@ -2812,10 +2819,12 @@ + #define SEQ_END_CODE 0x000001b7 + #define SEQ_START_CODE 0x000001b3 +@@ -2786,10 +2793,12 @@ s->chroma_intra_matrix[j] = v; } #ifdef DEBUG @@ -123,7 +124,7 @@ diff -u -r1.242 mpeg12.c #endif } else { for(i=0;i<64;i++) { -@@ -2837,10 +2846,12 @@ +@@ -2811,10 +2820,12 @@ s->chroma_inter_matrix[j] = v; } #ifdef DEBUG @@ -139,10 +140,10 @@ diff -u -r1.242 mpeg12.c Index: libavcodec/mpegvideo.c =================================================================== RCS file: /cvsroot/ffmpeg/ffmpeg/libavcodec/mpegvideo.c,v -retrieving revision 1.488 -diff -u -r1.488 mpegvideo.c ---- libavcodec/mpegvideo.c 14 Aug 2005 15:42:40 -0000 1.488 -+++ libavcodec/mpegvideo.c 23 Oct 2005 12:35:02 -0000 +retrieving revision 1.509 +diff -u -r1.509 mpegvideo.c +--- libavcodec/mpegvideo.c 5 Feb 2006 13:35:16 -0000 1.509 ++++ libavcodec/mpegvideo.c 5 Feb 2006 13:45:03 -0000 @@ -38,6 +38,14 @@ //#undef NDEBUG //#include <assert.h> @@ -158,7 +159,7 @@ diff -u -r1.488 mpegvideo.c #ifdef CONFIG_ENCODERS static void encode_picture(MpegEncContext *s, int picture_number); #endif //CONFIG_ENCODERS -@@ -1108,6 +1116,8 @@ +@@ -1135,6 +1143,8 @@ s->low_delay= 0; //s->max_b_frames ? 0 : 1; avctx->delay= s->low_delay ? 0 : (s->max_b_frames + 1); break; @@ -167,7 +168,7 @@ diff -u -r1.488 mpegvideo.c case CODEC_ID_MPEG2VIDEO: s->out_format = FMT_MPEG1; s->low_delay= 0; //s->max_b_frames ? 0 : 1; -@@ -1242,6 +1252,7 @@ +@@ -1270,6 +1280,7 @@ avctx->delay=0; s->low_delay=1; break; @@ -175,16 +176,16 @@ diff -u -r1.488 mpegvideo.c default: return -1; } -@@ -1263,6 +1274,8 @@ +@@ -1291,6 +1302,8 @@ ff_set_cmp(&s->dsp, s->dsp.ildct_cmp, s->avctx->ildct_cmp); ff_set_cmp(&s->dsp, s->dsp.frame_skip_cmp, s->avctx->frame_skip_cmp); - + +/* xine: do not need this for decode or MPEG-1 encoding modes */ +#if 0 #ifdef CONFIG_H261_ENCODER if (s->out_format == FMT_H261) ff_h261_encode_init(s); -@@ -1271,6 +1284,8 @@ +@@ -1299,6 +1312,8 @@ h263_encode_init(s); if(s->msmpeg4_version) ff_msmpeg4_encode_init(s); @@ -193,7 +194,7 @@ diff -u -r1.488 mpegvideo.c if (s->out_format == FMT_MPEG1) ff_mpeg1_encode_init(s); -@@ -1319,9 +1334,12 @@ +@@ -1347,9 +1362,12 @@ ff_rate_control_uninit(s); @@ -205,8 +206,8 @@ diff -u -r1.488 mpegvideo.c +#endif /* #if 0 */ av_freep(&avctx->extradata); - -@@ -2350,8 +2368,11 @@ + +@@ -2494,8 +2512,11 @@ MPV_frame_end(s); @@ -215,10 +216,10 @@ diff -u -r1.488 mpegvideo.c if (s->out_format == FMT_MJPEG) mjpeg_picture_trailer(s); +#endif /* #if 0 */ - + if(s->flags&CODEC_FLAG_PASS1) ff_write_pass1_stats(s); -@@ -4297,6 +4318,8 @@ +@@ -4442,6 +4463,8 @@ case CODEC_ID_MPEG1VIDEO: case CODEC_ID_MPEG2VIDEO: mpeg1_encode_mb(s, s->block, motion_x, motion_y); break; @@ -227,7 +228,7 @@ diff -u -r1.488 mpegvideo.c case CODEC_ID_MPEG4: mpeg4_encode_mb(s, s->block, motion_x, motion_y); break; case CODEC_ID_MSMPEG4V2: -@@ -4317,6 +4340,7 @@ +@@ -4462,6 +4485,7 @@ h263_encode_mb(s, s->block, motion_x, motion_y); break; case CODEC_ID_MJPEG: mjpeg_encode_mb(s, s->block); break; @@ -235,7 +236,7 @@ diff -u -r1.488 mpegvideo.c default: assert(0); } -@@ -4532,6 +4556,8 @@ +@@ -4677,6 +4701,8 @@ +sse(s, s->new_picture.data[2] + s->mb_x*8 + s->mb_y*s->uvlinesize*8,s->dest[2], w>>1, h>>1, s->uvlinesize); } @@ -244,7 +245,7 @@ diff -u -r1.488 mpegvideo.c static int pre_estimate_motion_thread(AVCodecContext *c, void *arg){ MpegEncContext *s= arg; -@@ -4575,6 +4601,7 @@ +@@ -4720,6 +4746,7 @@ } return 0; } @@ -252,7 +253,7 @@ diff -u -r1.488 mpegvideo.c static int mb_var_thread(AVCodecContext *c, void *arg){ MpegEncContext *s= arg; -@@ -4599,6 +4626,8 @@ +@@ -4744,6 +4771,8 @@ } static void write_slice_end(MpegEncContext *s){ @@ -261,7 +262,7 @@ diff -u -r1.488 mpegvideo.c if(s->codec_id==CODEC_ID_MPEG4){ if(s->partitioned_frame){ ff_mpeg4_merge_partitions(s); -@@ -4608,6 +4637,7 @@ +@@ -4753,6 +4782,7 @@ }else if(s->out_format == FMT_MJPEG){ ff_mjpeg_stuffing(&s->pb); } @@ -269,7 +270,7 @@ diff -u -r1.488 mpegvideo.c align_put_bits(&s->pb); flush_put_bits(&s->pb); -@@ -4661,10 +4691,13 @@ +@@ -4806,10 +4836,13 @@ case CODEC_ID_FLV1: s->gob_index = ff_h263_get_gob_height(s); break; @@ -283,7 +284,7 @@ diff -u -r1.488 mpegvideo.c } s->resync_mb_x=0; -@@ -4737,9 +4770,12 @@ +@@ -4882,9 +4915,12 @@ if(s->start_mb_y != mb_y || mb_x!=0){ write_slice_end(s); @@ -294,11 +295,11 @@ diff -u -r1.488 mpegvideo.c } +#endif /* #if 0 */ } - + assert((put_bits_count(&s->pb)&7) == 0); -@@ -4763,19 +4799,25 @@ +@@ -4908,19 +4944,25 @@ } - + switch(s->codec_id){ +/* xine: do not need this for decode or MPEG-1 encoding modes */ +#if 0 @@ -316,24 +317,24 @@ diff -u -r1.488 mpegvideo.c +#if 0 case CODEC_ID_H263: case CODEC_ID_H263P: - h263_encode_gob_header(s, mb_y); + h263_encode_gob_header(s, mb_y); break; +#endif /* #if 0 */ } if(s->flags&CODEC_FLAG_PASS1){ -@@ -4888,7 +4930,10 @@ - +@@ -5033,7 +5075,10 @@ + s->mv_dir = MV_DIR_FORWARD | MV_DIR_BACKWARD | MV_DIRECT; s->mb_intra= 0; +/* xine: do not need this for decode or MPEG-1 encoding modes */ +#if 0 ff_mpeg4_set_direct_mv(s, mx, my); +#endif /* #if 0 */ - encode_mb_hq(s, &backup_s, &best_s, CANDIDATE_MB_TYPE_DIRECT, pb, pb2, tex_pb, + encode_mb_hq(s, &backup_s, &best_s, CANDIDATE_MB_TYPE_DIRECT, pb, pb2, tex_pb, &dmin, &next_block, mx, my); } -@@ -5074,7 +5119,10 @@ +@@ -5219,7 +5264,10 @@ s->mb_intra= 0; motion_x=s->b_direct_mv_table[xy][0]; motion_y=s->b_direct_mv_table[xy][1]; @@ -344,7 +345,7 @@ diff -u -r1.488 mpegvideo.c break; case CANDIDATE_MB_TYPE_BIDIR: s->mv_dir = MV_DIR_FORWARD | MV_DIR_BACKWARD; -@@ -5182,8 +5230,11 @@ +@@ -5327,8 +5375,11 @@ } //not beautiful here but we must write it before flushing so it has to be here @@ -356,7 +357,24 @@ diff -u -r1.488 mpegvideo.c write_slice_end(s); -@@ -5246,10 +5297,13 @@ +@@ -5389,6 +5440,8 @@ + s->current_picture.quality = ff_rate_estimate_qscale(s, dry_run); + + if(s->adaptive_quant){ ++/* xine: do not need this for decode or MPEG-1 encoding modes */ ++#if 0 + switch(s->codec_id){ + case CODEC_ID_MPEG4: + ff_clean_mpeg4_qscales(s); +@@ -5399,6 +5452,7 @@ + ff_clean_h263_qscales(s); + break; + } ++#endif /* #if 0 */ + + s->lambda= s->lambda_table[0]; + //FIXME broken +@@ -5419,10 +5473,13 @@ s->me.mb_var_sum_temp = s->me.mc_mb_var_sum_temp = 0; @@ -367,10 +385,10 @@ diff -u -r1.488 mpegvideo.c if (s->codec_id == CODEC_ID_MPEG1VIDEO || s->codec_id == CODEC_ID_MPEG2VIDEO || (s->h263_pred && !s->h263_msmpeg4)) ff_set_mpeg4_time(s, s->picture_number); //FIXME rename and use has_b_frames or similar +#endif /* #if 0 */ - + s->me.scene_change_score=0; - -@@ -5268,6 +5322,8 @@ + +@@ -5452,6 +5509,8 @@ ff_update_duplicate_context(s->thread_context[i], s); } @@ -379,7 +397,7 @@ diff -u -r1.488 mpegvideo.c ff_init_me(s); /* Estimate motion for every MB */ -@@ -5282,6 +5338,8 @@ +@@ -5466,6 +5525,8 @@ s->avctx->execute(s->avctx, estimate_motion_thread, (void**)&(s->thread_context[0]), NULL, s->avctx->thread_count); }else /* if(s->pict_type == I_TYPE) */{ @@ -388,7 +406,7 @@ diff -u -r1.488 mpegvideo.c /* I-Frame */ for(i=0; i<s->mb_stride*s->mb_height; i++) s->mb_type[i]= CANDIDATE_MB_TYPE_INTRA; -@@ -5305,6 +5363,8 @@ +@@ -5489,6 +5550,8 @@ //printf("Scene change detected, encoding as I Frame %d %d\n", s->current_picture.mb_var_sum, s->current_picture.mc_mb_var_sum); } @@ -397,30 +415,15 @@ diff -u -r1.488 mpegvideo.c if(!s->umvplus){ if(s->pict_type==P_TYPE || s->pict_type==S_TYPE) { s->f_code= ff_get_best_fcode(s, s->p_mv_table, CANDIDATE_MB_TYPE_INTER); -@@ -5358,11 +5418,14 @@ +@@ -5542,6 +5605,7 @@ } } } +#endif /* #if 0 */ - if (!s->fixed_qscale) - s->current_picture.quality = ff_rate_estimate_qscale(s); //FIXME pic_ptr - - if(s->adaptive_quant){ -+/* xine: do not need this for decode or MPEG-1 encoding modes */ -+#if 0 - switch(s->codec_id){ - case CODEC_ID_MPEG4: - ff_clean_mpeg4_qscales(s); -@@ -5373,6 +5436,7 @@ - ff_clean_h263_qscales(s); - break; - } -+#endif /* #if 0 */ + estimate_qp(s, 0); - s->lambda= s->lambda_table[0]; - //FIXME broken -@@ -5408,6 +5472,8 @@ +@@ -5572,6 +5636,8 @@ s->last_bits= put_bits_count(&s->pb); switch(s->out_format) { @@ -429,7 +432,7 @@ diff -u -r1.488 mpegvideo.c case FMT_MJPEG: mjpeg_picture_header(s); break; -@@ -5436,11 +5502,15 @@ +@@ -5600,11 +5666,15 @@ else h263_encode_picture_header(s, picture_number); break; @@ -448,11 +451,11 @@ diff -u -r1.488 mpegvideo.c Index: libavcodec/snow.c =================================================================== RCS file: /cvsroot/ffmpeg/ffmpeg/libavcodec/snow.c,v -retrieving revision 1.63 -diff -u -r1.63 snow.c ---- libavcodec/snow.c 21 Sep 2005 23:09:16 -0000 1.63 -+++ libavcodec/snow.c 23 Oct 2005 12:35:34 -0000 -@@ -2037,6 +2037,7 @@ +retrieving revision 1.87 +diff -u -r1.87 snow.c +--- libavcodec/snow.c 30 Jan 2006 23:33:18 -0000 1.87 ++++ libavcodec/snow.c 5 Feb 2006 13:45:30 -0000 +@@ -2036,6 +2036,7 @@ #define P_MV1 P[9] #define FLAG_QPEL 1 //must be 1 @@ -460,15 +463,15 @@ diff -u -r1.63 snow.c static int encode_q_branch(SnowContext *s, int level, int x, int y){ uint8_t p_buffer[1024]; uint8_t i_buffer[1024]; -@@ -2263,6 +2264,7 @@ +@@ -2243,6 +2244,7 @@ return score; } } +#endif - static void decode_q_branch(SnowContext *s, int level, int x, int y){ - const int w= s->b_width << s->block_max_depth; -@@ -2316,6 +2318,7 @@ + static always_inline int same_block(BlockNode *a, BlockNode *b){ + if((a->type&BLOCK_INTRA) && (b->type&BLOCK_INTRA)){ +@@ -2347,6 +2349,7 @@ } } @@ -476,7 +479,7 @@ diff -u -r1.63 snow.c static void encode_blocks(SnowContext *s){ int x, y; int w= s->b_width; -@@ -2331,6 +2334,7 @@ +@@ -2368,6 +2371,7 @@ } } } @@ -484,7 +487,7 @@ diff -u -r1.63 snow.c static void decode_blocks(SnowContext *s){ int x, y; -@@ -3348,6 +3352,7 @@ +@@ -3935,6 +3939,7 @@ } } @@ -492,15 +495,15 @@ diff -u -r1.63 snow.c static int encode_init(AVCodecContext *avctx) { SnowContext *s = avctx->priv_data; -@@ -3409,6 +3414,7 @@ - s->chroma_v_shift= 1; +@@ -4003,6 +4008,7 @@ + return 0; } +#endif static int frame_start(SnowContext *s){ AVFrame tmp; -@@ -3434,6 +3440,7 @@ +@@ -4028,6 +4034,7 @@ return 0; } @@ -508,15 +511,15 @@ diff -u -r1.63 snow.c static int encode_frame(AVCodecContext *avctx, unsigned char *buf, int buf_size, void *data){ SnowContext *s = avctx->priv_data; RangeCoder * const c= &s->c; -@@ -3628,6 +3635,7 @@ - +@@ -4230,6 +4237,7 @@ + return ff_rac_terminate(c); } +#endif static void common_end(SnowContext *s){ int plane_index, level, orientation; -@@ -3651,6 +3659,7 @@ +@@ -4254,6 +4262,7 @@ } } @@ -524,7 +527,7 @@ diff -u -r1.63 snow.c static int encode_end(AVCodecContext *avctx) { SnowContext *s = avctx->priv_data; -@@ -3660,6 +3669,7 @@ +@@ -4263,6 +4272,7 @@ return 0; } @@ -535,88 +538,31 @@ diff -u -r1.63 snow.c Index: libavcodec/utils.c =================================================================== RCS file: /cvsroot/ffmpeg/ffmpeg/libavcodec/utils.c,v -retrieving revision 1.160 -diff -u -r1.160 utils.c ---- libavcodec/utils.c 20 Sep 2005 21:43:45 -0000 1.160 -+++ libavcodec/utils.c 23 Oct 2005 12:35:47 -0000 -@@ -1241,11 +1241,11 @@ +retrieving revision 1.173 +diff -u -r1.173 utils.c +--- libavcodec/utils.c 30 Jan 2006 23:33:18 -0000 1.173 ++++ libavcodec/utils.c 5 Feb 2006 13:45:40 -0000 +@@ -1276,11 +1276,11 @@ AVClass* avc= ptr ? *(AVClass**)ptr : NULL; if(level>av_log_level) - return; + return; -#undef fprintf +/* #undef fprintf */ if(print_prefix && avc) { - fprintf(stderr, "[%s @ %p]", avc->item_name(ptr), avc); + fprintf(stderr, "[%s @ %p]", avc->item_name(ptr), avc); } -#define fprintf please_use_av_log +/* #define fprintf please_use_av_log */ - - print_prefix= strstr(fmt, "\n") != NULL; - -Index: libavcodec/i386/dsputil_mmx.c -=================================================================== -RCS file: /cvsroot/ffmpeg/ffmpeg/libavcodec/i386/dsputil_mmx.c,v -retrieving revision 1.104 -diff -u -r1.104 dsputil_mmx.c ---- libavcodec/i386/dsputil_mmx.c 9 Oct 2005 23:38:52 -0000 1.104 -+++ libavcodec/i386/dsputil_mmx.c 23 Oct 2005 12:36:21 -0000 -@@ -617,31 +617,32 @@ - } - static inline void transpose4x4(uint8_t *dst, uint8_t *src, int dst_stride, int src_stride){ -+ void *dst_reg = dst, *src_reg = src; -+ - asm volatile( //FIXME could save 1 instruction if done as 8x4 ... -- "movd %4, %%mm0 \n\t" -- "movd %5, %%mm1 \n\t" -- "movd %6, %%mm2 \n\t" -- "movd %7, %%mm3 \n\t" -+ "movd (%1), %%mm0 \n\t" -+ "movd (%1,%5), %%mm1 \n\t" -+ "lea (%1, %5, 2), %1 \n\t" -+ "movd (%1), %%mm2 \n\t" -+ "movd (%1,%5), %%mm3 \n\t" - "punpcklbw %%mm1, %%mm0 \n\t" - "punpcklbw %%mm3, %%mm2 \n\t" - "movq %%mm0, %%mm1 \n\t" - "punpcklwd %%mm2, %%mm0 \n\t" - "punpckhwd %%mm2, %%mm1 \n\t" -- "movd %%mm0, %0 \n\t" -+ "movd %%mm0, (%0) \n\t" - "punpckhdq %%mm0, %%mm0 \n\t" -- "movd %%mm0, %1 \n\t" -- "movd %%mm1, %2 \n\t" -+ "movd %%mm0, (%0,%4) \n\t" -+ "lea (%0, %4, 2), %0 \n\t" -+ "movd %%mm1, (%0) \n\t" - "punpckhdq %%mm1, %%mm1 \n\t" -- "movd %%mm1, %3 \n\t" -- -- : "=m" (*(uint32_t*)(dst + 0*dst_stride)), -- "=m" (*(uint32_t*)(dst + 1*dst_stride)), -- "=m" (*(uint32_t*)(dst + 2*dst_stride)), -- "=m" (*(uint32_t*)(dst + 3*dst_stride)) -- : "m" (*(uint32_t*)(src + 0*src_stride)), -- "m" (*(uint32_t*)(src + 1*src_stride)), -- "m" (*(uint32_t*)(src + 2*src_stride)), -- "m" (*(uint32_t*)(src + 3*src_stride)) -+ "movd %%mm1, (%0,%4) \n\t" -+ : "=&r" (dst_reg), -+ "=&r" (src_reg) -+ : "0" (dst_reg), -+ "1" (src_reg), -+ "r" (dst_stride), -+ "r" (src_stride) - ); - } + print_prefix= strstr(fmt, "\n") != NULL; Index: libavcodec/mlib/dsputil_mlib.c =================================================================== RCS file: /cvsroot/ffmpeg/ffmpeg/libavcodec/mlib/dsputil_mlib.c,v -retrieving revision 1.15 -diff -u -r1.15 dsputil_mlib.c ---- libavcodec/mlib/dsputil_mlib.c 15 Mar 2004 01:21:01 -0000 1.15 -+++ libavcodec/mlib/dsputil_mlib.c 23 Oct 2005 12:36:24 -0000 +retrieving revision 1.18 +diff -u -r1.18 dsputil_mlib.c +--- libavcodec/mlib/dsputil_mlib.c 12 Jan 2006 22:43:20 -0000 1.18 ++++ libavcodec/mlib/dsputil_mlib.c 5 Feb 2006 13:45:43 -0000 @@ -20,6 +20,8 @@ #include "../dsputil.h" #include "../mpegvideo.h" @@ -645,7 +591,7 @@ diff -u -r1.15 dsputil_mlib.c { + if (xine_mm_accel() & MM_ACCEL_MLIB) { if(s->avctx->dct_algo==FF_DCT_AUTO || s->avctx->dct_algo==FF_DCT_MLIB){ - s->dsp.fdct = ff_fdct_mlib; + s->dsp.fdct = ff_fdct_mlib; } @@ -459,4 +464,5 @@ s->dsp.idct = ff_idct_mlib; @@ -656,10 +602,10 @@ diff -u -r1.15 dsputil_mlib.c Index: libavutil/common.h =================================================================== RCS file: /cvsroot/ffmpeg/ffmpeg/libavutil/common.h,v -retrieving revision 1.153 -diff -u -r1.153 common.h ---- libavutil/common.h 19 Sep 2005 23:26:47 -0000 1.153 -+++ libavutil/common.h 23 Oct 2005 12:36:30 -0000 +retrieving revision 1.161 +diff -u -r1.161 common.h +--- libavutil/common.h 30 Jan 2006 00:22:41 -0000 1.161 ++++ libavutil/common.h 5 Feb 2006 13:45:46 -0000 @@ -6,6 +6,12 @@ #ifndef COMMON_H #define COMMON_H @@ -673,7 +619,7 @@ diff -u -r1.153 common.h #if defined(WIN32) && !defined(__MINGW32__) && !defined(__CYGWIN__) # define CONFIG_WIN32 #endif -@@ -185,8 +191,10 @@ +@@ -218,8 +224,10 @@ #ifdef HAVE_AV_CONFIG_H @@ -685,7 +631,7 @@ diff -u -r1.153 common.h #endif #include <float.h> -@@ -205,10 +213,12 @@ +@@ -238,10 +246,12 @@ #ifdef HAVE_AV_CONFIG_H @@ -699,7 +645,7 @@ diff -u -r1.153 common.h #endif /* !CONFIG_WIN32 && !CONFIG_OS2 */ -@@ -235,7 +245,9 @@ +@@ -275,7 +285,9 @@ /* debug stuff */ # ifndef DEBUG @@ -709,7 +655,7 @@ diff -u -r1.153 common.h # endif # include <assert.h> -@@ -530,8 +542,8 @@ +@@ -573,8 +585,8 @@ #define sprintf sprintf_is_forbidden_due_to_security_issues_use_snprintf #define strcat strcat_is_forbidden_due_to_security_issues_use_pstrcat #if !(defined(LIBAVFORMAT_BUILD) || defined(_FRAMEHOOK_H)) @@ -720,7 +666,7 @@ diff -u -r1.153 common.h #endif #define CHECKED_ALLOCZ(p, size)\ -@@ -574,4 +586,16 @@ +@@ -617,4 +629,16 @@ #endif /* HAVE_AV_CONFIG_H */ |