View | Details | Raw Unified | Return to bug 134632
Collapse All | Expand All

(-)ffmpeg/Makefile (-136 / +131 lines)
Lines 6-13 Link Here
6
#      $Id: Makefile 77 2008-07-27 21:50:37Z buhnux $
6
#      $Id: Makefile 77 2008-07-27 21:50:37Z buhnux $
7
7
8
PORTNAME=	ffmpeg
8
PORTNAME=	ffmpeg
9
DISTVERSION=	2008-07-27
9
DISTVERSION=	2009-05-15
10
PORTREVISION=	10
11
CATEGORIES=	multimedia audio ipv6 net
10
CATEGORIES=	multimedia audio ipv6 net
12
MASTER_SITES=	${MASTER_SITE_LOCAL}
11
MASTER_SITES=	${MASTER_SITE_LOCAL}
13
MASTER_SITE_SUBDIR=	ahze
12
MASTER_SITE_SUBDIR=	ahze
Lines 15-20 Link Here
15
MAINTAINER=	multimedia@FreeBSD.org
14
MAINTAINER=	multimedia@FreeBSD.org
16
COMMENT=	Hyper fast realtime audio/video encoder/converter, streaming server
15
COMMENT=	Hyper fast realtime audio/video encoder/converter, streaming server
17
16
17
BUILD_DEPENDS=	yasm:${PORTSDIR}/devel/yasm
18
18
HAS_CONFIGURE=	yes
19
HAS_CONFIGURE=	yes
19
CONFIGURE_LOG=	config.err
20
CONFIGURE_LOG=	config.err
20
USE_BZIP2=	yes
21
USE_BZIP2=	yes
Lines 22-50 Link Here
22
MAKE_JOBS_SAFE=	yes
23
MAKE_JOBS_SAFE=	yes
23
WANT_SDL=	yes
24
WANT_SDL=	yes
24
25
25
OPTIONS=	AMR_NB	"AMR narrowband encoder" off \
26
OPTIONS=	AMR_NB	"AMR Narrow Band encoder" off \
26
		AMR_WB	"AMR wideband encoder" off \
27
		AMR_WB	"AMR Wide Band encoder" off \
27
		FAAC	"FAAC mp4/aac audio encoder" off \
28
		DIRAC	"Dirac codec via libschroedinger" off \
28
		FAAD	"FAAD mp4/aac audio decoder" on \
29
		FAAC	"FAAC audio encoder" off \
29
		GSM	"gsm audio codec" off \
30
		FAAD	"FAAD audio decoder" off \
31
		GSM	"GSM audio codec" off \
30
		IPV6	"IPV6 network support" on \
32
		IPV6	"IPV6 network support" on \
31
		LAME	"lame MP3 codec" off \
33
		LAME	"LAME MP3 encoder" off \
32
		LIBA52	"liba52 support"	on \
34
		OPENJPEG	"JPEG 2000 decoder" off \
33
		OPTIMIZED_CFLAGS "Additional optimizations" off \
35
		OPTIMIZED_CFLAGS "Additional optimizations" off \
34
		SDL	"SDL support (build ffplay)" off \
36
		SDL	"SDL support (build ffplay)" off \
35
		THEORA	"libtheora support (implies OGG)" on \
37
		SPEEX	"Speex audio decoder" off \
36
		VORBIS	"libvorbisenc support (implies OGG)" on \
38
		THEORA	"Theora encoder (implies OGG)" off \
37
		X264	"X.264 codec" on \
39
		VORBIS	"Vorbis encoder via libvorbis (implies OGG)" off \
38
		XVID	"XVID codec" off
40
		X264	"H.264 encoder" off \
41
		XVID	"Xvid encoder via xvidcore" off
39
42
40
COMPAT_HEADERS=	libavcodec/avcodec.h \
43
COMPAT_HEADERS=libavcodec/avcodec.h \
41
	libavcodec/opt.h \
44
	libavcodec/opt.h \
45
	libavcodec/vdpau.h \
46
	libavcodec/xvmc.h \
42
	libavdevice/avdevice.h \
47
	libavdevice/avdevice.h \
48
	libavfilter/avfilter.h \
43
	libavformat/avformat.h \
49
	libavformat/avformat.h \
44
	libavformat/avio.h \
50
	libavformat/avio.h \
45
	libavformat/rtsp.h \
51
	libavutil/adler32.h \
46
	libavformat/rtspcodes.h \
47
	libavutil/adler32.h  \
48
	libavutil/avstring.h \
52
	libavutil/avstring.h \
49
	libavutil/avutil.h \
53
	libavutil/avutil.h \
50
	libavutil/base64.h \
54
	libavutil/base64.h \
Lines 57-184 Link Here
57
	libavutil/mathematics.h \
61
	libavutil/mathematics.h \
58
	libavutil/md5.h \
62
	libavutil/md5.h \
59
	libavutil/mem.h \
63
	libavutil/mem.h \
60
	libavutil/random.h \
64
	libavutil/pixfmt.h \
61
	libavutil/rational.h \
65
	libavutil/rational.h \
62
	libavutil/sha1.h \
66
	libavutil/sha1.h \
63
	libpostproc/postprocess.h \
67
	libpostproc/postprocess.h \
64
	libswscale/rgb2rgb.h \
65
	libswscale/swscale.h
68
	libswscale/swscale.h
66
69
67
.include <bsd.port.pre.mk>
70
.include <bsd.port.pre.mk>
68
71
69
CONFIGURE_ARGS+=--cc="${CC}" --prefix="${PREFIX}" \
72
CONFIGURE_ARGS+=--prefix="${PREFIX}" \
70
		--disable-debug \
73
		--mandir="${PREFIX}/man" \
71
		--enable-memalign-hack \
72
		--enable-shared \
74
		--enable-shared \
75
		--enable-gpl \
73
		--enable-postproc \
76
		--enable-postproc \
77
		--enable-avfilter \
78
		--enable-avfilter-lavf \
79
		--enable-pthreads \
80
		--enable-x11grab \
81
		--enable-runtime-cpudetect \
82
		--enable-memalign-hack \
83
		--cc="${CC}" \
74
		--extra-cflags="${FFMPEG_CFLAGS} -I${LOCALBASE}/include" \
84
		--extra-cflags="${FFMPEG_CFLAGS} -I${LOCALBASE}/include" \
75
		--extra-ldflags="-L${LOCALBASE}/lib ${FFMPEG_LDFLAGS}" \
85
		--extra-ldflags="-L${LOCALBASE}/lib ${FFMPEG_LDFLAGS}" \
76
		--extra-libs="${PTHREAD_LIBS}" \
86
		--extra-libs="${PTHREAD_LIBS}" \
77
		--enable-gpl \
87
		--disable-debug
78
		--enable-pthreads \
79
		--enable-swscale \
80
		--mandir=${PREFIX}/man
81
CONFIGURE_ENV+=	LANG=C
82
MAKE_ENV+=	INSTALL="${INSTALL}"
83
SHLIB_VER=	1
88
SHLIB_VER=	1
84
PLIST_SUB=	SHLIB_VER=${SHLIB_VER}
89
PLIST_SUB=	SHLIB_VER=${SHLIB_VER}
85
USE_LDCONFIG=	yes
90
USE_LDCONFIG=	yes
86
91
87
##
92
DOC_FILES=	Changelog COPYING.GPL COPYING.LGPL \
88
DOC_FILES=	Changelog README
93
		CREDITS INSTALL LICENSE MAINTAINERS README
89
# under subdir doc
94
# under doc subdirectory
90
DOC_DOCFILES=	TODO faq.html ffmpeg-doc.html \
95
DOC_DOCFILES=	APIchanges avutil.txt faq.html ffmpeg-doc.html \
91
		ffplay-doc.html ffserver-doc.html \
96
		ffmpeg_powerpc_performance_evaluation_howto.txt \
92
		hooks.html optimization.txt
97
		ffplay-doc.html ffserver-doc.html general.html \
98
		issue_tracker.txt optimization.txt \
99
		rate_distortion.txt snow.txt soc.txt \
100
		swscale.txt TODO viterbi.txt
93
PORTDOCS=	*
101
PORTDOCS=	*
94
102
95
## sse hardware vector support
103
USE_RC_SUBR=	ffserver
104
105
# sse hardware vector support
96
.if (defined(MACHINE_CPU) && ${MACHINE_CPU:Msse} == "sse")
106
.if (defined(MACHINE_CPU) && ${MACHINE_CPU:Msse} == "sse")
97
WITH_BUILTIN_VECTOR=	yes
107
WITH_BUILTIN_VECTOR=	yes
98
.endif
99
100
##
101
## support activation
102
##
103
## PORTDOCS
104
.ifndef(NOPORTDOCS)
105
BUILD_DEPENDS+=	texi2html:${PORTSDIR}/textproc/texi2html
106
MAN1+=	ffmpeg.1 ffserver.1
107
.endif
108
109
.ifdef(WITH_OPTIMIZED_CFLAGS)
110
CFLAGS:=		${CFLAGS:N-O*} -O3 -ffast-math -fno-finite-math-only -fomit-frame-pointer
111
.else
108
.else
112
CFLAGS:=		${CFLAGS:N-O0} -O2
109
CONFIGURE_ARGS+=	--disable-sse
113
DEBUG_FLAGS+=		 -O2
114
.endif
110
.endif
115
111
116
## a52
112
# mmx support
117
.if !defined(WITHOUT_LIBA52) && !defined(WITHOUT_A52)
113
.if ${MACHINE_CPU:Mmmx} == ""
118
LIB_DEPENDS+=	a52.0:${PORTSDIR}/audio/liba52
114
CONFIGURE_ARGS+=	--disable-mmx
115
WITHOUT_BUILTIN_VECTOR=	yes
116
.endif
119
117
120
CONFIGURE_ARGS+=	--enable-liba52 \
118
# builtin vector, requires mmx
121
			--enable-liba52bin
119
.if !defined(WITHOUT_BUILTIN_VECTOR) && defined(WITH_BUILTIN_VECTOR)
122
FFMPEG_LDFLAGS+=	-la52
120
FFMPEG_CFLAGS+=		-msse
123
.else
124
CONFIGURE_ARGS+=	--disable-liba52
125
.endif
121
.endif
126
122
127
.ifdef(WITH_FAAC)
123
# PORTDOCS
128
LIB_DEPENDS+=		faac.0:${PORTSDIR}/audio/faac
124
.ifndef(NOPORTDOCS)
129
CONFIGURE_ARGS+=	--enable-libfaac
125
BUILD_DEPENDS+=		texi2html:${PORTSDIR}/textproc/texi2html
130
.else
126
MAN1+=		ffmpeg.1 ffserver.1
131
CONFIGURE_ARGS+=	--disable-libfaac
132
.endif
127
.endif
133
128
134
## faad
129
# optimizations
135
.ifndef(WITHOUT_FAAD)
130
.ifdef(WITH_OPTIMIZED_CFLAGS)
136
LIB_DEPENDS+=		faad.2:${PORTSDIR}/audio/faad
131
CFLAGS:=	${CFLAGS:N-O*} -O3 -ffast-math -fno-finite-math-only -fomit-frame-pointer
137
CONFIGURE_ARGS+=	--enable-libfaad \
138
			--enable-libfaadbin
139
.else
132
.else
140
CONFIGURE_ARGS+=	--disable-libfaad
133
CFLAGS:=	${CFLAGS:N-O0} -O2
134
DEBUG_FLAGS+=	-O2
141
.endif
135
.endif
142
136
143
## amr
137
# amr
144
.ifdef(WITH_AMR_NB)
138
.ifdef(WITH_AMR_NB)
145
LIB_DEPENDS+=		amrnb.3:${PORTSDIR}/audio/libamrnb
139
LIB_DEPENDS+=	amrnb.3:${PORTSDIR}/audio/libamrnb
146
CONFIGURE_ARGS+=	--enable-libamr-nb --enable-nonfree
140
CONFIGURE_ARGS+=	--enable-libamr-nb --enable-nonfree
147
.else
141
.else
148
CONFIGURE_ARGS+=	--disable-libamr-nb
142
CONFIGURE_ARGS+=	--disable-libamr-nb
149
.endif
143
.endif
150
144
151
.ifdef(WITH_AMR_WB)
145
.ifdef(WITH_AMR_WB)
152
LIB_DEPENDS+=		amrwb.3:${PORTSDIR}/audio/libamrwb
146
LIB_DEPENDS+=	amrwb.3:${PORTSDIR}/audio/libamrwb
153
CONFIGURE_ARGS+=	--enable-libamr-wb --enable-nonfree
147
CONFIGURE_ARGS+=	--enable-libamr-wb --enable-nonfree
154
.else
148
.else
155
CONFIGURE_ARGS+=	--disable-libamr-wb
149
CONFIGURE_ARGS+=	--disable-libamr-wb
156
.endif
150
.endif
157
151
158
USE_RC_SUBR=		ffserver
152
# dirac
153
.ifdef(WITH_DIRAC)
154
LIB_DEPENDS+=	schroedinger-1.0.2:${PORTSDIR}/multimedia/schroedinger
155
CONFIGURE_ARGS+=	--enable-libschroedinger
156
.else
157
CONFIGURE_ARGS+=	--disable-libschroedinger
158
.endif
159
159
160
.if ${MACHINE_CPU:Mmmx}==""
160
# faac
161
CONFIGURE_ARGS+=	--disable-mmx
161
.ifdef(WITH_FAAC)
162
LIB_DEPENDS+=	faac.0:${PORTSDIR}/audio/faac
163
CONFIGURE_ARGS+=	--enable-libfaac
164
.else
165
CONFIGURE_ARGS+=	--disable-libfaac
166
.endif
162
167
163
WITHOUT_BUILTIN_VECTOR=	yes
168
# faad
169
.ifdef(WITH_FAAD)
170
LIB_DEPENDS+=	faad.2:${PORTSDIR}/audio/faad
171
CONFIGURE_ARGS+=	--enable-libfaad \
172
			--enable-libfaadbin
173
.else
174
CONFIGURE_ARGS+=	--disable-libfaad
164
.endif
175
.endif
165
## gsm
166
.ifdef(WITH_GSM)
167
LIB_DEPENDS+=		gsm.1:${PORTSDIR}/audio/gsm
168
176
177
# gsm
178
.ifdef(WITH_GSM)
179
LIB_DEPENDS+=	gsm.1:${PORTSDIR}/audio/gsm
169
CONFIGURE_ARGS+=	--enable-libgsm
180
CONFIGURE_ARGS+=	--enable-libgsm
170
.else
181
.else
171
CONFIGURE_ARGS+=	--disable-libgsm
182
CONFIGURE_ARGS+=	--disable-libgsm
172
.endif
183
.endif
173
## mp3
184
185
# ipv6
186
.ifndef(WITHOUT_IPV6)
187
CONFIGURE_ARGS+=	--enable-ipv6
188
.else
189
CONFIGURE_ARGS+=	--disable-ipv6
190
.endif
191
192
# mp3
174
.ifdef(WITH_LAME)
193
.ifdef(WITH_LAME)
175
LIB_DEPENDS+=		mp3lame.0:${PORTSDIR}/audio/lame
194
LIB_DEPENDS+=	mp3lame.0:${PORTSDIR}/audio/lame
176
CONFIGURE_ARGS+=	--enable-libmp3lame
195
CONFIGURE_ARGS+=	--enable-libmp3lame
177
.else
196
.else
178
CONFIGURE_ARGS+=	--disable-libmp3lame
197
CONFIGURE_ARGS+=	--disable-libmp3lame
179
.endif
198
.endif
180
199
181
## SDL
200
# openjpeg
201
.ifdef(WITH_OPENJPEG)
202
LIB_DEPENDS+=	openjpeg.2:${PORTSDIR}/graphics/openjpeg
203
CONFIGURE_ARGS+=	--enable-libopenjpeg
204
.else
205
CONFIGURE_ARGS+=	--disable-libopenjpeg
206
.endif
207
208
# sdl
182
.ifdef(WITH_SDL)
209
.ifdef(WITH_SDL)
183
USE_SDL+=	sdl
210
USE_SDL+=	sdl
184
PLIST_FILES+=	bin/ffplay
211
PLIST_FILES+=	bin/ffplay
Lines 189-207 Link Here
189
CONFIGURE_ARGS+=	--disable-ffplay
216
CONFIGURE_ARGS+=	--disable-ffplay
190
.endif
217
.endif
191
218
192
## theora
219
# speex
193
.if !defined(WITHOUT_THEORA)
220
.ifdef(WITH_SPEEX)
194
LIB_DEPENDS+=		theora.0:${PORTSDIR}/multimedia/libtheora
221
LIB_DEPENDS+=	speex.1:${PORTSDIR}/audio/speex
222
CONFIGURE_ARGS+=	--enable-libspeex
223
.else
224
CONFIGURE_ARGS+=	--disable-libspeex
225
.endif
195
226
227
# theora
228
.ifdef(WITH_THEORA)
229
LIB_DEPENDS+=	theora.0:${PORTSDIR}/multimedia/libtheora
196
CONFIGURE_ARGS+=	--enable-libtheora
230
CONFIGURE_ARGS+=	--enable-libtheora
197
.else
231
.else
198
CONFIGURE_ARGS+=	--disable-libtheora
232
CONFIGURE_ARGS+=	--disable-libtheora
199
.endif
233
.endif
200
234
201
## vorbis
235
# vorbis
202
.if !defined(WITHOUT_VORBIS)
236
.ifdef(WITH_VORBIS)
203
LIB_DEPENDS+=		vorbisenc.2:${PORTSDIR}/audio/libvorbis
237
LIB_DEPENDS+=	vorbisenc.2:${PORTSDIR}/audio/libvorbis
204
205
CONFIGURE_ARGS+=	--enable-libvorbis
238
CONFIGURE_ARGS+=	--enable-libvorbis
206
FFMPEG_CFLAGS+=		-I${LOCALBASE}/include/vorbis
239
FFMPEG_CFLAGS+=		-I${LOCALBASE}/include/vorbis
207
.else
240
.else
Lines 209-229 Link Here
209
.endif
242
.endif
210
243
211
# x264
244
# x264
212
.ifndef(WITHOUT_X264)
245
.ifdef(WITH_X264)
213
LIB_DEPENDS+=		x264.65:${PORTSDIR}/multimedia/x264
246
LIB_DEPENDS+=	x264.65:${PORTSDIR}/multimedia/x264
214
215
CONFIGURE_ARGS+=	--enable-libx264
247
CONFIGURE_ARGS+=	--enable-libx264
216
.else
248
.else
217
CONFIGURE_ARGS+=	--disable-libx264
249
CONFIGURE_ARGS+=	--disable-libx264
218
.endif
250
.endif
219
## builtin vector, requires mmx
220
.if !defined(WITHOUT_BUILTIN_VECTOR) && defined(WITH_BUILTIN_VECTOR)
221
FFMPEG_CFLAGS+=		-msse
222
.endif
223
251
224
## xvid
252
# xvid
225
.ifdef(WITH_XVID)
253
.ifdef(WITH_XVID)
226
LIB_DEPENDS+=		xvidcore.4:${PORTSDIR}/multimedia/xvid
254
LIB_DEPENDS+=	xvidcore.4:${PORTSDIR}/multimedia/xvid
227
CONFIGURE_ARGS+=	--enable-libxvid
255
CONFIGURE_ARGS+=	--enable-libxvid
228
.else
256
.else
229
CONFIGURE_ARGS+=	--disable-libxvid
257
CONFIGURE_ARGS+=	--disable-libxvid
Lines 238-279 Link Here
238
.endif
266
.endif
239
267
240
post-patch:
268
post-patch:
241
# Faad compat
269
# faad compat
242
	@${REINPLACE_CMD} -e 's|faacD|NeAACD|' ${WRKSRC}/libavcodec/libfaad.c
270
	@${REINPLACE_CMD} -e 's|faacD|NeAACD|' ${WRKSRC}/libavcodec/libfaad.c
243
# {C,LD}FLAGS safeness
271
# {C,LD}FLAGS safeness
244
# fix x264 math, use correct log base 2 from math(3)
272
	@${REINPLACE_CMD} -e 's|$$(LIBDIR)/pkgconfig|${PREFIX}/libdata/pkgconfig|' \
245
.if ${OSVERSION} <= 601000
273
		${WRKSRC}/subdir.mak
246
	@${REINPLACE_CMD} -E \
247
		-e 's| log2| log|' \
248
		${WRKSRC}/libavcodec/libx264.c
249
.endif
250
	@${REINPLACE_CMD} -e 's|$$(libdir)/pkgconfig|${PREFIX}/libdata/pkgconfig|' \
251
		${WRKSRC}/common.mak
252
	@${REINPLACE_CMD} -e 's|/etc/ffserver.conf|${PREFIX}/etc/ffserver.conf|' \
274
	@${REINPLACE_CMD} -e 's|/etc/ffserver.conf|${PREFIX}/etc/ffserver.conf|' \
253
		${WRKSRC}/ffserver.c
275
		${WRKSRC}/ffserver.c
254
	@${REINPLACE_CMD} -E \
276
	@${REINPLACE_CMD} -E \
255
		-e "s|(EXTRALIBS[[:space:]]*=)|\1-L${LOCALBASE}/lib |g; \
277
		-e "s|(EXTRALIBS[[:space:]]*=)|\1-L${LOCALBASE}/lib |g; \
256
		s|%%LOCALBASE%%|${LOCALBASE}|g; s|%%SHLIB_VER%%|${SHLIB_VER}|g; \
278
		s|%%LOCALBASE%%|${LOCALBASE}|g; \
257
		s|-pthread|${PTHREAD_LIBS}|g" \
279
		s|-pthread|${PTHREAD_LIBS}|g" \
258
		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
280
		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
259
# force detection of texi2html
281
	@${REINPLACE_CMD} -e 's|-ldl||; s|$$(LIBMAJOR)|${SHLIB_VER}|g;' \
260
.ifndef(NOPORTDOCS)
261
	@${REINPLACE_CMD} -E \
262
		-e 's|^(texi2html=)no|\1yes|' \
263
		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
264
.endif
265
	@${REINPLACE_CMD} -e 's|-ldl||' \
266
		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
267
.if defined(WITH_IMLIB2) && !defined(WITHOUT_IMLIB2)
268
	@${REINPLACE_CMD} -E \
269
		-e 's|^(imlib2).*$$|\1=yes|' \
270
		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
271
.endif
272
.if !defined(WITHOUT_IPV6)
273
	@${REINPLACE_CMD} -E \
274
		-e 's|^(ipv6).*$$|\1=yes|' \
275
		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
282
		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
276
.endif
277
.ifdef(WITH_SDL)
283
.ifdef(WITH_SDL)
278
	@${REINPLACE_CMD} -E \
284
	@${REINPLACE_CMD} -E \
279
		-e 's|sdl-config|${SDL_CONFIG}|g' \
285
		-e 's|sdl-config|${SDL_CONFIG}|g' \
Lines 282-298 Link Here
282
		${XARGS} -n 10 ${REINPLACE_CMD} -E \
288
		${XARGS} -n 10 ${REINPLACE_CMD} -E \
283
		-e 's|#include <SDL|#include <SDL/SDL|'
289
		-e 's|#include <SDL|#include <SDL/SDL|'
284
.endif
290
.endif
285
.if !defined(WITHOUT_BUILTIN_VECTOR) && defined(WITH_BUILTIN_VECTOR)
286
	@${REINPLACE_CMD} -E \
287
		-e 's|^([[:space:]]+builtin_vector).*$$|\1=yes|' \
288
		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
289
.else
290
	@${REINPLACE_CMD} -E \
291
		-e 's|^([[:space:]]+builtin_vector).*$$|\1=no|' \
292
		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
293
.endif
294
	@${REINPLACE_CMD} -e 's|$$(LIBDIR)/pkgconfig|${PREFIX}/libdata/pkgconfig|' \
295
		${WRKSRC}/common.mak
296
291
297
post-configure:
292
post-configure:
298
.ifdef(WITHOUT_THEORA)
293
.ifdef(WITHOUT_THEORA)
(-)ffmpeg/distinfo (-3 / +3 lines)
Lines 1-3 Link Here
1
MD5 (ffmpeg-2008-07-27.tar.bz2) = 777351947a51778a165ec0559f827387
1
MD5 (ffmpeg-2009-05-15.tar.bz2) = bf8e39cb7627016f36fd766d09153cc4
2
SHA256 (ffmpeg-2008-07-27.tar.bz2) = 492a20be1a60910aa1fd1538a56f25ef5b0ecbbd588906d4eb28b3a0bcf004ba
2
SHA256 (ffmpeg-2009-05-15.tar.bz2) = b03f1effaeb7347956c9cebe4456d7611ced8b5f159a8a08615ee5f48ffcedd1
3
SIZE (ffmpeg-2008-07-27.tar.bz2) = 2581976
3
SIZE (ffmpeg-2009-05-15.tar.bz2) = 2756670
(-)ffmpeg/files/patch-configure (-60 lines)
Lines 1-60 Link Here
1
--- configure.orig	2008-07-24 06:53:32.000000000 -0400
2
+++ configure	2008-08-11 00:23:15.000000000 -0400
3
@@ -1596,8 +1596,8 @@ od -A n -t x1 $TMPO | grep -q '42 *49 *4
4
 
5
 if check_func dlopen; then
6
     ldl=
7
-elif check_func dlopen -ldl; then
8
-    ldl=-ldl
9
+elif check_func dlopen ; then
10
+    ldl=
11
 fi
12
 
13
 check_func  fork
14
@@ -1718,10 +1718,17 @@ fi
15
 if enabled vhook; then
16
     check_ldflags -rdynamic
17
     check_ldflags -export-dynamic
18
+    if enabled imlib2; then
19
+        check_foo_config imlib2 imlib2 Imlib2.h imlib_load_font
20
+    fi
21
+    if enabled freetype2; then
22
+        check_foo_config freetype2 freetype ft2build.h FT_Init_FreeType
23
+    fi
24
+else
25
+    disable imlib2
26
+    disable freetype2
27
 fi
28
 
29
-check_foo_config imlib2 imlib2 Imlib2.h imlib_load_font
30
-check_foo_config freetype2 freetype ft2build.h FT_Init_FreeType
31
 
32
 ##########################################
33
 # SDL check
34
@@ -2072,7 +2079,7 @@ get_version(){
35
     eval ${name}_VERSION=\$${name}_VERSION_MAJOR.\$${name}_VERSION_MINOR.\$${name}_VERSION_MICRO
36
     lcname=$(tolower $name)
37
     eval echo "${lcname}_VERSION=\$${name}_VERSION" >> config.mak
38
-    eval echo "${lcname}_VERSION_MAJOR=\$${name}_VERSION_MAJOR" >> config.mak
39
+    eval echo "${lcname}_VERSION_MAJOR=1" >> config.mak
40
 }
41
 
42
 get_version LIBSWSCALE  libswscale/swscale.h
43
@@ -2096,7 +2103,7 @@ if enabled shared; then
44
     echo "SLIB_UNINSTALL_EXTRA_CMD=${SLIB_UNINSTALL_EXTRA_CMD}" >> config.mak
45
 fi
46
 echo "LIB_INSTALL_EXTRA_CMD=${LIB_INSTALL_EXTRA_CMD}" >> config.mak
47
-echo "EXTRALIBS=$extralibs" >> config.mak
48
+echo "EXTRALIBS=-L/usr/local/lib -L/usr/local/lib -L/usr/local/lib $extralibs" >> config.mak
49
 
50
 print_config ARCH_   $TMPH config.mak $ARCH_LIST
51
 print_config HAVE_   $TMPH config.mak $HAVE_LIST
52
@@ -2206,7 +2213,7 @@ Requires.private: $(enabled shared && ec
53
 Conflicts:
54
 Libs: -L\${libdir} -l${shortname} $(disabled shared && echo $libs)
55
 Libs.private: $(enabled shared && echo $libs)
56
-Cflags: -I\${includedir}
57
+Cflags: -I\${includedir} -I\${includedir}/ffmpeg
58
 EOF
59
 cat <<EOF > $name/$name-uninstalled.pc
60
 prefix=
(-)ffmpeg/files/patch-libavcodec_Makefile (-12 lines)
Lines 1-12 Link Here
1
--- libavcodec/Makefile.orig	2008-08-14 14:31:06.000000000 -0400
2
+++ libavcodec/Makefile	2008-08-14 14:31:16.000000000 -0400
3
@@ -373,9 +373,7 @@ OBJS-$(HAVE_W32THREADS)                +
4
 
5
 OBJS-$(HAVE_XVMC)                      += xvmcvideo.o
6
 
7
-ifndef CONFIG_SWSCALE
8
 OBJS += imgresample.o
9
-endif
10
 
11
 # processor-specific code
12
 ifdef HAVE_MMX
(-)ffmpeg/files/patch-libavcodec_imgconvert.c (-18 lines)
Lines 1-18 Link Here
1
--- libavcodec/imgconvert.c.orig	2008-08-14 14:31:37.000000000 -0400
2
+++ libavcodec/imgconvert.c	2008-08-14 14:31:54.000000000 -0400
3
@@ -2108,7 +2108,6 @@ int img_pad(AVPicture *dst, const AVPict
4
 }
5
 #endif
6
 
7
-#ifndef CONFIG_SWSCALE
8
 static uint8_t y_ccir_to_jpeg[256];
9
 static uint8_t y_jpeg_to_ccir[256];
10
 static uint8_t c_ccir_to_jpeg[256];
11
@@ -2628,7 +2627,6 @@ int img_convert(AVPicture *dst, int dst_
12
     avpicture_free(tmp);
13
     return ret;
14
 }
15
-#endif
16
 
17
 /* NOTE: we scan all the pixels to have an exact information */
18
 static int get_alpha_info_pal8(const AVPicture *src, int width, int height)
(-)ffmpeg/files/patch-libavcodec_libx264.c (-37 lines)
Lines 1-37 Link Here
1
--- ./libavcodec/libx264.c.orig	2008-06-12 23:50:13.000000000 +0200
2
+++ ./libavcodec/libx264.c	2008-10-13 15:47:05.000000000 +0200
3
@@ -124,6 +124,8 @@
4
 {
5
     X264Context *x4 = avctx->priv_data;
6
 
7
+    av_freep(&avctx->extradata);
8
+
9
     if(x4->enc)
10
         x264_encoder_close(x4->enc);
11
 
12
@@ -162,7 +164,7 @@
13
 
14
     x4->params.i_bframe = avctx->max_b_frames;
15
     x4->params.b_cabac = avctx->coder_type == FF_CODER_TYPE_AC;
16
-    x4->params.b_bframe_adaptive = avctx->b_frame_strategy;
17
+    x4->params.i_bframe_adaptive = avctx->b_frame_strategy;
18
     x4->params.i_bframe_bias = avctx->bframebias;
19
     x4->params.b_bframe_pyramid = avctx->flags2 & CODEC_FLAG2_BPYRAMID;
20
     avctx->has_b_frames= avctx->flags2 & CODEC_FLAG2_BPYRAMID ? 2 : !!avctx->max_b_frames;
21
@@ -227,8 +229,6 @@
22
     x4->params.analyse.i_me_range = avctx->me_range;
23
     x4->params.analyse.i_subpel_refine = avctx->me_subpel_quality;
24
 
25
-    x4->params.analyse.b_bidir_me = avctx->bidir_refine > 0;
26
-    x4->params.analyse.b_bframe_rdo = avctx->flags2 & CODEC_FLAG2_BRDO;
27
     x4->params.analyse.b_mixed_references =
28
         avctx->flags2 & CODEC_FLAG2_MIXED_REFS;
29
     x4->params.analyse.b_chroma_me = avctx->me_cmp & FF_CMP_CHROMA;
30
@@ -253,7 +253,6 @@
31
     x4->params.rc.f_ip_factor = 1/fabs(avctx->i_quant_factor);
32
     x4->params.rc.f_pb_factor = avctx->b_quant_factor;
33
     x4->params.analyse.i_chroma_qp_offset = avctx->chromaoffset;
34
-    x4->params.rc.psz_rc_eq = avctx->rc_eq;
35
 
36
     x4->params.analyse.b_psnr = avctx->flags & CODEC_FLAG_PSNR;
37
     x4->params.i_log_level = X264_LOG_DEBUG;
(-)ffmpeg/files/patch-libavdevice-bktr.c (+14 lines)
Line 0 Link Here
1
--- libavdevice/bktr.c.orig	2009-05-15 17:34:55.000000000 +0200
2
+++ libavdevice/bktr.c	2009-05-15 17:38:01.000000000 +0200
3
@@ -24,6 +24,11 @@
4
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
5
  */
6
 
7
+typedef unsigned char	u_char;
8
+typedef unsigned short	u_short;
9
+typedef unsigned int	u_int;
10
+typedef unsigned long	u_long;
11
+
12
 #define _BSD_SOURCE 1
13
 #include "libavformat/avformat.h"
14
 #if HAVE_DEV_BKTR_IOCTL_METEOR_H && HAVE_DEV_BKTR_IOCTL_BT848_H
(-)ffmpeg/files/patch-libavdevice-oss_audio.c (+14 lines)
Line 0 Link Here
1
--- libavdevice/oss_audio.c.orig	2009-05-15 17:38:35.000000000 +0200
2
+++ libavdevice/oss_audio.c	2009-05-15 17:41:27.000000000 +0200
3
@@ -19,6 +19,11 @@
4
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
5
  */
6
 
7
+typedef unsigned char	u_char;
8
+typedef unsigned short	u_short;
9
+typedef unsigned int	u_int;
10
+typedef unsigned long	u_long;
11
+
12
 #include "config.h"
13
 #include <stdlib.h>
14
 #include <stdio.h>
(-)ffmpeg/files/patch-libavformat-udp.c (+11 lines)
Line 0 Link Here
1
--- libavformat/udp.c.orig	2009-05-15 17:24:45.000000000 +0200
2
+++ libavformat/udp.c	2009-05-15 17:27:17.000000000 +0200
3
@@ -45,6 +45,8 @@
4
 #define IN6_IS_ADDR_MULTICAST(a) (((uint8_t *) (a))[0] == 0xff)
5
 #endif
6
 
7
+#define IPPROTO_IPV6 41
8
+
9
 typedef struct {
10
     int udp_fd;
11
     int ttl;
(-)ffmpeg/files/patch-libavutil__bswap.h (-21 lines)
Lines 1-21 Link Here
1
--- libavutil/bswap.h.orig	Mon Nov 28 22:16:18 2005
2
+++ libavutil/bswap.h	Mon Nov 28 22:21:22 2005
3
@@ -6,8 +6,18 @@
4
 #ifndef __BSWAP_H__
5
 #define __BSWAP_H__
6
 
7
+/* to detect __FreeBSD_version */
8
+#if (defined(__unix__) || defined(unix)) && !defined(USG)
9
+#include <sys/param.h>
10
+#endif
11
+
12
 #ifdef HAVE_BYTESWAP_H
13
 #include <byteswap.h>
14
+#elif (defined(__FreeBSD__) && __FreeBSD_version >= 500000)
15
+# include <sys/endian.h>
16
+# define bswap_16(x) bswap16(x)
17
+# define bswap_32(x) bswap32(x)
18
+# define bswap_64(x) bswap64(x)
19
 #else
20
 
21
 #ifdef ARCH_X86_64
(-)ffmpeg/files/patch-subdir.mak (-14 lines)
Lines 1-14 Link Here
1
--- subdir.mak.orig	2008-07-27 15:57:37.873013462 -0500
2
+++ subdir.mak	2008-07-27 15:58:54.041106334 -0500
3
@@ -54,9 +54,9 @@
4
 
5
 install-headers::
6
 	install -d "$(INCINSTDIR)"
7
-	install -d "$(LIBDIR)/pkgconfig"
8
+	install -d "$(prefix)/libdata/pkgconfig"
9
 	install -m 644 $(addprefix "$(SRC_DIR)"/,$(HEADERS)) "$(INCINSTDIR)"
10
-	install -m 644 $(BUILD_ROOT)/lib$(NAME)/lib$(NAME).pc "$(LIBDIR)/pkgconfig"
11
+	install -m 644 $(BUILD_ROOT)/lib$(NAME)/lib$(NAME).pc "$(prefix)/libdata/pkgconfig"
12
 
13
 uninstall-libs::
14
 	-rm -f "$(SHLIBDIR)/$(SLIBNAME_WITH_MAJOR)" \
(-)ffmpeg/files/patch-tkadv2009-004 (-17 lines)
Lines 1-17 Link Here
1
--- libavformat/4xm.c.orig	2008-06-03 20:20:54.000000000 +0400
2
+++ libavformat/4xm.c	2009-03-08 23:38:44.000000000 +0300
3
@@ -163,10 +163,12 @@
4
                 return AVERROR_INVALIDDATA;
5
             }
6
             current_track = AV_RL32(&header[i + 8]);
7
+            if((unsigned)current_track >= UINT_MAX / sizeof(AudioTrack) - 1){
8
+                av_log(s, AV_LOG_ERROR, "current_track too large\n");
9
+                return -1;
10
+            }
11
             if (current_track + 1 > fourxm->track_count) {
12
                 fourxm->track_count = current_track + 1;
13
-                if((unsigned)fourxm->track_count >= UINT_MAX / sizeof(AudioTrack))
14
-                    return -1;
15
                 fourxm->tracks = av_realloc(fourxm->tracks,
16
                     fourxm->track_count * sizeof(AudioTrack));
17
                 if (!fourxm->tracks) {
(-)ffmpeg/pkg-descr (-5 / +5 lines)
Lines 1-24 Link Here
1
[ excerpt (with adaptations) from developer's README ]
1
[ excerpt (with adaptations) from developer's README ]
2
ffmpeg is a hyper fast realtime audio/video encoder, a streaming
2
FFmpeg is a hyper fast realtime audio/video encoder, a streaming
3
server and a generic audio and video file converter.
3
server and a generic audio and video file converter.
4
4
5
It can convert a standard video source into several file formats
5
It can convert a standard video source into several file formats
6
based on DCT/motion compensation encoding. Sound is compressed in
6
based on DCT/motion compensation encoding. Sound is compressed in
7
MPEG audio layer 2 or using an AC3 compatible stream.
7
MPEG audio layer 2 or using an AC3 compatible stream.
8
8
9
What makes ffmpeg interesting ?
9
What makes FFmpeg interesting ?
10
- Simple and efficient video encoder: outputs MPEG1, H263, Real
10
- Simple and efficient video encoder: outputs MPEG1, H.263, Real
11
  Video(tm), MPEG4, DIVX and MJPEG compatible bitstreams using the
11
  Video(tm), MPEG4, DIVX and MJPEG compatible bitstreams using the
12
  same encoder core.
12
  same encoder core.
13
- Hyper fast MPEG audio layer 2 compression (50 times faster than
13
- Hyper fast MPEG audio layer 2 compression (50 times faster than
14
  realtime on a K6 500).
14
  realtime on a K6 500).
15
[snip -> rest on website below]
15
[snip -> rest on website below]
16
16
17
ffmpeg is made of two programs:
17
FFmpeg is made of two programs:
18
* ffmpeg: soft VCR which encodes in real time to several formats.
18
* ffmpeg: soft VCR which encodes in real time to several formats.
19
  It can also encode from any supported input file format to any
19
  It can also encode from any supported input file format to any
20
  input supported format.
20
  input supported format.
21
* ffserver: high performance live broadcast streaming server based
21
* ffserver: high performance live broadcast streaming server based
22
  on the ffmpeg core encoders.
22
  on the ffmpeg core encoders.
23
23
24
WWW: http://ffmpeg.mplayerhq.hu/
24
WWW: http://www.ffmpeg.org
(-)ffmpeg/pkg-plist (-19 / +37 lines)
Lines 5-10 Link Here
5
include/ffmpeg/adler32.h
5
include/ffmpeg/adler32.h
6
include/ffmpeg/avcodec.h
6
include/ffmpeg/avcodec.h
7
include/ffmpeg/avdevice.h
7
include/ffmpeg/avdevice.h
8
include/ffmpeg/avfilter.h
8
include/ffmpeg/avformat.h
9
include/ffmpeg/avformat.h
9
include/ffmpeg/avio.h
10
include/ffmpeg/avio.h
10
include/ffmpeg/avstring.h
11
include/ffmpeg/avstring.h
Lines 20-40 Link Here
20
include/ffmpeg/md5.h
21
include/ffmpeg/md5.h
21
include/ffmpeg/mem.h
22
include/ffmpeg/mem.h
22
include/ffmpeg/opt.h
23
include/ffmpeg/opt.h
24
include/ffmpeg/pixfmt.h
23
include/ffmpeg/postprocess.h
25
include/ffmpeg/postprocess.h
24
include/ffmpeg/random.h
25
include/ffmpeg/rational.h
26
include/ffmpeg/rational.h
26
include/ffmpeg/rgb2rgb.h
27
include/ffmpeg/rtsp.h
28
include/ffmpeg/rtspcodes.h
29
include/ffmpeg/sha1.h
27
include/ffmpeg/sha1.h
30
include/ffmpeg/swscale.h
28
include/ffmpeg/swscale.h
29
include/ffmpeg/vdpau.h
30
include/ffmpeg/xvmc.h
31
include/libavcodec/avcodec.h
31
include/libavcodec/avcodec.h
32
include/libavcodec/opt.h
32
include/libavcodec/opt.h
33
include/libavcodec/vdpau.h
34
include/libavcodec/xvmc.h
33
include/libavdevice/avdevice.h
35
include/libavdevice/avdevice.h
36
include/libavfilter/avfilter.h
34
include/libavformat/avformat.h
37
include/libavformat/avformat.h
35
include/libavformat/avio.h
38
include/libavformat/avio.h
36
include/libavformat/rtsp.h
37
include/libavformat/rtspcodes.h
38
include/libavutil/adler32.h
39
include/libavutil/adler32.h
39
include/libavutil/avstring.h
40
include/libavutil/avstring.h
40
include/libavutil/avutil.h
41
include/libavutil/avutil.h
Lines 48-100 Link Here
48
include/libavutil/mathematics.h
49
include/libavutil/mathematics.h
49
include/libavutil/md5.h
50
include/libavutil/md5.h
50
include/libavutil/mem.h
51
include/libavutil/mem.h
51
include/libavutil/random.h
52
include/libavutil/pixfmt.h
52
include/libavutil/rational.h
53
include/libavutil/rational.h
53
include/libavutil/sha1.h
54
include/libavutil/sha1.h
54
include/libpostproc/postprocess.h
55
include/libpostproc/postprocess.h
55
include/postproc/postprocess.h
56
include/postproc/postprocess.h
56
include/libswscale/rgb2rgb.h
57
include/libswscale/swscale.h
57
include/libswscale/swscale.h
58
lib/libavcodec.a
58
lib/libavcodec.a
59
lib/libavcodec.so
59
lib/libavcodec.so
60
lib/libavcodec.so.1
60
lib/libavcodec.so.1
61
lib/libavcodec.so.51.61.0
61
lib/libavcodec.so.52.29.0
62
lib/libavdevice.a
62
lib/libavdevice.a
63
lib/libavdevice.so
63
lib/libavdevice.so
64
lib/libavdevice.so.1
64
lib/libavdevice.so.1
65
lib/libavdevice.so.52.0.0
65
lib/libavdevice.so.52.2.0
66
lib/libavfilter.a
67
lib/libavfilter.so
68
lib/libavfilter.so.0.5.0
69
lib/libavfilter.so.1
66
lib/libavformat.a
70
lib/libavformat.a
67
lib/libavformat.so
71
lib/libavformat.so
68
lib/libavformat.so.1
72
lib/libavformat.so.1
69
lib/libavformat.so.52.18.0
73
lib/libavformat.so.52.32.0
70
lib/libavutil.a
74
lib/libavutil.a
71
lib/libavutil.so
75
lib/libavutil.so
72
lib/libavutil.so.1
76
lib/libavutil.so.1
73
lib/libavutil.so.49.7.0
77
lib/libavutil.so.50.3.0
74
lib/libpostproc.a
78
lib/libpostproc.a
75
lib/libpostproc.so
79
lib/libpostproc.so
76
lib/libpostproc.so.1
80
lib/libpostproc.so.1
77
lib/libpostproc.so.51.1.0
81
lib/libpostproc.so.51.2.0
78
lib/libswscale.a
82
lib/libswscale.a
79
lib/libswscale.so
83
lib/libswscale.so
80
lib/libswscale.so.0.5.1
84
lib/libswscale.so.0.7.1
81
lib/libswscale.so.1
85
lib/libswscale.so.1
82
lib/vhook/fish.so
83
lib/vhook/null.so
84
lib/vhook/ppm.so
85
lib/vhook/watermark.so
86
libdata/pkgconfig/libavcodec.pc
86
libdata/pkgconfig/libavcodec.pc
87
libdata/pkgconfig/libavdevice.pc
87
libdata/pkgconfig/libavdevice.pc
88
libdata/pkgconfig/libavfilter.pc
88
libdata/pkgconfig/libavformat.pc
89
libdata/pkgconfig/libavformat.pc
89
libdata/pkgconfig/libavutil.pc
90
libdata/pkgconfig/libavutil.pc
90
libdata/pkgconfig/libpostproc.pc
91
libdata/pkgconfig/libpostproc.pc
91
libdata/pkgconfig/libswscale.pc
92
libdata/pkgconfig/libswscale.pc
92
@dirrm lib/vhook
93
%%DATADIR%%/libx264-baseline.ffpreset
94
%%DATADIR%%/libx264-default.ffpreset
95
%%DATADIR%%/libx264-fastfirstpass.ffpreset
96
%%DATADIR%%/libx264-hq.ffpreset
97
%%DATADIR%%/libx264-ipod320.ffpreset
98
%%DATADIR%%/libx264-ipod640.ffpreset
99
%%DATADIR%%/libx264-lossless_fast.ffpreset
100
%%DATADIR%%/libx264-lossless_max.ffpreset
101
%%DATADIR%%/libx264-lossless_medium.ffpreset
102
%%DATADIR%%/libx264-lossless_slow.ffpreset
103
%%DATADIR%%/libx264-lossless_slower.ffpreset
104
%%DATADIR%%/libx264-lossless_ultrafast.ffpreset
105
%%DATADIR%%/libx264-main.ffpreset
106
%%DATADIR%%/libx264-max.ffpreset
107
%%DATADIR%%/libx264-normal.ffpreset
108
%%DATADIR%%/libx264-slowfirstpass.ffpreset
109
@dirrm %%DATADIR%%
93
@dirrm include/postproc
110
@dirrm include/postproc
94
@dirrm include/libswscale
111
@dirrm include/libswscale
95
@dirrm include/libpostproc
112
@dirrm include/libpostproc
96
@dirrm include/libavutil
113
@dirrm include/libavutil
97
@dirrm include/libavformat
114
@dirrm include/libavformat
115
@dirrm include/libavfilter
98
@dirrm include/libavdevice
116
@dirrm include/libavdevice
99
@dirrm include/libavcodec
117
@dirrm include/libavcodec
100
@dirrm include/ffmpeg
118
@dirrm include/ffmpeg

Return to bug 134632