Date: Tue, 20 Jan 2009 21:28:47 +0800 From: "Eric L. Chen" <d9364104@mail.nchu.edu.tw> To: Jarecki <jarecki@dwb.pl> Cc: multimedia@freebsd.org Subject: Re: x264 Message-ID: <a50d5a500901200528y6dcc50a4m6845be93fd69bf1d@mail.gmail.com> In-Reply-To: <8C8C5E98-87AE-4F1B-AECA-55AA16D85B34@dwb.pl> References: <5E28B965-E47E-49C3-AF16-4A395BACC2C6@dwb.pl> <a50d5a500901151850w5b85d9b0re19d02aacba73977@mail.gmail.com> <069E64E6-2510-4AA9-B94E-143DC4EE86C5@dwb.pl> <a50d5a500901191847i32b2fe6al6fa6b8797f773b41@mail.gmail.com> <8C8C5E98-87AE-4F1B-AECA-55AA16D85B34@dwb.pl>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --] On Tue, Jan 20, 2009 at 2:12 PM, Jarecki <jarecki@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@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 [-- Attachment #2 --] # 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@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@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@dirrm lib/vhook X@dirrm include/postproc X@dirrm include/libswscale X@dirrm include/libpostproc X@dirrm include/libavutil X@dirrm include/libavformat X@dirrm include/libavdevice X@dirrm include/libavcodec X@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@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@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 exithome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?a50d5a500901200528y6dcc50a4m6845be93fd69bf1d>
