summaryrefslogtreecommitdiffstats
path: root/contrib
diff options
context:
space:
mode:
authortiter <[email protected]>2006-04-17 18:50:02 +0000
committertiter <[email protected]>2006-04-17 18:50:02 +0000
commitb30c3a727aa539f10adeae2220b4aa48e0b18feb (patch)
treeeefa942e442271517817b3dcc3e9172e659fe4e0 /contrib
parent82485cc9d132e1c284c9bd16dd8acd0094d42946 (diff)
Merge from avformat branch
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@60 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'contrib')
-rw-r--r--contrib/Jamfile48
-rw-r--r--contrib/patch-ffmpeg-macintel.patch (renamed from contrib/ffmpeg.patch)127
-rw-r--r--contrib/patch-ffmpeg.patch68
-rw-r--r--contrib/version_ffmpeg.txt2
-rw-r--r--contrib/version_mpeg4ip.txt1
5 files changed, 131 insertions, 115 deletions
diff --git a/contrib/Jamfile b/contrib/Jamfile
index 3271a46ee..908fc38a0 100644
--- a/contrib/Jamfile
+++ b/contrib/Jamfile
@@ -42,14 +42,11 @@ LibA52 $(SUBDIR)/lib/liba52.a : $(SUBDIR)/a52dec.tar.gz ;
# libavcodec
rule LibAvCodec
{
+ FFMPEG_PATCH = "patch -p1 < ../patch-ffmpeg.patch" ;
if $(OS) = MACOSX && $(OSPLAT) = X86
{
- FFMPEG_OPTIONS = --enable-memalign-hack ;
- FFMPEG_PATCH = "patch -p1 < ../ffmpeg.patch" ;
- }
- else
- {
- FFMPEG_PATCH = true ;
+ FFMPEG_OPTIONS = --enable-memalign-hack ;
+ FFMPEG_PATCH += " && patch -p1 < ../patch-ffmpeg-macintel.patch" ;
}
Depends $(<) : $(>) ;
Depends lib : $(<) ;
@@ -57,11 +54,10 @@ rule LibAvCodec
actions LibAvCodec
{
cd `dirname $(>)` && CONTRIB=`pwd` &&
- rm -rf ffmpeg && tar xzf ffmpeg.tar.gz && cd ffmpeg &&
- $(FFMPEG_PATCH) &&
- ./configure --prefix=$CONTRIB $(FFMPEG_OPTIONS) --enable-gpl &&
- make -C libavcodec && make -C libavutil &&
- make -C libavcodec installlib && make -C libavutil installlib &&
+ rm -rf ffmpeg-20060326 && tar xzf ffmpeg.tar.gz &&
+ cd ffmpeg-20060326 && $(FFMPEG_PATCH) &&
+ ./configure --prefix=$CONTRIB $(FFMPEG_OPTIONS) --enable-gpl --disable-audio-beos &&
+ make lib && make install-libs install-headers &&
strip -S $CONTRIB/lib/libavcodec.a
}
Wget $(SUBDIR)/ffmpeg.tar.gz : $(SUBDIR)/version_ffmpeg.txt ;
@@ -78,6 +74,17 @@ actions LibAvUtil
}
LibAvUtil $(SUBDIR)/lib/libavutil.a : $(SUBDIR)/lib/libavcodec.a ;
+rule LibAvFormat
+{
+ Depends $(<) : $(>) ;
+ Depends lib : $(<) ;
+}
+actions LibAvFormat
+{
+ strip -S $(<)
+}
+LibAvUtil $(SUBDIR)/lib/libavformat.a : $(SUBDIR)/lib/libavcodec.a ;
+
# libdvdcss
# We need libdvdcss.so for libdvdread's configure to work...
rule LibDvdCss
@@ -146,25 +153,6 @@ actions LibMp3Lame
Wget $(SUBDIR)/lame.tar.gz : $(SUBDIR)/version_lame.txt ;
LibMp3Lame $(SUBDIR)/lib/libmp3lame.a : $(SUBDIR)/lame.tar.gz ;
-# libmp4v2
-rule LibMp4v2
-{
- Depends $(<) : $(>) ;
- Depends lib : $(<) ;
-}
-actions LibMp4v2
-{
- cd `dirname $(>)` && CONTRIB=`pwd` &&
- rm -rf mpeg4ip && tar xzf mpeg4ip.tar.gz && cd mpeg4ip &&
- ./bootstrap && make -C lib/mp4v2 libmp4v2.la &&
- cp lib/mp4v2/.libs/libmp4v2.a $CONTRIB/lib &&
- cp mpeg4ip_config.h include/mpeg4ip.h include/mpeg4ip_version.h \
- include/mpeg4ip_win32.h lib/mp4v2/mp4.h $CONTRIB/include &&
- strip -S $CONTRIB/lib/libmp4v2.a
-}
-Wget $(SUBDIR)/mpeg4ip.tar.gz : $(SUBDIR)/version_mpeg4ip.txt ;
-LibMp4v2 $(SUBDIR)/lib/libmp4v2.a : $(SUBDIR)/mpeg4ip.tar.gz ;
-
# libmpeg2
rule LibMpeg2
{
diff --git a/contrib/ffmpeg.patch b/contrib/patch-ffmpeg-macintel.patch
index c507502c2..ecc0dc6c4 100644
--- a/contrib/ffmpeg.patch
+++ b/contrib/patch-ffmpeg-macintel.patch
@@ -1,6 +1,6 @@
-diff -ru ffmpeg.orig/libavcodec/i386/dsputil_mmx.c ffmpeg/libavcodec/i386/dsputil_mmx.c
---- ffmpeg.orig/libavcodec/i386/dsputil_mmx.c 2006-01-12 23:43:17.000000000 +0100
-+++ ffmpeg/libavcodec/i386/dsputil_mmx.c 2006-02-01 06:10:53.000000000 +0100
+diff -ru ffmpeg-20060326-bak/libavcodec/i386/dsputil_mmx.c ffmpeg-20060326/libavcodec/i386/dsputil_mmx.c
+--- ffmpeg-20060326-bak/libavcodec/i386/dsputil_mmx.c 2006-03-26 22:04:53.000000000 +0200
++++ ffmpeg-20060326/libavcodec/i386/dsputil_mmx.c 2006-03-26 22:13:32.000000000 +0200
@@ -52,7 +52,7 @@
static const uint64_t ff_pb_3F attribute_used __attribute__ ((aligned(8))) = 0x3F3F3F3F3F3F3F3FULL;
static const uint64_t ff_pb_FC attribute_used __attribute__ ((aligned(8))) = 0xFCFCFCFCFCFCFCFCULL;
@@ -55,9 +55,9 @@ diff -ru ffmpeg.orig/libavcodec/i386/dsputil_mmx.c ffmpeg/libavcodec/i386/dsputi
"1: \n\t"
"movq (%1), %%mm0 \n\t"
"movq 8(%1), %%mm4 \n\t"
-diff -ru ffmpeg.orig/libavcodec/i386/dsputil_mmx_avg.h ffmpeg/libavcodec/i386/dsputil_mmx_avg.h
---- ffmpeg.orig/libavcodec/i386/dsputil_mmx_avg.h 2006-01-12 23:43:17.000000000 +0100
-+++ ffmpeg/libavcodec/i386/dsputil_mmx_avg.h 2006-02-01 06:10:53.000000000 +0100
+diff -ru ffmpeg-20060326-bak/libavcodec/i386/dsputil_mmx_avg.h ffmpeg-20060326/libavcodec/i386/dsputil_mmx_avg.h
+--- ffmpeg-20060326-bak/libavcodec/i386/dsputil_mmx_avg.h 2006-03-26 22:04:53.000000000 +0200
++++ ffmpeg-20060326/libavcodec/i386/dsputil_mmx_avg.h 2006-03-26 22:13:51.000000000 +0200
@@ -754,7 +754,7 @@
"lea (%3, %3), %%"REG_a" \n\t"
"movq (%1), %%mm0 \n\t"
@@ -67,9 +67,9 @@ diff -ru ffmpeg.orig/libavcodec/i386/dsputil_mmx_avg.h ffmpeg/libavcodec/i386/ds
"1: \n\t"
"movq (%1, %%"REG_a"), %%mm2 \n\t"
"movq (%1, %3), %%mm1 \n\t"
-diff -ru ffmpeg.orig/libavcodec/i386/dsputil_mmx_rnd.h ffmpeg/libavcodec/i386/dsputil_mmx_rnd.h
---- ffmpeg.orig/libavcodec/i386/dsputil_mmx_rnd.h 2006-01-12 23:43:17.000000000 +0100
-+++ ffmpeg/libavcodec/i386/dsputil_mmx_rnd.h 2006-02-01 06:10:53.000000000 +0100
+diff -ru ffmpeg-20060326-bak/libavcodec/i386/dsputil_mmx_rnd.h ffmpeg-20060326/libavcodec/i386/dsputil_mmx_rnd.h
+--- ffmpeg-20060326-bak/libavcodec/i386/dsputil_mmx_rnd.h 2006-03-26 22:04:53.000000000 +0200
++++ ffmpeg-20060326/libavcodec/i386/dsputil_mmx_rnd.h 2006-03-26 22:15:09.000000000 +0200
@@ -28,7 +28,7 @@
MOVQ_BFE(mm6);
__asm __volatile(
@@ -142,10 +142,10 @@ diff -ru ffmpeg.orig/libavcodec/i386/dsputil_mmx_rnd.h ffmpeg/libavcodec/i386/ds
"1: \n\t"
"movq (%1, %%"REG_a"), %%mm0 \n\t"
"movq 1(%1, %%"REG_a"), %%mm2 \n\t"
-diff -ru ffmpeg.orig/libavcodec/i386/fdct_mmx.c ffmpeg/libavcodec/i386/fdct_mmx.c
---- ffmpeg.orig/libavcodec/i386/fdct_mmx.c 2005-12-22 02:10:09.000000000 +0100
-+++ ffmpeg/libavcodec/i386/fdct_mmx.c 2006-02-01 06:10:53.000000000 +0100
-@@ -350,61 +350,67 @@
+diff -ru ffmpeg-20060326-bak/libavcodec/i386/fdct_mmx.c ffmpeg-20060326/libavcodec/i386/fdct_mmx.c
+--- ffmpeg-20060326-bak/libavcodec/i386/fdct_mmx.c 2006-03-26 22:04:53.000000000 +0200
++++ ffmpeg-20060326/libavcodec/i386/fdct_mmx.c 2006-03-26 22:19:01.000000000 +0200
+@@ -350,61 +350,61 @@
static always_inline void fdct_row_sse2(const int16_t *in, int16_t *out)
{
@@ -218,12 +218,6 @@ diff -ru ffmpeg.orig/libavcodec/i386/fdct_mmx.c ffmpeg/libavcodec/i386/fdct_mmx.
- "packssdw %%xmm3, %%xmm1 \n\t"
- "movdqa %%xmm1, \\i(%4) \n\t"
- ".endm \n\t"
-+// ".macro FDCT_ROW_SSE2_H1 i t \n\t"
-+// ".endm \n\t"
-+// ".macro FDCT_ROW_SSE2_H2 i t \n\t"
-+// ".endm \n\t"
-+// ".macro FDCT_ROW_SSE2 i \n\t"
-+// ".endm \n\t"
"movdqa (%2), %%xmm6 \n\t"
- "FDCT_ROW_SSE2_H1 0 0 \n\t"
- "FDCT_ROW_SSE2 0 \n\t"
@@ -266,9 +260,9 @@ diff -ru ffmpeg.orig/libavcodec/i386/fdct_mmx.c ffmpeg/libavcodec/i386/fdct_mmx.
:
: "r" (in), "r" (tab_frw_01234567_sse2.tab_frw_01234567_sse2), "r" (fdct_r_row_sse2.fdct_r_row_sse2), "i" (SHIFT_FRW_ROW), "r" (out)
);
-diff -ru ffmpeg.orig/libavcodec/i386/idct_mmx_xvid.c ffmpeg/libavcodec/i386/idct_mmx_xvid.c
---- ffmpeg.orig/libavcodec/i386/idct_mmx_xvid.c 2006-01-12 23:43:18.000000000 +0100
-+++ ffmpeg/libavcodec/i386/idct_mmx_xvid.c 2006-02-01 06:10:53.000000000 +0100
+diff -ru ffmpeg-20060326-bak/libavcodec/i386/idct_mmx_xvid.c ffmpeg-20060326/libavcodec/i386/idct_mmx_xvid.c
+--- ffmpeg-20060326-bak/libavcodec/i386/idct_mmx_xvid.c 2006-03-26 22:04:53.000000000 +0200
++++ ffmpeg-20060326/libavcodec/i386/idct_mmx_xvid.c 2006-03-26 22:20:28.000000000 +0200
@@ -295,17 +295,17 @@
"movq 8+" #A1 ",%%mm1 \n\t"/* 1 ; x7 x6 x5 x4*/\
"movq %%mm0,%%mm2 \n\t"/* 2 ; x3 x2 x1 x0*/\
@@ -300,9 +294,9 @@ diff -ru ffmpeg.orig/libavcodec/i386/idct_mmx_xvid.c ffmpeg/libavcodec/i386/idct
"movq %%mm7,8 +" #A2 "\n\t"/* 7 ; save y7 y6 y5 y4*/\
-diff -ru ffmpeg.orig/libavcodec/i386/motion_est_mmx.c ffmpeg/libavcodec/i386/motion_est_mmx.c
---- ffmpeg.orig/libavcodec/i386/motion_est_mmx.c 2006-01-12 23:43:18.000000000 +0100
-+++ ffmpeg/libavcodec/i386/motion_est_mmx.c 2006-02-01 06:10:53.000000000 +0100
+diff -ru ffmpeg-20060326-bak/libavcodec/i386/motion_est_mmx.c ffmpeg-20060326/libavcodec/i386/motion_est_mmx.c
+--- ffmpeg-20060326-bak/libavcodec/i386/motion_est_mmx.c 2006-03-26 22:04:53.000000000 +0200
++++ ffmpeg-20060326/libavcodec/i386/motion_est_mmx.c 2006-03-26 22:24:48.000000000 +0200
@@ -34,7 +34,7 @@
{
long len= -(stride*h);
@@ -357,9 +351,9 @@ diff -ru ffmpeg.orig/libavcodec/i386/motion_est_mmx.c ffmpeg/libavcodec/i386/mot
"1: \n\t"
"movq (%1, %%"REG_a"), %%mm0 \n\t"
"movq (%2, %%"REG_a"), %%mm1 \n\t"
-diff -ru ffmpeg.orig/libavcodec/i386/mpegvideo_mmx.c ffmpeg/libavcodec/i386/mpegvideo_mmx.c
---- ffmpeg.orig/libavcodec/i386/mpegvideo_mmx.c 2006-01-12 23:43:18.000000000 +0100
-+++ ffmpeg/libavcodec/i386/mpegvideo_mmx.c 2006-02-01 06:10:53.000000000 +0100
+diff -ru ffmpeg-20060326-bak/libavcodec/i386/mpegvideo_mmx.c ffmpeg-20060326/libavcodec/i386/mpegvideo_mmx.c
+--- ffmpeg-20060326-bak/libavcodec/i386/mpegvideo_mmx.c 2006-03-26 22:04:53.000000000 +0200
++++ ffmpeg-20060326/libavcodec/i386/mpegvideo_mmx.c 2006-03-26 22:25:09.000000000 +0200
@@ -66,7 +66,7 @@
"packssdw %%mm5, %%mm5 \n\t"
"psubw %%mm5, %%mm7 \n\t"
@@ -414,9 +408,9 @@ diff -ru ffmpeg.orig/libavcodec/i386/mpegvideo_mmx.c ffmpeg/libavcodec/i386/mpeg
"1: \n\t"
"movq (%0, %%"REG_a"), %%mm0 \n\t"
"movq 8(%0, %%"REG_a"), %%mm1 \n\t"
-diff -ru ffmpeg.orig/libavcodec/i386/mpegvideo_mmx_template.c ffmpeg/libavcodec/i386/mpegvideo_mmx_template.c
---- ffmpeg.orig/libavcodec/i386/mpegvideo_mmx_template.c 2006-01-12 23:43:18.000000000 +0100
-+++ ffmpeg/libavcodec/i386/mpegvideo_mmx_template.c 2006-02-01 06:10:53.000000000 +0100
+diff -ru ffmpeg-20060326-bak/libavcodec/i386/mpegvideo_mmx_template.c ffmpeg-20060326/libavcodec/i386/mpegvideo_mmx_template.c
+--- ffmpeg-20060326-bak/libavcodec/i386/mpegvideo_mmx_template.c 2006-03-26 22:04:53.000000000 +0200
++++ ffmpeg-20060326/libavcodec/i386/mpegvideo_mmx_template.c 2006-03-26 22:25:33.000000000 +0200
@@ -111,7 +111,7 @@
"pxor %%mm6, %%mm6 \n\t"
"psubw (%3), %%mm6 \n\t" // -bias[0]
@@ -435,10 +429,10 @@ diff -ru ffmpeg.orig/libavcodec/i386/mpegvideo_mmx_template.c ffmpeg/libavcodec/
"1: \n\t"
"pxor %%mm1, %%mm1 \n\t" // 0
"movq (%1, %%"REG_a"), %%mm0 \n\t" // block[i]
-diff -ru ffmpeg.orig/libavcodec/i386/simple_idct_mmx.c ffmpeg/libavcodec/i386/simple_idct_mmx.c
---- ffmpeg.orig/libavcodec/i386/simple_idct_mmx.c 2006-01-12 23:43:18.000000000 +0100
-+++ ffmpeg/libavcodec/i386/simple_idct_mmx.c 2006-02-01 06:10:53.000000000 +0100
-@@ -459,13 +459,12 @@
+diff -ru ffmpeg-20060326-bak/libavcodec/i386/simple_idct_mmx.c ffmpeg-20060326/libavcodec/i386/simple_idct_mmx.c
+--- ffmpeg-20060326-bak/libavcodec/i386/simple_idct_mmx.c 2006-03-26 22:04:53.000000000 +0200
++++ ffmpeg-20060326/libavcodec/i386/simple_idct_mmx.c 2006-03-26 22:39:09.000000000 +0200
+@@ -459,10 +459,10 @@
//IDCT( src0, src4, src1, src5, dst, rounder, shift)
@@ -452,11 +446,8 @@ diff -ru ffmpeg.orig/libavcodec/i386/simple_idct_mmx.c ffmpeg/libavcodec/i386/si
+COL_IDCT( 24(%1), 88(%1), 56(%1), 120(%1), 12(%0), "nop", 20)
#else
--
- #define DC_COND_IDCT(src0, src4, src1, src5, dst, rounder, shift) \
- "movq " #src0 ", %%mm0 \n\t" /* R4 R0 r4 r0 */\
- "movq " #src4 ", %%mm1 \n\t" /* R6 R2 r6 r2 */\
-@@ -783,10 +782,10 @@
+
+@@ -783,10 +783,10 @@
//IDCT( src0, src4, src1, src5, dst, rounder, shift)
@@ -471,7 +462,7 @@ diff -ru ffmpeg.orig/libavcodec/i386/simple_idct_mmx.c ffmpeg/libavcodec/i386/si
"jmp 9f \n\t"
"#.balign 16 \n\t"\
-@@ -860,10 +859,10 @@
+@@ -860,10 +860,10 @@
"movd %%mm5, 80+" #dst " \n\t"
//IDCT( src0, src4, src1, src5, dst, rounder, shift)
@@ -486,7 +477,7 @@ diff -ru ffmpeg.orig/libavcodec/i386/simple_idct_mmx.c ffmpeg/libavcodec/i386/si
"jmp 9f \n\t"
"#.balign 16 \n\t"\
-@@ -928,10 +927,10 @@
+@@ -928,10 +928,10 @@
//IDCT( src0, src4, src1, src5, dst, rounder, shift)
@@ -501,7 +492,7 @@ diff -ru ffmpeg.orig/libavcodec/i386/simple_idct_mmx.c ffmpeg/libavcodec/i386/si
"jmp 9f \n\t"
"#.balign 16 \n\t"\
-@@ -1007,10 +1006,10 @@
+@@ -1007,10 +1007,10 @@
"movd %%mm5, 80+" #dst " \n\t"
//IDCT( src0, src4, src1, src5, dst, rounder, shift)
@@ -516,7 +507,7 @@ diff -ru ffmpeg.orig/libavcodec/i386/simple_idct_mmx.c ffmpeg/libavcodec/i386/si
"jmp 9f \n\t"
"#.balign 16 \n\t"\
-@@ -1073,10 +1072,10 @@
+@@ -1073,10 +1073,10 @@
//IDCT( src0, src4, src1, src5, dst, rounder, shift)
@@ -531,22 +522,19 @@ diff -ru ffmpeg.orig/libavcodec/i386/simple_idct_mmx.c ffmpeg/libavcodec/i386/si
"jmp 9f \n\t"
"#.balign 16 \n\t"\
-@@ -1141,10 +1140,10 @@
+@@ -1141,9 +1141,9 @@
//IDCT( src0, src4, src1, src5, dst, rounder, shift)
-IDCT( 0(%1), 64(%1), 32(%1), 96(%1), 0(%0),/nop, 20)
--//IDCT( 8(%1), 72(%1), 40(%1), 104(%1), 4(%0),/nop, 20)
--IDCT( 16(%1), 80(%1), 48(%1), 112(%1), 8(%0),/nop, 20)
--//IDCT( 24(%1), 88(%1), 56(%1), 120(%1), 12(%0),/nop, 20)
+IDCT( 0(%1), 64(%1), 32(%1), 96(%1), 0(%0), "nop", 20)
-+//IDCT( 8(%1), 72(%1), 40(%1), 104(%1), 4(%0), "nop", 20)
+ //IDCT( 8(%1), 72(%1), 40(%1), 104(%1), 4(%0),/nop, 20)
+-IDCT( 16(%1), 80(%1), 48(%1), 112(%1), 8(%0),/nop, 20)
+IDCT( 16(%1), 80(%1), 48(%1), 112(%1), 8(%0), "nop", 20)
-+//IDCT( 24(%1), 88(%1), 56(%1), 120(%1), 12(%0), "nop", 20)
+ //IDCT( 24(%1), 88(%1), 56(%1), 120(%1), 12(%0),/nop, 20)
"jmp 9f \n\t"
-
-@@ -1217,10 +1216,10 @@
+@@ -1217,10 +1217,10 @@
//IDCT( src0, src4, src1, src5, dst, rounder, shift)
@@ -561,42 +549,15 @@ diff -ru ffmpeg.orig/libavcodec/i386/simple_idct_mmx.c ffmpeg/libavcodec/i386/si
"jmp 9f \n\t"
-@@ -1259,10 +1258,10 @@
+@@ -1259,9 +1259,9 @@
"movq %%mm0, 80+" #dst " \n\t"
//IDCT( src0, src4, src1, src5, dst, rounder, shift)
-IDCT( 0(%1), 64(%1), 32(%1), 96(%1), 0(%0),/nop, 20)
--//IDCT( 8(%1), 72(%1), 40(%1), 104(%1), 4(%0),/nop, 20)
--IDCT( 16(%1), 80(%1), 48(%1), 112(%1), 8(%0),/nop, 20)
--//IDCT( 24(%1), 88(%1), 56(%1), 120(%1), 12(%0),/nop, 20)
+IDCT( 0(%1), 64(%1), 32(%1), 96(%1), 0(%0), "nop", 20)
-+//IDCT( 8(%1), 72(%1), 40(%1), 104(%1), 4(%0), "nop", 20)
+ //IDCT( 8(%1), 72(%1), 40(%1), 104(%1), 4(%0),/nop, 20)
+-IDCT( 16(%1), 80(%1), 48(%1), 112(%1), 8(%0),/nop, 20)
+IDCT( 16(%1), 80(%1), 48(%1), 112(%1), 8(%0), "nop", 20)
-+//IDCT( 24(%1), 88(%1), 56(%1), 120(%1), 12(%0), "nop", 20)
+ //IDCT( 24(%1), 88(%1), 56(%1), 120(%1), 12(%0),/nop, 20)
- #endif
-diff -ru ffmpeg.orig/libavcodec/libpostproc/mangle.h ffmpeg/libavcodec/libpostproc/mangle.h
---- ffmpeg.orig/libavcodec/libpostproc/mangle.h 2004-12-18 04:07:15.000000000 +0100
-+++ ffmpeg/libavcodec/libpostproc/mangle.h 2006-02-01 06:10:53.000000000 +0100
-@@ -19,6 +19,8 @@
- #else
- #if defined(ARCH_X86_64) && defined(PIC)
- #define MANGLE(a) #a"(%%rip)"
-+#elif defined(CONFIG_DARWIN)
-+#define MANGLE(a) "_" #a
- #else
- #define MANGLE(a) #a
- #endif
-diff -ru ffmpeg.orig/libavutil/common.h ffmpeg/libavutil/common.h
---- ffmpeg.orig/libavutil/common.h 2006-01-30 01:22:41.000000000 +0100
-+++ ffmpeg/libavutil/common.h 2006-02-01 06:10:53.000000000 +0100
-@@ -267,6 +267,8 @@
- # else
- # if defined(ARCH_X86_64) && defined(PIC)
- # define MANGLE(a) #a"(%%rip)"
-+# elif defined(CONFIG_DARWIN)
-+# define MANGLE(a) "_" #a
- # else
- # define MANGLE(a) #a
- # endif
diff --git a/contrib/patch-ffmpeg.patch b/contrib/patch-ffmpeg.patch
new file mode 100644
index 000000000..cd482bd17
--- /dev/null
+++ b/contrib/patch-ffmpeg.patch
@@ -0,0 +1,68 @@
+diff -ru ffmpeg-20060326-bak/configure ffmpeg-20060326/configure
+--- ffmpeg-20060326-bak/configure 2006-03-26 22:04:53.000000000 +0200
++++ ffmpeg-20060326/configure 2006-03-30 13:29:36.000000000 +0200
+@@ -272,7 +272,7 @@
+ 2.9-beos-991026*|2.9-beos-000224*) echo "R5/GG gcc"
+ mmx="no"
+ ;;
+-*20010315*) echo "BeBits gcc"
++*20010315*|2.95.3*) echo "BeBits gcc"
+ CFLAGS="$CFLAGS -fno-expensive-optimizations"
+ ;;
+ esac
+diff -ru ffmpeg-20060326-bak/libavformat/movenc.c ffmpeg-20060326/libavformat/movenc.c
+--- ffmpeg-20060326-bak/libavformat/movenc.c 2006-03-26 22:04:53.000000000 +0200
++++ ffmpeg-20060326/libavformat/movenc.c 2006-03-30 13:31:03.000000000 +0200
+@@ -22,6 +22,10 @@
+ #include "avio.h"
+ #include "mov.h"
+
++#ifndef UINT32_MAX
++#define UINT32_MAX (4294967295U)
++#endif
++
+ #undef NDEBUG
+ #include <assert.h>
+
+@@ -435,11 +439,6 @@
+ end = track->vosData + track->vosLen;
+
+ put_byte(pb, 1); /* version */
+- put_byte(pb, 77); /* profile */
+- put_byte(pb, 64); /* profile compat */
+- put_byte(pb, 30); /* level */
+- put_byte(pb, 0xff); /* 6 bits reserved (111111) + 2 bits nal size length - 1 (11) */
+- put_byte(pb, 0xe1); /* 3 bits reserved (111) + 5 bits number of sps (00001) */
+
+ /* look for sps and pps */
+ while (buf < end) {
+@@ -458,6 +457,12 @@
+ }
+ assert(sps);
+ assert(pps);
++
++ put_byte(pb, sps[1]); /* profile */
++ put_byte(pb, sps[2]); /* profile compat */
++ put_byte(pb, sps[3]); /* level */
++ put_byte(pb, 0xff); /* 6 bits reserved (111111) + 2 bits nal size length - 1 (11) */
++ put_byte(pb, 0xe1); /* 3 bits reserved (111) + 5 bits number of sps (00001) */
+ put_be16(pb, sps_size);
+ put_buffer(pb, sps, sps_size);
+ put_byte(pb, 1); /* number of pps */
+diff -ru ffmpeg-20060326-bak/libavformat/tcp.c ffmpeg-20060326/libavformat/tcp.c
+--- ffmpeg-20060326-bak/libavformat/tcp.c 2006-03-26 22:04:53.000000000 +0200
++++ ffmpeg-20060326/libavformat/tcp.c 2006-03-30 13:29:36.000000000 +0200
+@@ -112,11 +112,13 @@
+ break;
+ }
+
++#ifndef __BEOS__
+ /* test error */
+ optlen = sizeof(ret);
+ getsockopt (fd, SOL_SOCKET, SO_ERROR, &ret, &optlen);
+ if (ret != 0)
+ goto fail;
++#endif
+ }
+ s->fd = fd;
+ return 0;
diff --git a/contrib/version_ffmpeg.txt b/contrib/version_ffmpeg.txt
index fb7435f65..a13a33806 100644
--- a/contrib/version_ffmpeg.txt
+++ b/contrib/version_ffmpeg.txt
@@ -1 +1 @@
-http://download.m0k.org/handbrake/contrib/ffmpeg-20060201.tar.gz
+http://download.m0k.org/handbrake/contrib/ffmpeg-20060326.tar.gz
diff --git a/contrib/version_mpeg4ip.txt b/contrib/version_mpeg4ip.txt
deleted file mode 100644
index f60e5972a..000000000
--- a/contrib/version_mpeg4ip.txt
+++ /dev/null
@@ -1 +0,0 @@
-http://download.m0k.org/handbrake/contrib/mpeg4ip-1.3.tar.gz