x264
Eric L. Chen
d9364104 at mail.nchu.edu.tw
Tue Jan 20 05:28:50 PST 2009
On Tue, Jan 20, 2009 at 2:12 PM, Jarecki <jarecki at dwb.pl> wrote:
> I must crete the same environment as on linuxes
>
> FFmpeg version SVN-r16270
>
> x264 0.65.1058+5 d106962
>
> MPlayer 1.0rc2-4.2.
>
> MEncoder dev-SVN-r28178-4.2.3
>
> MP4Box - GPAC version 0.4.4
>
> yamdi Version: 1.2
>
> LAME 32bits version 3.9
>
> if i fail, almost all fbsd will be reinstaled to ubuntu
>
> Jarecki
> On Jan 20, 2009, at 3:47 AM, Eric L. Chen wrote:
>
> On Mon, Jan 19, 2009 at 5:13 PM, Jarecki <jarecki at dwb.pl> wrote:
>
> thanx, for fast answer,
>
> i have stil problems with compiling x264, maybe i do something wrong, but it
> seams the patches are applied
>
> yasm-0.7.2 A complete rewrite of the NASM assembler
>
> gpac-libgpac-0.4.4,1 Gpac MPEG-4 Systems library and headers
>
> gmake-3.81_3 GNU version of 'make' utility
>
> gpac-mp4box-0.4.4 A tool for merge mpg4 from Gpac
>
> If you need ffmpeg/mplayer/mencoder compatability (in FreeBSD port),
> x264-20090115 is to news (break API).
> Use x264-20080829 if you need ffmpeg/mplayer...
>
> /Eric
I add patch from ffmpeg to fit x264 API 65.
Save x264-0.65.shar.txt to your home directory.
$ rm -rf /usr/ports/multimedia/x264 /usr/ports/multimedia/ffmpeg
$ cd /usr/ports
$ sh ~/x264-0.65.shar.txt
$ make -C /usr/ports/multimedia/x264 deinstall build reinstall clean
$ make -C /usr/ports/multimedia/ffmpeg deinstall build reinstall clean
-------------- next part --------------
# This is a shell archive. Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file". Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
# multimedia/x264
# multimedia/x264/files
# multimedia/x264/files/patch-Makefile
# multimedia/x264/files/patch-configure
# multimedia/x264/files/patch-x264.h
# multimedia/x264/pkg-plist
# multimedia/x264/pkg-descr
# multimedia/x264/distinfo
# multimedia/x264/Makefile
# multimedia/ffmpeg
# multimedia/ffmpeg/files
# multimedia/ffmpeg/files/patch-libavcodec_imgconvert.c
# multimedia/ffmpeg/files/patch-libavcodec_Makefile
# multimedia/ffmpeg/files/patch-configure
# multimedia/ffmpeg/files/ffserver.in
# multimedia/ffmpeg/files/patch-libavutil__bswap.h
# multimedia/ffmpeg/files/patch-subdir.mak
# multimedia/ffmpeg/files/patch-libavcodec_libx264.c
# multimedia/ffmpeg/distinfo
# multimedia/ffmpeg/pkg-descr
# multimedia/ffmpeg/pkg-plist
# multimedia/ffmpeg/Makefile
#
echo c - multimedia/x264
mkdir -p multimedia/x264 > /dev/null 2>&1
echo c - multimedia/x264/files
mkdir -p multimedia/x264/files > /dev/null 2>&1
echo x - multimedia/x264/files/patch-Makefile
sed 's/^X//' >multimedia/x264/files/patch-Makefile << 'd927d4d8d129282d037a6d494054d65f'
X--- Makefile.orig 2009-01-20 20:09:23.000000000 +0800
X+++ Makefile 2009-01-20 20:09:42.000000000 +0800
X@@ -26,12 +26,12 @@
X cpu-a.asm dct-32.asm
X X86SRC = $(X86SRC0:%=common/x86/%)
X
X-ifeq ($(ARCH),X86)
X+ifeq ($(ARCH),i386)
X ARCH_X86 = yes
X ASMSRC = $(X86SRC) common/x86/pixel-32.asm
X endif
X
X-ifeq ($(ARCH),X86_64)
X+ifeq ($(ARCH),amd64)
X ARCH_X86 = yes
X ASMSRC = $(X86SRC:-32.asm=-64.asm)
X ASFLAGS += -DARCH_X86_64
d927d4d8d129282d037a6d494054d65f
echo x - multimedia/x264/files/patch-configure
sed 's/^X//' >multimedia/x264/files/patch-configure << 'bfbd16e7aee1915efdca2bc3eb77c3e2'
X--- configure.orig 2009-01-20 20:09:48.000000000 +0800
X+++ configure 2009-01-20 20:10:18.000000000 +0800
X@@ -247,7 +247,7 @@
X ASFLAGS="$ASFLAGS -f elf"
X fi
X ;;
X- x86_64)
X+ x86_64 | amd64)
X ARCH="X86_64"
X if [ "$SYS" = MACOSX ];then
X ASFLAGS="-f macho64 -m amd64 -DPIC -DPREFIX"
bfbd16e7aee1915efdca2bc3eb77c3e2
echo x - multimedia/x264/files/patch-x264.h
sed 's/^X//' >multimedia/x264/files/patch-x264.h << '579bdf057133d7013e2046641f144b3d'
X--- x264.h.orig 2009-01-20 20:27:43.000000000 +0800
X+++ x264.h 2009-01-20 20:28:14.000000000 +0800
X@@ -35,7 +35,7 @@
X
X #include <stdarg.h>
X
X-#define X264_BUILD 65
X+#define X264_BUILD 50
X
X /* x264_t:
X * opaque handler for encoder */
579bdf057133d7013e2046641f144b3d
echo x - multimedia/x264/pkg-plist
sed 's/^X//' >multimedia/x264/pkg-plist << 'f7ac9f5ff31aa79b74c831fac9a91ee9'
Xbin/x264
Xinclude/x264.h
Xlib/libx264.a
Xlib/libx264.so
Xlib/libx264.so.50
Xlibdata/pkgconfig/x264.pc
f7ac9f5ff31aa79b74c831fac9a91ee9
echo x - multimedia/x264/pkg-descr
sed 's/^X//' >multimedia/x264/pkg-descr << '1c55d01707b7dfdc72b2f982f0165c0c'
Xx264 is a free library for encoding H.264/AVC (aka MPEG-4 Part 10)
Xvideo streams.
X
XEncoder features
X * CAVLC/CABAC
X * Multi-references
X * Intra: all modes (4x4 and 16x16 with all predictions)
X * Inter P: all partitions (from 16x16 down to 4x4)
X * Inter B: partitions from 16x16 down to 8x8 (including SKIP/DIRECT)
X * Ratecontrol: constant quantizer, constant bitrate, or multipass ABR
X * Scene cut detection
X
XWWW: http://www.videolan.org/x264.html
1c55d01707b7dfdc72b2f982f0165c0c
echo x - multimedia/x264/distinfo
sed 's/^X//' >multimedia/x264/distinfo << '1936ed452acd696bd503f08df46cd461'
XMD5 (x264-snapshot-20090119-2245.tar.bz2) = 31c6b9aea1aef45003f69880a250609a
XSHA256 (x264-snapshot-20090119-2245.tar.bz2) = db5932675a52dba439b2611c2d4fc96f5a71d1ed2a3b35bac1659aa4928e5ef2
XSIZE (x264-snapshot-20090119-2245.tar.bz2) = 2381449
1936ed452acd696bd503f08df46cd461
echo x - multimedia/x264/Makefile
sed 's/^X//' >multimedia/x264/Makefile << '702945ff62016314aaeab4af3155f384'
X# New ports collection makefile for: x264
X# Date created: 2005-01-11
X# Whom: Michael Johnson <ahze at FreeBSD.org>
X#
X# $FreeBSD: ports/multimedia/x264/Makefile,v 1.63 2008/06/06 14:33:38 edwin Exp $
X# $Id: Makefile 30 2006-10-30 22:15:26Z buhnux $
X
XPORTNAME= x264
XPORTVERSION= 0.0.20090119
XPORTREVISION?= 0
XCATEGORIES= multimedia
XMASTER_SITES= http://downloads.videolan.org/pub/videolan/x264/snapshots/
XDISTNAME= ${PORTNAME}-snapshot-${PORTVERSION:S/0.0.//}-2245
X
XMAINTAINER= multimedia at FreeBSD.org
XCOMMENT?= Multimedia library and tool for encoding H.264/AVC video streams
X
XBUILD_DEPENDS= yasm>=0.6.0:${PORTSDIR}/devel/yasm
X
XWANT_GNOME= yes
XUSE_BZIP2= yes
XEXTRACT_AFTER_ARGS?= | ${TAR} -xf - --exclude .svn
XWRKSRC= ${WRKDIR}/${DISTNAME}
XUSE_GMAKE= yes
XALL_TARGET= default
XUSE_LDCONFIG= yes
XHAS_CONFIGURE= yes
X
XOPTIONS= DEBUG "Enable Debugging" Off \
X OPTIMIZED_CFLAGS "Enable Optimized CFLAGS" Off \
X GPAC "Enable MPEG-4 Output" On \
X X11_OUTPUT "Enable X11 Output" Off
X
XCONFIGURE_ARGS+= --extra-cflags="${CPPFLAGS} ${CFLAGS} -fPIC -I${LOCALBASE}/include -I${LOCALBASE}/include" \
X --extra-ldflags="${LDFLAGS} -L${LOCALBASE}/lib -L${LOCALBASE}/lib" \
X --enable-shared
X
X.include <bsd.port.pre.mk>
X
X.if ${ARCH}=="i386"
XMAKE_ENV+= ARCH_X86="1"
X.endif
X
XMAKE_ENV+= ARCH=${ARCH}
X
X.if defined(WITH_DEBUG)
XCONFIGURE_ARGS+= --enable-debug
X.endif
X
X.if defined(WITH_OPTIMIZED_CFLAGS)
XCFLAGS+= -O2 -funroll-loops -ffast-math
X.endif
X
X.if !defined(WITHOUT_GPAC)
XBUILD_DEPENDS+= gpac-libgpac>=0.4.2.r2,1:${PORTSDIR}/multimedia/gpac-libgpac
XLIB_DEPENDS+= gpac.1:${PORTSDIR}/multimedia/gpac-libgpac
XCONFIGURE_ARGS+= --enable-mp4-output
X.endif
X
X.if defined(WITH_X11_OUTPUT)
XCONFIGURE_ARGS+= --enable-visualize
XUSE_XORG= x11
X.endif
X
Xpost-patch:
X @${REINPLACE_CMD} -e 's|/usr/local|${PREFIX}|; \
X s|-lpthread|${PTHREAD_LIBS}|g' \
X ${WRKSRC}/configure
X @${REINPLACE_CMD} -e 's|$$(libdir)/pkgconfig|${PREFIX}/libdata/pkgconfig|; \
X s|$${libdir}/pkgconfig|${PREFIX}/libdata/pkgconfig|' \
X ${WRKSRC}/Makefile
X
X.if ${SLAVE_PORT:L}=="no"
X.if 0 # BROKEN
Xpost-build:
X cd ${WRKSRC}/tools && ${MAKE} avc2avi
X
Xpre-install:
X @${REINPLACE_CMD} -e 's|/usr/local|${PREFIX}|' \
X ${WRKSRC}/x264.pc
X
Xpost-install:
X ${INSTALL_PROGRAM} ${WRKSRC}/tools/avc2avi ${PREFIX}/bin
X.endif # BROKEN
X.endif
X
X.include <bsd.port.post.mk>
702945ff62016314aaeab4af3155f384
echo c - multimedia/ffmpeg
mkdir -p multimedia/ffmpeg > /dev/null 2>&1
echo c - multimedia/ffmpeg/files
mkdir -p multimedia/ffmpeg/files > /dev/null 2>&1
echo x - multimedia/ffmpeg/files/patch-libavcodec_imgconvert.c
sed 's/^X//' >multimedia/ffmpeg/files/patch-libavcodec_imgconvert.c << '8bcc987b47d0696cf72c612de187925c'
X--- libavcodec/imgconvert.c.orig 2008-08-14 14:31:37.000000000 -0400
X+++ libavcodec/imgconvert.c 2008-08-14 14:31:54.000000000 -0400
X@@ -2108,7 +2108,6 @@ int img_pad(AVPicture *dst, const AVPict
X }
X #endif
X
X-#ifndef CONFIG_SWSCALE
X static uint8_t y_ccir_to_jpeg[256];
X static uint8_t y_jpeg_to_ccir[256];
X static uint8_t c_ccir_to_jpeg[256];
X@@ -2628,7 +2627,6 @@ int img_convert(AVPicture *dst, int dst_
X avpicture_free(tmp);
X return ret;
X }
X-#endif
X
X /* NOTE: we scan all the pixels to have an exact information */
X static int get_alpha_info_pal8(const AVPicture *src, int width, int height)
8bcc987b47d0696cf72c612de187925c
echo x - multimedia/ffmpeg/files/patch-libavcodec_Makefile
sed 's/^X//' >multimedia/ffmpeg/files/patch-libavcodec_Makefile << 'be24b2c5dd6b8af30026be7763f84ae1'
X--- libavcodec/Makefile.orig 2008-08-14 14:31:06.000000000 -0400
X+++ libavcodec/Makefile 2008-08-14 14:31:16.000000000 -0400
X@@ -373,9 +373,7 @@ OBJS-$(HAVE_W32THREADS) +
X
X OBJS-$(HAVE_XVMC) += xvmcvideo.o
X
X-ifndef CONFIG_SWSCALE
X OBJS += imgresample.o
X-endif
X
X # processor-specific code
X ifdef HAVE_MMX
be24b2c5dd6b8af30026be7763f84ae1
echo x - multimedia/ffmpeg/files/patch-configure
sed 's/^X//' >multimedia/ffmpeg/files/patch-configure << '8c31d685b492d81009dd8da74a9861c9'
X--- configure.orig 2008-07-24 06:53:32.000000000 -0400
X+++ configure 2008-08-11 00:23:15.000000000 -0400
X@@ -1596,8 +1596,8 @@ od -A n -t x1 $TMPO | grep -q '42 *49 *4
X
X if check_func dlopen; then
X ldl=
X-elif check_func dlopen -ldl; then
X- ldl=-ldl
X+elif check_func dlopen ; then
X+ ldl=
X fi
X
X check_func fork
X@@ -1718,10 +1718,17 @@ fi
X if enabled vhook; then
X check_ldflags -rdynamic
X check_ldflags -export-dynamic
X+ if enabled imlib2; then
X+ check_foo_config imlib2 imlib2 Imlib2.h imlib_load_font
X+ fi
X+ if enabled freetype2; then
X+ check_foo_config freetype2 freetype ft2build.h FT_Init_FreeType
X+ fi
X+else
X+ disable imlib2
X+ disable freetype2
X fi
X
X-check_foo_config imlib2 imlib2 Imlib2.h imlib_load_font
X-check_foo_config freetype2 freetype ft2build.h FT_Init_FreeType
X
X ##########################################
X # SDL check
X@@ -2072,7 +2079,7 @@ get_version(){
X eval ${name}_VERSION=\$${name}_VERSION_MAJOR.\$${name}_VERSION_MINOR.\$${name}_VERSION_MICRO
X lcname=$(tolower $name)
X eval echo "${lcname}_VERSION=\$${name}_VERSION" >> config.mak
X- eval echo "${lcname}_VERSION_MAJOR=\$${name}_VERSION_MAJOR" >> config.mak
X+ eval echo "${lcname}_VERSION_MAJOR=1" >> config.mak
X }
X
X get_version LIBSWSCALE libswscale/swscale.h
X@@ -2096,7 +2103,7 @@ if enabled shared; then
X echo "SLIB_UNINSTALL_EXTRA_CMD=${SLIB_UNINSTALL_EXTRA_CMD}" >> config.mak
X fi
X echo "LIB_INSTALL_EXTRA_CMD=${LIB_INSTALL_EXTRA_CMD}" >> config.mak
X-echo "EXTRALIBS=$extralibs" >> config.mak
X+echo "EXTRALIBS=-L/usr/local/lib -L/usr/local/lib -L/usr/local/lib $extralibs" >> config.mak
X
X print_config ARCH_ $TMPH config.mak $ARCH_LIST
X print_config HAVE_ $TMPH config.mak $HAVE_LIST
X@@ -2206,7 +2213,7 @@ Requires.private: $(enabled shared && ec
X Conflicts:
X Libs: -L\${libdir} -l${shortname} $(disabled shared && echo $libs)
X Libs.private: $(enabled shared && echo $libs)
X-Cflags: -I\${includedir}
X+Cflags: -I\${includedir} -I\${includedir}/ffmpeg
X EOF
X cat <<EOF > $name/$name-uninstalled.pc
X prefix=
8c31d685b492d81009dd8da74a9861c9
echo x - multimedia/ffmpeg/files/ffserver.in
sed 's/^X//' >multimedia/ffmpeg/files/ffserver.in << '3ee2094f7a40e2d0aef9adb0b05db583'
X#!/bin/sh
X#
X# $FreeBSD: ports/multimedia/ffmpeg/files/ffserver.in,v 1.2 2008/09/07 03:31:58 ahze Exp $
X#
X
X# PROVIDE: ffserver
X# REQUIRE: NETWORKING
X# KEYWORD: shutdown
X
X#
X# Add the following lines to /etc/rc.conf to enable ffserver:
X#
X#ffserver_enable="YES"
X#
Xffserver_enable="${ffserver_enable-NO}"
X
X. %%RC_SUBR%%
X
Xname=ffserver
Xrcvar=`set_rcvar`
X
Xcommand="%%PREFIX%%/bin/${name} &"
Xrequired_files=%%PREFIX%%/etc/ffserver.conf
X
Xload_rc_config ${name}
Xrun_rc_command "$1"
3ee2094f7a40e2d0aef9adb0b05db583
echo x - multimedia/ffmpeg/files/patch-libavutil__bswap.h
sed 's/^X//' >multimedia/ffmpeg/files/patch-libavutil__bswap.h << '1d82e5444724c3c5865941c23e526d1b'
X--- libavutil/bswap.h.orig Mon Nov 28 22:16:18 2005
X+++ libavutil/bswap.h Mon Nov 28 22:21:22 2005
X@@ -6,8 +6,18 @@
X #ifndef __BSWAP_H__
X #define __BSWAP_H__
X
X+/* to detect __FreeBSD_version */
X+#if (defined(__unix__) || defined(unix)) && !defined(USG)
X+#include <sys/param.h>
X+#endif
X+
X #ifdef HAVE_BYTESWAP_H
X #include <byteswap.h>
X+#elif (defined(__FreeBSD__) && __FreeBSD_version >= 500000)
X+# include <sys/endian.h>
X+# define bswap_16(x) bswap16(x)
X+# define bswap_32(x) bswap32(x)
X+# define bswap_64(x) bswap64(x)
X #else
X
X #ifdef ARCH_X86_64
1d82e5444724c3c5865941c23e526d1b
echo x - multimedia/ffmpeg/files/patch-subdir.mak
sed 's/^X//' >multimedia/ffmpeg/files/patch-subdir.mak << '617bcab486160767841caa5e2f813c71'
X--- subdir.mak.orig 2008-07-27 15:57:37.873013462 -0500
X+++ subdir.mak 2008-07-27 15:58:54.041106334 -0500
X@@ -54,9 +54,9 @@
X
X install-headers::
X install -d "$(INCINSTDIR)"
X- install -d "$(LIBDIR)/pkgconfig"
X+ install -d "$(prefix)/libdata/pkgconfig"
X install -m 644 $(addprefix "$(SRC_DIR)"/,$(HEADERS)) "$(INCINSTDIR)"
X- install -m 644 $(BUILD_ROOT)/lib$(NAME)/lib$(NAME).pc "$(LIBDIR)/pkgconfig"
X+ install -m 644 $(BUILD_ROOT)/lib$(NAME)/lib$(NAME).pc "$(prefix)/libdata/pkgconfig"
X
X uninstall-libs::
X -rm -f "$(SHLIBDIR)/$(SLIBNAME_WITH_MAJOR)" \
617bcab486160767841caa5e2f813c71
echo x - multimedia/ffmpeg/files/patch-libavcodec_libx264.c
sed 's/^X//' >multimedia/ffmpeg/files/patch-libavcodec_libx264.c << '99f6f8d8792df95d62bcdf4a9cc57dca'
X--- libavcodec/libx264.c 2008/06/12 21:50:13 13759
X+++ libavcodec/libx264.c 2008/10/13 13:47:05 15612
X@@ -124,6 +124,8 @@
X {
X X264Context *x4 = avctx->priv_data;
X
X+ av_freep(&avctx->extradata);
X+
X if(x4->enc)
X x264_encoder_close(x4->enc);
X
X@@ -162,7 +164,7 @@
X
X x4->params.i_bframe = avctx->max_b_frames;
X x4->params.b_cabac = avctx->coder_type == FF_CODER_TYPE_AC;
X- x4->params.b_bframe_adaptive = avctx->b_frame_strategy;
X+ x4->params.i_bframe_adaptive = avctx->b_frame_strategy;
X x4->params.i_bframe_bias = avctx->bframebias;
X x4->params.b_bframe_pyramid = avctx->flags2 & CODEC_FLAG2_BPYRAMID;
X avctx->has_b_frames= avctx->flags2 & CODEC_FLAG2_BPYRAMID ? 2 : !!avctx->max_b_frames;
X@@ -227,8 +229,6 @@
X x4->params.analyse.i_me_range = avctx->me_range;
X x4->params.analyse.i_subpel_refine = avctx->me_subpel_quality;
X
X- x4->params.analyse.b_bidir_me = avctx->bidir_refine > 0;
X- x4->params.analyse.b_bframe_rdo = avctx->flags2 & CODEC_FLAG2_BRDO;
X x4->params.analyse.b_mixed_references =
X avctx->flags2 & CODEC_FLAG2_MIXED_REFS;
X x4->params.analyse.b_chroma_me = avctx->me_cmp & FF_CMP_CHROMA;
X@@ -253,7 +253,6 @@
X x4->params.rc.f_ip_factor = 1/fabs(avctx->i_quant_factor);
X x4->params.rc.f_pb_factor = avctx->b_quant_factor;
X x4->params.analyse.i_chroma_qp_offset = avctx->chromaoffset;
X- x4->params.rc.psz_rc_eq = avctx->rc_eq;
X
X x4->params.analyse.b_psnr = avctx->flags & CODEC_FLAG_PSNR;
X x4->params.i_log_level = X264_LOG_DEBUG;
99f6f8d8792df95d62bcdf4a9cc57dca
echo x - multimedia/ffmpeg/distinfo
sed 's/^X//' >multimedia/ffmpeg/distinfo << 'a9984fa6ffa87fcff53ace2847023219'
XMD5 (ffmpeg-2008-07-27.tar.bz2) = 777351947a51778a165ec0559f827387
XSHA256 (ffmpeg-2008-07-27.tar.bz2) = 492a20be1a60910aa1fd1538a56f25ef5b0ecbbd588906d4eb28b3a0bcf004ba
XSIZE (ffmpeg-2008-07-27.tar.bz2) = 2581976
a9984fa6ffa87fcff53ace2847023219
echo x - multimedia/ffmpeg/pkg-descr
sed 's/^X//' >multimedia/ffmpeg/pkg-descr << '859c05472937f2ab331ca49fd2b8458b'
X[ excerpt (with adaptations) from developer's README ]
Xffmpeg is a hyper fast realtime audio/video encoder, a streaming
Xserver and a generic audio and video file converter.
X
XIt can convert a standard video source into several file formats
Xbased on DCT/motion compensation encoding. Sound is compressed in
XMPEG audio layer 2 or using an AC3 compatible stream.
X
XWhat makes ffmpeg interesting ?
X- Simple and efficient video encoder: outputs MPEG1, H263, Real
X Video(tm), MPEG4, DIVX and MJPEG compatible bitstreams using the
X same encoder core.
X- Hyper fast MPEG audio layer 2 compression (50 times faster than
X realtime on a K6 500).
X[snip -> rest on website below]
X
Xffmpeg is made of two programs:
X* ffmpeg: soft VCR which encodes in real time to several formats.
X It can also encode from any supported input file format to any
X input supported format.
X* ffserver: high performance live broadcast streaming server based
X on the ffmpeg core encoders.
X
XWWW: http://ffmpeg.mplayerhq.hu/
859c05472937f2ab331ca49fd2b8458b
echo x - multimedia/ffmpeg/pkg-plist
sed 's/^X//' >multimedia/ffmpeg/pkg-plist << 'cb25741b02aaafbb989aea7fbd373d9e'
Xbin/ffmpeg
Xbin/ffserver
Xetc/ffserver.conf
Xetc/ffserver.conf-dist
Xinclude/ffmpeg/adler32.h
Xinclude/ffmpeg/avcodec.h
Xinclude/ffmpeg/avdevice.h
Xinclude/ffmpeg/avformat.h
Xinclude/ffmpeg/avio.h
Xinclude/ffmpeg/avstring.h
Xinclude/ffmpeg/avutil.h
Xinclude/ffmpeg/base64.h
Xinclude/ffmpeg/common.h
Xinclude/ffmpeg/crc.h
Xinclude/ffmpeg/fifo.h
Xinclude/ffmpeg/intfloat_readwrite.h
Xinclude/ffmpeg/log.h
Xinclude/ffmpeg/lzo.h
Xinclude/ffmpeg/mathematics.h
Xinclude/ffmpeg/md5.h
Xinclude/ffmpeg/mem.h
Xinclude/ffmpeg/opt.h
Xinclude/ffmpeg/postprocess.h
Xinclude/ffmpeg/random.h
Xinclude/ffmpeg/rational.h
Xinclude/ffmpeg/rgb2rgb.h
Xinclude/ffmpeg/rtsp.h
Xinclude/ffmpeg/rtspcodes.h
Xinclude/ffmpeg/sha1.h
Xinclude/ffmpeg/swscale.h
Xinclude/libavcodec/avcodec.h
Xinclude/libavcodec/opt.h
Xinclude/libavdevice/avdevice.h
Xinclude/libavformat/avformat.h
Xinclude/libavformat/avio.h
Xinclude/libavformat/rtsp.h
Xinclude/libavformat/rtspcodes.h
Xinclude/libavutil/adler32.h
Xinclude/libavutil/avstring.h
Xinclude/libavutil/avutil.h
Xinclude/libavutil/base64.h
Xinclude/libavutil/common.h
Xinclude/libavutil/crc.h
Xinclude/libavutil/fifo.h
Xinclude/libavutil/intfloat_readwrite.h
Xinclude/libavutil/log.h
Xinclude/libavutil/lzo.h
Xinclude/libavutil/mathematics.h
Xinclude/libavutil/md5.h
Xinclude/libavutil/mem.h
Xinclude/libavutil/random.h
Xinclude/libavutil/rational.h
Xinclude/libavutil/sha1.h
Xinclude/libpostproc/postprocess.h
Xinclude/postproc/postprocess.h
Xinclude/libswscale/rgb2rgb.h
Xinclude/libswscale/swscale.h
Xlib/libavcodec.a
Xlib/libavcodec.so
Xlib/libavcodec.so.1
Xlib/libavcodec.so.51.61.0
Xlib/libavdevice.a
Xlib/libavdevice.so
Xlib/libavdevice.so.1
Xlib/libavdevice.so.52.0.0
Xlib/libavformat.a
Xlib/libavformat.so
Xlib/libavformat.so.1
Xlib/libavformat.so.52.18.0
Xlib/libavutil.a
Xlib/libavutil.so
Xlib/libavutil.so.1
Xlib/libavutil.so.49.7.0
Xlib/libpostproc.a
Xlib/libpostproc.so
Xlib/libpostproc.so.1
Xlib/libpostproc.so.51.1.0
Xlib/libswscale.a
Xlib/libswscale.so
Xlib/libswscale.so.0.5.1
Xlib/libswscale.so.1
Xlib/vhook/fish.so
Xlib/vhook/null.so
Xlib/vhook/ppm.so
Xlib/vhook/watermark.so
Xlibdata/pkgconfig/libavcodec.pc
Xlibdata/pkgconfig/libavdevice.pc
Xlibdata/pkgconfig/libavformat.pc
Xlibdata/pkgconfig/libavutil.pc
Xlibdata/pkgconfig/libpostproc.pc
Xlibdata/pkgconfig/libswscale.pc
X at dirrm lib/vhook
X at dirrm include/postproc
X at dirrm include/libswscale
X at dirrm include/libpostproc
X at dirrm include/libavutil
X at dirrm include/libavformat
X at dirrm include/libavdevice
X at dirrm include/libavcodec
X at dirrm include/ffmpeg
cb25741b02aaafbb989aea7fbd373d9e
echo x - multimedia/ffmpeg/Makefile
sed 's/^X//' >multimedia/ffmpeg/Makefile << '5bd38e5ed1692addd5bce579d53c8505'
X# New ports collection makefile for: ffmpeg cvs
X# Date created: Sun May 1 20:46:59 UTC 2005
X# Whom: Mario Sergio Fujikawa Ferreira <lioux at FreeBSD.org>
X#
X# $FreeBSD: ports/multimedia/ffmpeg/Makefile,v 1.90 2008/09/07 03:31:58 ahze Exp $
X# $Id: Makefile 77 2008-07-27 21:50:37Z buhnux $
X
XPORTNAME= ffmpeg
XDISTVERSION= 2008-07-27
XPORTREVISION= 7
XCATEGORIES= multimedia audio ipv6 net
XMASTER_SITES= ${MASTER_SITE_LOCAL}
XMASTER_SITE_SUBDIR= ahze
X
XMAINTAINER= multimedia at FreeBSD.org
XCOMMENT= Hyper fast realtime audio/video encoder/converter, streaming server
X
XHAS_CONFIGURE= yes
XCONFIGURE_LOG= config.err
XUSE_BZIP2= yes
XUSE_GMAKE= yes
XWANT_SDL= yes
X
XOPTIONS= AMR_NB "AMR narrowband encoder" off \
X AMR_WB "AMR wideband encoder" off \
X FAAC "FAAC mp4/aac audio encoder" off \
X FAAD "FAAD mp4/aac audio decoder" on \
X GSM "gsm audio codec" off \
X IPV6 "IPV6 network support" on \
X LAME "lame MP3 codec" off \
X LIBA52 "liba52 support" on \
X OPTIMIZED_CFLAGS "Additional optimizations" off \
X SDL "SDL support (build ffplay)" off \
X THEORA "libtheora support (implies OGG)" on \
X VORBIS "libvorbisenc support (implies OGG)" on \
X X264 "X.264 codec" on \
X XVID "XVID codec" off \
X SCHROEDINGER "Schroedinger (a Dirac) codec" on
X
XCOMPAT_HEADERS= libavcodec/avcodec.h \
X libavcodec/opt.h \
X libavdevice/avdevice.h \
X libavformat/avformat.h \
X libavformat/avio.h \
X libavformat/rtsp.h \
X libavformat/rtspcodes.h \
X libavutil/adler32.h \
X libavutil/avstring.h \
X libavutil/avutil.h \
X libavutil/base64.h \
X libavutil/common.h \
X libavutil/crc.h \
X libavutil/fifo.h \
X libavutil/intfloat_readwrite.h \
X libavutil/log.h \
X libavutil/lzo.h \
X libavutil/mathematics.h \
X libavutil/md5.h \
X libavutil/mem.h \
X libavutil/random.h \
X libavutil/rational.h \
X libavutil/sha1.h \
X libpostproc/postprocess.h \
X libswscale/rgb2rgb.h \
X libswscale/swscale.h
X
X.include <bsd.port.pre.mk>
X
XCONFIGURE_ARGS+=--cc="${CC}" --prefix="${PREFIX}" \
X --disable-debug \
X --enable-memalign-hack \
X --enable-shared \
X --enable-postproc \
X --extra-cflags="${FFMPEG_CFLAGS} -I${LOCALBASE}/include" \
X --extra-ldflags="-L${LOCALBASE}/lib ${FFMPEG_LDFLAGS}" \
X --extra-libs="${PTHREAD_LIBS}" \
X --enable-gpl \
X --enable-pthreads \
X --enable-swscale \
X --mandir=${PREFIX}/man
XCONFIGURE_ENV+= LANG=C
XMAKE_ENV+= INSTALL="${INSTALL}"
XSHLIB_VER= 1
XPLIST_SUB= SHLIB_VER=${SHLIB_VER}
XUSE_LDCONFIG= yes
X
X##
XDOC_FILES= Changelog README
X# under subdir doc
XDOC_DOCFILES= TODO faq.html ffmpeg-doc.html \
X ffplay-doc.html ffserver-doc.html \
X hooks.html optimization.txt
XPORTDOCS= *
X
X## sse hardware vector support
X.if (defined(MACHINE_CPU) && ${MACHINE_CPU:Msse} == "sse")
XWITH_BUILTIN_VECTOR= yes
X.endif
X
X##
X## support activation
X##
X## PORTDOCS
X.ifndef(NOPORTDOCS)
XBUILD_DEPENDS+= texi2html:${PORTSDIR}/textproc/texi2html
XMAN1+= ffmpeg.1 ffserver.1
X.endif
X
X.ifdef(WITH_OPTIMIZED_CFLAGS)
XCFLAGS:= ${CFLAGS:N-O*} -O3 -ffast-math -fno-finite-math-only -fomit-frame-pointer
X.else
XCFLAGS:= ${CFLAGS:N-O0} -O2
XDEBUG_FLAGS+= -O2
X.endif
X
X## a52
X.if !defined(WITHOUT_LIBA52) && !defined(WITHOUT_A52)
XLIB_DEPENDS+= a52.0:${PORTSDIR}/audio/liba52
X
XCONFIGURE_ARGS+= --enable-liba52 \
X --enable-liba52bin
XFFMPEG_LDFLAGS+= -la52
X.else
XCONFIGURE_ARGS+= --disable-liba52
X.endif
X
X.ifdef(WITH_FAAC)
XLIB_DEPENDS+= faac.0:${PORTSDIR}/audio/faac
XCONFIGURE_ARGS+= --enable-libfaac
X.else
XCONFIGURE_ARGS+= --disable-libfaac
X.endif
X
X## faad
X.ifndef(WITHOUT_FAAD)
XLIB_DEPENDS+= faad.0:${PORTSDIR}/audio/faad
XCONFIGURE_ARGS+= --enable-libfaad \
X --enable-libfaadbin
X.else
XCONFIGURE_ARGS+= --disable-libfaad
X.endif
X
X## amr
X.ifdef(WITH_AMR_NB)
XLIB_DEPENDS+= amrnb.3:${PORTSDIR}/audio/libamrnb
XCONFIGURE_ARGS+= --enable-libamr-nb --enable-nonfree
X.else
XCONFIGURE_ARGS+= --disable-libamr-nb
X.endif
X
X.ifdef(WITH_AMR_WB)
XLIB_DEPENDS+= amrwb.3:${PORTSDIR}/audio/libamrwb
XCONFIGURE_ARGS+= --enable-libamr-wb --enable-nonfree
X.else
XCONFIGURE_ARGS+= --disable-libamr-wb
X.endif
X
XUSE_RC_SUBR= ffserver
X
X.if ${MACHINE_CPU:Mmmx}==""
XCONFIGURE_ARGS+= --disable-mmx
X
XWITHOUT_BUILTIN_VECTOR= yes
X.endif
X## gsm
X.ifdef(WITH_GSM)
XLIB_DEPENDS+= gsm.1:${PORTSDIR}/audio/gsm
X
XCONFIGURE_ARGS+= --enable-libgsm
X.else
XCONFIGURE_ARGS+= --disable-libgsm
X.endif
X## mp3
X.ifdef(WITH_LAME)
XLIB_DEPENDS+= mp3lame.0:${PORTSDIR}/audio/lame
XCONFIGURE_ARGS+= --enable-libmp3lame
X.else
XCONFIGURE_ARGS+= --disable-libmp3lame
X.endif
X
X## SDL
X.ifdef(WITH_SDL)
XUSE_SDL+= sdl
XPLIST_FILES+= bin/ffplay
X.if !defined(NOPORTDOCS)
XMAN1+= ffplay.1
X.endif
X.else
XCONFIGURE_ARGS+= --disable-ffplay
X.endif
X
X## theora
X.if !defined(WITHOUT_THEORA)
XLIB_DEPENDS+= theora.0:${PORTSDIR}/multimedia/libtheora
X
XCONFIGURE_ARGS+= --enable-libtheora
X.else
XCONFIGURE_ARGS+= --disable-libtheora
X.endif
X
X## vorbis
X.if !defined(WITHOUT_VORBIS)
XLIB_DEPENDS+= vorbisenc.2:${PORTSDIR}/audio/libvorbis
X
XCONFIGURE_ARGS+= --enable-libvorbis
XFFMPEG_CFLAGS+= -I${LOCALBASE}/include/vorbis
X.else
XCONFIGURE_ARGS+= --disable-libvorbis
X.endif
X
X# x264
X.ifndef(WITHOUT_X264)
XLIB_DEPENDS+= x264.50:${PORTSDIR}/multimedia/x264
X
XCONFIGURE_ARGS+= --enable-libx264
X.else
XCONFIGURE_ARGS+= --disable-libx264
X.endif
X## builtin vector, requires mmx
X.if !defined(WITHOUT_BUILTIN_VECTOR) && defined(WITH_BUILTIN_VECTOR)
XFFMPEG_CFLAGS+= -msse
X.endif
X
X## xvid
X.ifdef(WITH_XVID)
XLIB_DEPENDS+= xvidcore.4:${PORTSDIR}/multimedia/xvid
XCONFIGURE_ARGS+= --enable-libxvid
X.else
XCONFIGURE_ARGS+= --disable-libxvid
X.endif
X
X# schroedinger
X.ifndef(WITHOUT_SCHROEDINGER)
XLIB_DEPENDS+= schroedinger-1.0.1:${PORTSDIR}/multimedia/schroedinger
XCONFIGURE_ARGS+= --enable-libschroedinger
X.else
XCONFIGURE_ARGS+= --disable-libschroedinger
X.endif
X
Xpre-configure:
X.if defined(WITHOUT_OGG) && (!defined(WITHOUT_VORBIS) || !defined(WITHOUT_THEORA))
X @${ECHO_MSG} WITH_VORBIS or WITH_THEORA defined, libogg will be built
X.endif
X.if defined(WITHOUT_VHOOK) && (defined(WITH_VHOOK_FREETYPE2) || defined(WITH_VHOOK_IMLIB2))
X @${ECHO_MSG} WITH_VHOOK_FREETYPE2 or WITH_VHOOK_IMLIB2 defined, video hooks will be built
X.endif
X
Xpost-patch:
X# Faad compat
X @${REINPLACE_CMD} -e 's|faacD|NeAACD|' ${WRKSRC}/libavcodec/libfaad.c
X# {C,LD}FLAGS safeness
X# fix x264 math, use correct log base 2 from math(3)
X.if ${OSVERSION} <= 601000
X @${REINPLACE_CMD} -E \
X -e 's| log2| log|' \
X ${WRKSRC}/libavcodec/libx264.c
X.endif
X @${REINPLACE_CMD} -e 's|$$(libdir)/pkgconfig|${PREFIX}/libdata/pkgconfig|' \
X ${WRKSRC}/common.mak
X @${REINPLACE_CMD} -e 's|/etc/ffserver.conf|${PREFIX}/etc/ffserver.conf|' \
X ${WRKSRC}/ffserver.c
X @${REINPLACE_CMD} -E \
X -e "s|(EXTRALIBS[[:space:]]*=)|\1-L${LOCALBASE}/lib |g; \
X s|%%LOCALBASE%%|${LOCALBASE}|g; s|%%SHLIB_VER%%|${SHLIB_VER}|g; \
X s|-pthread|${PTHREAD_LIBS}|g" \
X ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
X# force detection of texi2html
X.ifndef(NOPORTDOCS)
X @${REINPLACE_CMD} -E \
X -e 's|^(texi2html=)no|\1yes|' \
X ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
X.endif
X @${REINPLACE_CMD} -e 's|-ldl||' \
X ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
X.if defined(WITH_IMLIB2) && !defined(WITHOUT_IMLIB2)
X @${REINPLACE_CMD} -E \
X -e 's|^(imlib2).*$$|\1=yes|' \
X ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
X.endif
X.if !defined(WITHOUT_IPV6)
X @${REINPLACE_CMD} -E \
X -e 's|^(ipv6).*$$|\1=yes|' \
X ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
X.endif
X.ifdef(WITH_SDL)
X @${REINPLACE_CMD} -E \
X -e 's|sdl-config|${SDL_CONFIG}|g' \
X ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
X @${FIND} ${WRKSRC} -type f | \
X ${XARGS} -n 10 ${REINPLACE_CMD} -E \
X -e 's|#include <SDL|#include <SDL/SDL|'
X.endif
X.if !defined(WITHOUT_BUILTIN_VECTOR) && defined(WITH_BUILTIN_VECTOR)
X @${REINPLACE_CMD} -E \
X -e 's|^([[:space:]]+builtin_vector).*$$|\1=yes|' \
X ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
X.else
X @${REINPLACE_CMD} -E \
X -e 's|^([[:space:]]+builtin_vector).*$$|\1=no|' \
X ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
X.endif
X @${REINPLACE_CMD} -e 's|$$(LIBDIR)/pkgconfig|${PREFIX}/libdata/pkgconfig|' \
X ${WRKSRC}/common.mak
X
Xpost-configure:
X.ifdef(WITHOUT_THEORA)
X @${REINPLACE_CMD} -E \
X -e 's|^(CONFIG_LIBTHEORA).*$$|\1=no|' \
X ${WRKSRC}/config.mak
X.endif
X
Xpost-install:
X ${INSTALL_DATA} ${WRKSRC}/doc/ffserver.conf ${PREFIX}/etc/ffserver.conf-dist
X if [ ! -f ${PREFIX}/etc/ffserver.conf ]; then \
X ${INSTALL_DATA} ${WRKSRC}/doc/ffserver.conf ${PREFIX}/etc; \
X fi
X.ifndef(NOPORTDOCS)
X ${MKDIR} ${DOCSDIR}
X.for FILE in ${DOC_FILES}
X ${INSTALL_DATA} ${WRKSRC}/${FILE} ${DOCSDIR}
X.endfor
X.for FILE in ${DOC_DOCFILES}
X ${INSTALL_DATA} ${WRKSRC}/doc/${FILE} ${DOCSDIR}
X.endfor
X.endif
X ${MKDIR} ${PREFIX}/include/ffmpeg
X.for FILE in ${COMPAT_HEADERS}
X ${CP} -f ${PREFIX}/include/${FILE} ${PREFIX}/include/ffmpeg/${FILE:C,^[^/]+/([^/]+).*,\1,}
X.endfor
X ${MKDIR} ${PREFIX}/include/postproc
X ${CP} -f ${PREFIX}/include/libpostproc/postprocess.h \
X ${PREFIX}/include/postproc/
X
X.include <bsd.port.post.mk>
5bd38e5ed1692addd5bce579d53c8505
exit
More information about the freebsd-multimedia
mailing list