aboutsummaryrefslogtreecommitdiffstats
path: root/multimedia
diff options
context:
space:
mode:
authorxmj <xmj@FreeBSD.org>2014-11-23 00:23:34 +0800
committerxmj <xmj@FreeBSD.org>2014-11-23 00:23:34 +0800
commit7ed6ffb0684e6f6b2941842f6f48af6384d96e6a (patch)
tree69858a5647bf444b8dbaae3a0602f21ce314cc16 /multimedia
parent3d249881a1fbea4311dce69fd794b3526df0f004 (diff)
downloadfreebsd-ports-gnome-7ed6ffb0684e6f6b2941842f6f48af6384d96e6a.tar.gz
freebsd-ports-gnome-7ed6ffb0684e6f6b2941842f6f48af6384d96e6a.tar.zst
freebsd-ports-gnome-7ed6ffb0684e6f6b2941842f6f48af6384d96e6a.zip
multimedia/x264: General overhaul
- Split x264 into two ports: the CLI application (x264), and the library (libx264). This will allow x264 to use lavf and friends from ffmpeg for decoding and demuxing while preventing a circular dependency between the two: x264 can depend on ffmpeg, but ffmpeg will depend on libx264 rather than x264. - Add the LAVF option to the CLI port, making the dependency on ffmpeg optional. - Update to 0.142.2455. - Amend fixes to local patches so that they can apply to the new upstream files. - Provide the git revision and other version information to the build environment, allowing the CLI binary to display this information (like the Windows builds). - Remove unsupported build options (X11_OUTPUT). - Ensure that the library and CLI ports each have the appropriate options. - Add notes for future contributors who wish to update the ports. - Bump PORTREVISION for all dependent ports. PR: 187805 Differential Revision: https://reviews.freebsd.org/D1159 Submitted by: Andrew Berg <aberg010@my.hennepintech.edu> Approved by: koobs (maintainer, mentor)
Diffstat (limited to 'multimedia')
-rw-r--r--multimedia/avidemux2/Makefile2
-rw-r--r--multimedia/avidemux2/Makefile.common4
-rw-r--r--multimedia/avidemux26/Makefile2
-rw-r--r--multimedia/avidemux26/Makefile.common2
-rw-r--r--multimedia/ffmpeg/Makefile4
-rw-r--r--multimedia/ffmpeg0/Makefile4
-rw-r--r--multimedia/ffmpeg24/Makefile4
-rw-r--r--multimedia/gstreamer-plugins-x264/Makefile2
-rw-r--r--multimedia/gstreamer-plugins/Makefile.common2
-rw-r--r--multimedia/gstreamer1-plugins-x264/Makefile2
-rw-r--r--multimedia/gstreamer1-plugins/Makefile.common2
-rw-r--r--multimedia/libav/Makefile4
-rw-r--r--multimedia/libquicktime/Makefile4
-rw-r--r--multimedia/libx264/Makefile107
-rw-r--r--multimedia/libx264/distinfo4
-rw-r--r--multimedia/libx264/files/patch-Makefile33
-rw-r--r--multimedia/libx264/files/patch-common_cpu.c29
-rw-r--r--multimedia/libx264/pkg-descr13
-rw-r--r--multimedia/libx264/pkg-plist (renamed from multimedia/x264/pkg-plist)2
-rw-r--r--multimedia/mpeg4ip/Makefile4
-rw-r--r--multimedia/mplayer/Makefile.optvars2
-rw-r--r--multimedia/transcode/Makefile4
-rw-r--r--multimedia/vlc/Makefile4
-rw-r--r--multimedia/x264/Makefile60
-rw-r--r--multimedia/x264/distinfo4
-rw-r--r--multimedia/x264/files/patch-Makefile17
26 files changed, 263 insertions, 58 deletions
diff --git a/multimedia/avidemux2/Makefile b/multimedia/avidemux2/Makefile
index 9af34d642371..0cbe7af94de9 100644
--- a/multimedia/avidemux2/Makefile
+++ b/multimedia/avidemux2/Makefile
@@ -3,7 +3,7 @@
PORTNAME= avidemux2
PORTVERSION= ${AVIDEMUX2_VERSION}
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= multimedia
MAINTAINER= multimedia@FreeBSD.org
diff --git a/multimedia/avidemux2/Makefile.common b/multimedia/avidemux2/Makefile.common
index 5107f4846170..8742b7cf70ad 100644
--- a/multimedia/avidemux2/Makefile.common
+++ b/multimedia/avidemux2/Makefile.common
@@ -2,7 +2,7 @@
#
AVIDEMUX2_VERSION= 2.5.6
-PORTREVISION= 5
+PORTREVISION= 6
MASTER_SITES= BERLIOS \
SF/avidemux/avidemux/${PORTVERSION}
DISTNAME= avidemux_${PORTVERSION}
@@ -175,7 +175,7 @@ PLIST_SUB+= FAAD="@comment "
.endif
.if ${PORT_OPTIONS:MX264}
-LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/x264
+LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/libx264
PLIST_SUB+= X264=""
.else
CMAKE_ARGS+= -DX264:BOOL=OFF
diff --git a/multimedia/avidemux26/Makefile b/multimedia/avidemux26/Makefile
index 2775c7ff58b9..3a34f5f6f33e 100644
--- a/multimedia/avidemux26/Makefile
+++ b/multimedia/avidemux26/Makefile
@@ -6,7 +6,7 @@
PORTNAME= avidemux26
PORTVERSION= ${AVIDEMUX2_VERSION}
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= multimedia
MAINTAINER= multimedia@FreeBSD.org
diff --git a/multimedia/avidemux26/Makefile.common b/multimedia/avidemux26/Makefile.common
index 6a2f135b01f8..29d7f30236c4 100644
--- a/multimedia/avidemux26/Makefile.common
+++ b/multimedia/avidemux26/Makefile.common
@@ -195,7 +195,7 @@ PLIST_SUB+= FAAD="@comment "
.endif
.if ${PORT_OPTIONS:MX264}
-LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/x264
+LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/libx264
PLIST_SUB+= X264=""
.else
CMAKE_ARGS+= -DX264:BOOL=OFF
diff --git a/multimedia/ffmpeg/Makefile b/multimedia/ffmpeg/Makefile
index 4e70d37c2e99..36b59dab111c 100644
--- a/multimedia/ffmpeg/Makefile
+++ b/multimedia/ffmpeg/Makefile
@@ -3,7 +3,7 @@
PORTNAME= ffmpeg
PORTVERSION= 2.3.5
-PORTREVISION= 1
+PORTREVISION= 2
PORTEPOCH= 1
CATEGORIES= multimedia audio ipv6 net
MASTER_SITES= http://ffmpeg.org/releases/
@@ -198,7 +198,7 @@ VPX_LIB_DEPENDS= libvpx.so:${PORTSDIR}/multimedia/libvpx
VPX_CONFIGURE_ENABLE= libvpx
# x264
-X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/x264
+X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264
X264_CONFIGURE_ENABLE= libx264
# x265
diff --git a/multimedia/ffmpeg0/Makefile b/multimedia/ffmpeg0/Makefile
index 0295b7c1473b..d17bb26500e5 100644
--- a/multimedia/ffmpeg0/Makefile
+++ b/multimedia/ffmpeg0/Makefile
@@ -3,7 +3,7 @@
PORTNAME= ffmpeg
PORTVERSION= 0.7.16
-PORTREVISION= 2
+PORTREVISION= 3
PORTEPOCH= 1
CATEGORIES= multimedia audio ipv6 net
MASTER_SITES= http://ffmpeg.org/releases/
@@ -370,7 +370,7 @@ CONFIGURE_ARGS+= --disable-libvpx
# x264
.if ${PORT_OPTIONS:MX264}
-LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/x264
+LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/libx264
CONFIGURE_ARGS+= --enable-libx264
.else
CONFIGURE_ARGS+= --disable-libx264
diff --git a/multimedia/ffmpeg24/Makefile b/multimedia/ffmpeg24/Makefile
index 219c63a76ec5..1dd72248e61e 100644
--- a/multimedia/ffmpeg24/Makefile
+++ b/multimedia/ffmpeg24/Makefile
@@ -3,7 +3,7 @@
PORTNAME= ffmpeg
PORTVERSION= 2.4.3
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= multimedia audio ipv6 net
MASTER_SITES= http://ffmpeg.org/releases/
PKGNAMESUFFIX= 24
@@ -205,7 +205,7 @@ VPX_LIB_DEPENDS= libvpx.so:${PORTSDIR}/multimedia/libvpx
VPX_CONFIGURE_ENABLE= libvpx
# x264
-X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/x264
+X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264
X264_CONFIGURE_ENABLE= libx264
# x265
diff --git a/multimedia/gstreamer-plugins-x264/Makefile b/multimedia/gstreamer-plugins-x264/Makefile
index 5f9c557c0eb9..bcb2d8919cae 100644
--- a/multimedia/gstreamer-plugins-x264/Makefile
+++ b/multimedia/gstreamer-plugins-x264/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
# $MCom: ports/multimedia/gstreamer-plugins-x264/Makefile,v 1.3 2008/03/19 14:05:37 ahze Exp $
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= multimedia
COMMENT= Gstreamer x264 plugin
diff --git a/multimedia/gstreamer-plugins/Makefile.common b/multimedia/gstreamer-plugins/Makefile.common
index 40519e25f3fa..ed53d12d9312 100644
--- a/multimedia/gstreamer-plugins/Makefile.common
+++ b/multimedia/gstreamer-plugins/Makefile.common
@@ -584,7 +584,7 @@ gst_vp8_PLIST_FILES= ${GST_LIB_DIR}/libgstvp8.la \
gst_vp8_DIST= bad
# x264
-gst_x264_LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/x264
+gst_x264_LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/libx264
gst_x264_PLIST_FILES= ${GST_LIB_DIR}/libgstx264.la \
${GST_LIB_DIR}/libgstx264.so \
share/gstreamer-${VERSION}/presets/GstX264Enc.prs
diff --git a/multimedia/gstreamer1-plugins-x264/Makefile b/multimedia/gstreamer1-plugins-x264/Makefile
index 66ac4f231644..bbdf10e0afcc 100644
--- a/multimedia/gstreamer1-plugins-x264/Makefile
+++ b/multimedia/gstreamer1-plugins-x264/Makefile
@@ -1,6 +1,6 @@
# $FreeBSD$
-PORTREVISION= 0
+PORTREVISION= 1
CATEGORIES= multimedia
COMMENT= Gstreamer x264 plugin
diff --git a/multimedia/gstreamer1-plugins/Makefile.common b/multimedia/gstreamer1-plugins/Makefile.common
index 69744a835c0a..53d2e3ed0827 100644
--- a/multimedia/gstreamer1-plugins/Makefile.common
+++ b/multimedia/gstreamer1-plugins/Makefile.common
@@ -423,7 +423,7 @@ gst_x_PLIST_FILES= ${GST_LIB_DIR}/libgstximagesrc.la \
.endif
# x264
-gst_x264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/x264
+gst_x264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264
gst_x264_PLIST_FILES= ${GST_LIB_DIR}/libgstx264.la \
${GST_LIB_DIR}/libgstx264.so \
share/gstreamer-${VERSION}/presets/GstX264Enc.prs
diff --git a/multimedia/libav/Makefile b/multimedia/libav/Makefile
index 5d14bb17ad1d..28645b6323da 100644
--- a/multimedia/libav/Makefile
+++ b/multimedia/libav/Makefile
@@ -2,7 +2,7 @@
PORTNAME= libav
PORTVERSION= 10.2
-PORTREVISION= 4
+PORTREVISION= 5
CATEGORIES= multimedia audio ipv6 net
MASTER_SITES= http://libav.org/releases/
@@ -146,7 +146,7 @@ WEBP_CONFIGURE_ENABLE= libwebp
X11GRAB_USE= XORG=x11,xext,xfixes
-X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/x264
+X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264
X264_CONFIGURE_ENABLE= libx264
XVID_LIB_DEPENDS= libxvidcore.so:${PORTSDIR}/multimedia/xvid
diff --git a/multimedia/libquicktime/Makefile b/multimedia/libquicktime/Makefile
index f827b38bf252..700ce6de4ceb 100644
--- a/multimedia/libquicktime/Makefile
+++ b/multimedia/libquicktime/Makefile
@@ -3,7 +3,7 @@
PORTNAME= libquicktime
PORTVERSION= 1.2.4
-PORTREVISION?= 7
+PORTREVISION?= 8
CATEGORIES= multimedia
MASTER_SITES= SF
@@ -112,7 +112,7 @@ CONFIGURE_ARGS+= --without-faad2
.endif
.if ${PORT_OPTIONS:MX264}
-LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/x264
+LIB_DEPENDS+= libx264.so:${PORTSDIR}/multimedia/libx264
CONFIGURE_ARGS+= --with-x264
.else
CONFIGURE_ARGS+= --without-x264
diff --git a/multimedia/libx264/Makefile b/multimedia/libx264/Makefile
new file mode 100644
index 000000000000..e8baf7b9ccfb
--- /dev/null
+++ b/multimedia/libx264/Makefile
@@ -0,0 +1,107 @@
+# Created by: Michael Johnson <ahze@FreeBSD.org>
+# $FreeBSD$
+#
+# Updating notes: see multimedia/x264/Makefile.
+
+PORTNAME= libx264
+PORTVERSION= 0.${X264_BUILD}.${X264_REV}
+CATEGORIES= multimedia
+MASTER_SITES= ftp://ftp.videolan.org/pub/videolan/x264/snapshots/ \
+ http://samples.mplayerhq.hu/yuv4mpeg2/:pgo
+DISTNAME= x264-snapshot-${X264_SNAPSHOT}-2245-stable
+DISTFILES= ${DISTNAME}${EXTRACT_SUFX}
+DIST_SUBDIR= libx264
+EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
+
+MAINTAINER= koobs@FreeBSD.org
+COMMENT= Library and tool for encoding H.264/AVC video streams
+
+LICENSE= GPLv2
+
+BUILD_DEPENDS= yasm>=0.6.0:${PORTSDIR}/devel/yasm \
+ ${LOCALBASE}/bin/bash:${PORTSDIR}/shells/bash
+
+X264_BUILD= 142
+X264_REV= 2455
+X264_COMMIT= 021c0dc6c95c1bc239c9db78a80dd85fc856a4dd
+X264_GITVER= ${X264_COMMIT:C/^(.......).*$/\1/g}
+X264_SNAPSHOT= 20140827
+
+USES= gmake tar:bzip2
+WRKSRC= ${WRKDIR}/${DISTNAME}
+USE_LDCONFIG= yes
+HAS_CONFIGURE= yes
+
+OPTIONS_DEFINE= ASM DEBUG HI10P GCC
+OPTIONS_DEFAULT= ASM
+ASM_DESC= Enable Assembly Optimizations
+DEBUG_DESC= Generate Debugging Symbols
+GCC_DESC= Use current GCC
+HI10P_DESC= Enable High 10 Profile 10-bit encoding
+
+CONFIGURE_ARGS+= --extra-cflags="-I${LOCALBASE}/include" \
+ --extra-ldflags="-L${LOCALBASE}/lib" \
+ --enable-static --enable-shared \
+ --disable-opencl \
+ --disable-cli
+
+PLIST_SUB+= X264_BUILD=${X264_BUILD}
+
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MGCC}
+USE_GCC= yes
+.endif
+
+.if !${PORT_OPTIONS:MASM}
+CONFIGURE_ARGS+= --disable-asm
+.endif
+
+.if ${PORT_OPTIONS:MHI10P}
+CONFIGURE_ARGS+= --bit-depth=10
+.endif
+
+.if ${PORT_OPTIONS:MDEBUG} || defined(WITH_DEBUG)
+CONFIGURE_ARGS+= --enable-debug
+.endif
+
+# Around the time GCC stack protection (aka Propolice) for userland
+# was enabled on src/share/mk/bsd.sys.mk
+# SVN rev 180012 on 2008-06-25 21:33:28Z by ru
+.if ${OSVERSION} >= 800040
+LDFLAGS+= -fstack-protector
+.endif
+
+.if ${PORT_OPTIONS:MPGO}
+# y4m sample video
+Y4M_VIDEO=example.y4m
+Y4M_VIDEO_DISTFILE=example.y4m.bz2
+
+DISTFILES+= ${Y4M_VIDEO_DISTFILE}:pgo
+ALL_TARGET= fprofiled
+MAKE_ENV+= VIDS="${WRKDIR}/${Y4M_VIDEO}"
+
+RESTRICTED= ${Y4M_VIDEO_DISTFILE} file may not be mirrored
+RESTRICTED_FILES= ${Y4M_VIDEO_DISTFILE}
+.endif
+
+post-extract:
+.if ${PORT_OPTIONS:MPGO}
+ @( cd ${WRKDIR} && ${BZIP2_CMD} -dc ${DISTDIR}/${DIST_SUBDIR}/${Y4M_VIDEO_DISTFILE} > ${Y4M_VIDEO} )
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e 's|/usr/local|${PREFIX}|; \
+ s|-lpthread|${PTHREAD_LIBS}|g; \
+ s|/bin/bash|${LOCALBASE}/bin/bash|; \
+ s|gpac_static|gpac|g' \
+ ${WRKSRC}/configure
+ @${REINPLACE_CMD} -e 's|bash|sh|; \
+ s|VER="x"|VER="${X264_REV} ${X264_GITVER}"|; \
+ s|VERSION=""|VERSION=" r${X264_REV} ${X264_GITVER}"|' \
+ ${WRKSRC}/version.sh
+ @${REINPLACE_CMD} -e 's|$$(libdir)/pkgconfig|${PREFIX}/libdata/pkgconfig|; \
+ s|$${libdir}/pkgconfig|${PREFIX}/libdata/pkgconfig|' \
+ ${WRKSRC}/Makefile
+
+.include <bsd.port.mk>
diff --git a/multimedia/libx264/distinfo b/multimedia/libx264/distinfo
new file mode 100644
index 000000000000..a8c202a07b68
--- /dev/null
+++ b/multimedia/libx264/distinfo
@@ -0,0 +1,4 @@
+SHA256 (libx264/x264-snapshot-20140827-2245-stable.tar.bz2) = fb1de3f802a83778527d45e69b552efa73b677ebb3ac633a8720923e71ffc5e3
+SIZE (libx264/x264-snapshot-20140827-2245-stable.tar.bz2) = 624939
+SHA256 (libx264/example.y4m.bz2) = a5bec9d37362bd9d7773fbd0644643f9ec096d654d20823004e88d5df32bbff7
+SIZE (libx264/example.y4m.bz2) = 4910029
diff --git a/multimedia/libx264/files/patch-Makefile b/multimedia/libx264/files/patch-Makefile
new file mode 100644
index 000000000000..6d5646214e2c
--- /dev/null
+++ b/multimedia/libx264/files/patch-Makefile
@@ -0,0 +1,33 @@
+--- Makefile.orig 2014-08-27 15:45:08.000000000 -0500
++++ Makefile 2014-10-21 16:18:59.299348000 -0500
+@@ -85,12 +85,12 @@
+ endif
+ X86SRC = $(X86SRC0:%=common/x86/%)
+
+-ifeq ($(ARCH),X86)
++ifeq ($(ARCH),i386)
+ ARCH_X86 = yes
+ ASMSRC = $(X86SRC) common/x86/pixel-32.asm
+ endif
+
+-ifeq ($(ARCH),X86_64)
++ifeq ($(ARCH),amd64)
+ ARCH_X86 = yes
+ ASMSRC = $(X86SRC:-32.asm=-64.asm) common/x86/trellis-64.asm
+ endif
+@@ -104,7 +104,14 @@
+ endif
+
+ # AltiVec optims
+-ifeq ($(ARCH),PPC)
++ifeq ($(ARCH),powerpc)
++ARCH_PPC = yes
++endif
++ifeq ($(ARCH),powerpc64)
++ARCH_PPC = yes
++endif
++
++ifdef ARCH_PPC
+ ifneq ($(AS),)
+ SRCS += common/ppc/mc.c common/ppc/pixel.c common/ppc/dct.c \
+ common/ppc/quant.c common/ppc/deblock.c \
diff --git a/multimedia/libx264/files/patch-common_cpu.c b/multimedia/libx264/files/patch-common_cpu.c
new file mode 100644
index 000000000000..b1c529d67055
--- /dev/null
+++ b/multimedia/libx264/files/patch-common_cpu.c
@@ -0,0 +1,29 @@
+--- common/cpu.c.orig 2010-06-24 22:45:07.000000000 +0200
++++ common/cpu.c 2010-07-18 22:55:49.324572565 +0200
+@@ -234,7 +234,7 @@
+
+ #elif ARCH_PPC
+
+-#if SYS_MACOSX || SYS_OPENBSD
++#if SYS_MACOSX || SYS_OPENBSD || SYS_FREEBSD
+ #include <sys/sysctl.h>
+ uint32_t x264_cpu_detect( void )
+ {
+@@ -242,12 +242,16 @@
+ uint32_t cpu = 0;
+ #if SYS_OPENBSD
+ int selectors[2] = { CTL_MACHDEP, CPU_ALTIVEC };
+-#else
++#elif SYS_MACOSX
+ int selectors[2] = { CTL_HW, HW_VECTORUNIT };
+ #endif
+ int has_altivec = 0;
+ size_t length = sizeof( has_altivec );
++#if SYS_MACOSX || SYS_OPENBSD
+ int error = sysctl( selectors, 2, &has_altivec, &length, NULL, 0 );
++#else
++ int error = sysctlbyname("hw.altivec", &has_altivec, &length, NULL, 0 );
++#endif
+
+ if( error == 0 && has_altivec != 0 )
+ cpu |= X264_CPU_ALTIVEC;
diff --git a/multimedia/libx264/pkg-descr b/multimedia/libx264/pkg-descr
new file mode 100644
index 000000000000..ebadb26dcee2
--- /dev/null
+++ b/multimedia/libx264/pkg-descr
@@ -0,0 +1,13 @@
+x264 is a free library for encoding H.264/AVC (aka MPEG-4 Part 10)
+video streams.
+
+Encoder features
+ * CAVLC/CABAC
+ * Multi-references
+ * Intra: all modes (4x4 and 16x16 with all predictions)
+ * Inter P: all partitions (from 16x16 down to 4x4)
+ * Inter B: partitions from 16x16 down to 8x8 (including SKIP/DIRECT)
+ * Ratecontrol: constant quantizer, constant bitrate, or multipass ABR
+ * Scene cut detection
+
+WWW: http://www.videolan.org/x264.html
diff --git a/multimedia/x264/pkg-plist b/multimedia/libx264/pkg-plist
index 7bedc90a6bc6..cee118b2477b 100644
--- a/multimedia/x264/pkg-plist
+++ b/multimedia/libx264/pkg-plist
@@ -1,7 +1,7 @@
-bin/x264
include/x264.h
include/x264_config.h
lib/libx264.a
lib/libx264.so
lib/libx264.so.%%X264_BUILD%%
+@dir libdata/pkgconfig
libdata/pkgconfig/x264.pc
diff --git a/multimedia/mpeg4ip/Makefile b/multimedia/mpeg4ip/Makefile
index 5dd88cb42f14..d7c5af68545b 100644
--- a/multimedia/mpeg4ip/Makefile
+++ b/multimedia/mpeg4ip/Makefile
@@ -3,7 +3,7 @@
PORTNAME= mpeg4ip
PORTVERSION= 1.6.1
-PORTREVISION= 30
+PORTREVISION= 31
CATEGORIES= multimedia audio ipv6 net
MASTER_SITES= LOCAL/ahze
# http://sourceforge.net/forum/forum.php?thread_id=1839453&forum_id=59136
@@ -22,7 +22,7 @@ LIB_DEPENDS= libfaac.so:${PORTSDIR}/audio/faac \
liba52.so:${PORTSDIR}/audio/liba52 \
libmpeg2.so:${PORTSDIR}/multimedia/libmpeg2 \
libavcodec0.so:${PORTSDIR}/multimedia/ffmpeg0 \
- libx264.so:${PORTSDIR}/multimedia/x264
+ libx264.so:${PORTSDIR}/multimedia/libx264
RUN_DEPENDS= mp4v2>=1.9.1:${PORTSDIR}/multimedia/mp4v2
USE_GNOME= gtk20
diff --git a/multimedia/mplayer/Makefile.optvars b/multimedia/mplayer/Makefile.optvars
index a29fc0567bbe..47c5d0329902 100644
--- a/multimedia/mplayer/Makefile.optvars
+++ b/multimedia/mplayer/Makefile.optvars
@@ -106,7 +106,7 @@ VDPAU_CONFIGURE_OFF= --disable-vdpau
VPX_LIB_DEPENDS= libvpx.so:${PORTSDIR}/multimedia/libvpx
VPX_CONFIGURE_OFF= --disable-libvpx-lavc
-X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/x264
+X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264
X264_CONFIGURE_OFF= --disable-x264
XVID_LIB_DEPENDS= libxvidcore.so:${PORTSDIR}/multimedia/xvid
diff --git a/multimedia/transcode/Makefile b/multimedia/transcode/Makefile
index 1eac9aafcfeb..ca08e8dfe151 100644
--- a/multimedia/transcode/Makefile
+++ b/multimedia/transcode/Makefile
@@ -3,7 +3,7 @@
PORTNAME= transcode
PORTVERSION= 1.1.7
-PORTREVISION= 18
+PORTREVISION= 19
CATEGORIES= multimedia
MASTER_SITES= http://cdn.bitbucket.org/france/transcode-tcforge/downloads/
@@ -56,7 +56,7 @@ XVID_LIB_DEPENDS= libxvidcore.so:${PORTSDIR}/multimedia/xvid
XVID_CONFIGURE_ENABLE= xvid
XVID_CONFIGURE_ON= --with-xvid-prefix=${LOCALBASE}
-X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/x264
+X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264
X264_CONFIGURE_ENABLE= x264
OGG_LIB_DEPENDS= libogg.so:${PORTSDIR}/audio/libogg
diff --git a/multimedia/vlc/Makefile b/multimedia/vlc/Makefile
index 3601bf70326c..c896f7e4c909 100644
--- a/multimedia/vlc/Makefile
+++ b/multimedia/vlc/Makefile
@@ -3,7 +3,7 @@
PORTNAME= vlc
DISTVERSION= 2.1.5
-PORTREVISION= 9
+PORTREVISION= 10
PORTEPOCH= 4
CATEGORIES= multimedia audio ipv6 net www
MASTER_SITES= http://download.videolan.org/pub/videolan/${PORTNAME}/${DISTVERSION:S/a$//}/ \
@@ -291,7 +291,7 @@ X11_LIB_DEPENDS= libxcb-keysyms.so:${PORTSDIR}/x11/xcb-util-keysyms
X11_CONFIGURE_ENABLE= glx xcb xvideo
X11_CONFIGURE_WITH= x
-X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/x264
+X264_LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264
X264_CONFIGURE_ENABLE= x264
ZVBI_LIB_DEPENDS= libzvbi.so:${PORTSDIR}/devel/libzvbi
diff --git a/multimedia/x264/Makefile b/multimedia/x264/Makefile
index 5bce27c1d575..39e6903c5f28 100644
--- a/multimedia/x264/Makefile
+++ b/multimedia/x264/Makefile
@@ -1,9 +1,24 @@
# Created by: Michael Johnson <ahze@FreeBSD.org>
# $FreeBSD$
+#
+# Updating notes:
+# We use the nightly tarballs for the *stable* branch of the git repo.
+# X264_BUILD is the "core" number, and can always be found in x264.h.
+# X264_COMMIT is the commit number, and can be found here:
+# http://git.videolan.org/?p=x264.git;a=shortlog;h=refs/heads/stable
+# To get X264_REV, you must checkout the git revision for the version to
+# which you wish to update, and then run version.sh against it.
+# Don't forget to update these for multimedia/libx264 as well:
+# X264_BUILD, X264_REV, X264_COMMIT, X264_SNAPSHOT
+#
+# distinfo for this port and libx264 should always be *identical*.
+#
+# Bumping PORTREVISION for dependent ports? This is useful:
+# cd $PORTSDIR; for x in $(find . -name "Makefile*" -print);
+# do str=$(grep -i x264.so $x); if [[ -n $str ]] { echo "$x" }; done
PORTNAME= x264
PORTVERSION= 0.${X264_BUILD}.${X264_REV}
-PORTREVISION= 4
CATEGORIES= multimedia
MASTER_SITES= ftp://ftp.videolan.org/pub/videolan/x264/snapshots/ \
http://samples.mplayerhq.hu/yuv4mpeg2/:pgo
@@ -13,39 +28,41 @@ DIST_SUBDIR= x264
EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
MAINTAINER= koobs@FreeBSD.org
-COMMENT= Library and tool for encoding H.264/AVC video streams
+COMMENT= Tool for encoding H.264/AVC video streams
LICENSE= GPLv2
BUILD_DEPENDS= yasm>=0.6.0:${PORTSDIR}/devel/yasm \
${LOCALBASE}/bin/bash:${PORTSDIR}/shells/bash
+LIB_DEPENDS= libx264.so:${PORTSDIR}/multimedia/libx264
-X264_BUILD= 136
-X264_REV= 2358
-X264_COMMIT= 3361d59a0a83dcb8b321cc0eb8e6ba68ca49c7d4
+X264_BUILD= 142
+X264_REV= 2455
+X264_COMMIT= 021c0dc6c95c1bc239c9db78a80dd85fc856a4dd
X264_GITVER= ${X264_COMMIT:C/^(.......).*$/\1/g}
-X264_SNAPSHOT= 20130827
+X264_SNAPSHOT= 20140827
-USES= gmake tar:bzip2
+USES= gmake tar:bzip2 pkgconfig
WRKSRC= ${WRKDIR}/${DISTNAME}
USE_LDCONFIG= yes
HAS_CONFIGURE= yes
-OPTIONS_DEFINE= ASM DEBUG HI10P PGO GCC GPAC X11_OUTPUT
+OPTIONS_DEFINE= ASM DEBUG PGO GCC GPAC LAVF
OPTIONS_DEFAULT= ASM GPAC
ASM_DESC= Enable Assembly Optimizations
+DEBUG_DESC= Generate Debugging Symbols
+PGO_DESC= Use Profile-Guided Optimization
GCC_DESC= Use current GCC
-HI10P_DESC= Enable High 10 Profile 10-bit encoding
GPAC_DESC= Enable MPEG-4 Output
-X11_OUTPUT_DESC= Enable X11 Output
+LAVF_DESC= Enable libav* format input/output support (requires ffmpeg)
CONFIGURE_ARGS+= --extra-cflags="-I${LOCALBASE}/include" \
--extra-ldflags="-L${LOCALBASE}/lib" \
- --enable-static --enable-shared \
--disable-opencl \
- --disable-swscale
+ --system-libx264
PLIST_SUB+= X264_BUILD=${X264_BUILD}
+PLIST_FILES= bin/x264
.include <bsd.port.options.mk>
@@ -59,10 +76,6 @@ USE_GCC= any
CONFIGURE_ARGS+= --disable-asm
.endif
-.if ${PORT_OPTIONS:MHI10P}
-CONFIGURE_ARGS+= --bit-depth=10
-.endif
-
.if ${PORT_OPTIONS:MDEBUG} || defined(WITH_DEBUG)
CONFIGURE_ARGS+= --enable-debug
.endif
@@ -93,9 +106,13 @@ LIB_DEPENDS+= libgpac.so:${PORTSDIR}/multimedia/gpac-libgpac
CONFIGURE_ARGS+= --disable-gpac
.endif
-.if ${PORT_OPTIONS:MX11_OUTPUT}
-CONFIGURE_ARGS+= --enable-visualize
-USE_XORG= x11
+.if ${PORT_OPTIONS:MLAVF}
+LIB_DEPENDS+= libavcodec.so:${PORTSDIR}/multimedia/ffmpeg
+LIB_DEPENDS+= libavformat.so:${PORTSDIR}/multimedia/ffmpeg
+LIB_DEPENDS+= libavutil.so:${PORTSDIR}/multimedia/ffmpeg
+LIB_DEPENDS+= libswscale.so:${PORTSDIR}/multimedia/ffmpeg
+.else
+CONFIGURE_ARGS+= --disable-swscale --disable-lavf
.endif
post-extract:
@@ -109,7 +126,10 @@ post-patch:
s|/bin/bash|${LOCALBASE}/bin/bash|; \
s|gpac_static|gpac|g' \
${WRKSRC}/configure
- @${REINPLACE_CMD} -e 's|bash|sh|' ${WRKSRC}/version.sh
+ @${REINPLACE_CMD} -e 's|bash|sh|; \
+ s|VER="x"|VER="${X264_REV} ${X264_GITVER}"|; \
+ s|VERSION=""|VERSION=" r${X264_REV} ${X264_GITVER}"|' \
+ ${WRKSRC}/version.sh
@${REINPLACE_CMD} -e 's|$$(libdir)/pkgconfig|${PREFIX}/libdata/pkgconfig|; \
s|$${libdir}/pkgconfig|${PREFIX}/libdata/pkgconfig|' \
${WRKSRC}/Makefile
diff --git a/multimedia/x264/distinfo b/multimedia/x264/distinfo
index 1843312f62ed..304371397ce8 100644
--- a/multimedia/x264/distinfo
+++ b/multimedia/x264/distinfo
@@ -1,4 +1,4 @@
-SHA256 (x264/x264-snapshot-20130827-2245-stable.tar.bz2) = 5e418d6bb0fa8aebd503f7c6298ef0ee007ae8f066811d5427c28edc4a0304ef
-SIZE (x264/x264-snapshot-20130827-2245-stable.tar.bz2) = 619606
+SHA256 (x264/x264-snapshot-20140827-2245-stable.tar.bz2) = fb1de3f802a83778527d45e69b552efa73b677ebb3ac633a8720923e71ffc5e3
+SIZE (x264/x264-snapshot-20140827-2245-stable.tar.bz2) = 624939
SHA256 (x264/example.y4m.bz2) = a5bec9d37362bd9d7773fbd0644643f9ec096d654d20823004e88d5df32bbff7
SIZE (x264/example.y4m.bz2) = 4910029
diff --git a/multimedia/x264/files/patch-Makefile b/multimedia/x264/files/patch-Makefile
index cca5b3e448ea..6d5646214e2c 100644
--- a/multimedia/x264/files/patch-Makefile
+++ b/multimedia/x264/files/patch-Makefile
@@ -1,24 +1,23 @@
---- Makefile.orig 2013-08-27 22:45:07.000000000 +0200
-+++ Makefile 2014-02-04 20:59:54.000000000 +0100
-@@ -86,13 +86,13 @@
+--- Makefile.orig 2014-08-27 15:45:08.000000000 -0500
++++ Makefile 2014-10-21 16:18:59.299348000 -0500
+@@ -85,12 +85,12 @@
endif
X86SRC = $(X86SRC0:%=common/x86/%)
-
+
-ifeq ($(ARCH),X86)
+ifeq ($(ARCH),i386)
ARCH_X86 = yes
ASMSRC = $(X86SRC) common/x86/pixel-32.asm
- ASFLAGS += -DARCH_X86_64=0
endif
-
+
-ifeq ($(ARCH),X86_64)
+ifeq ($(ARCH),amd64)
ARCH_X86 = yes
ASMSRC = $(X86SRC:-32.asm=-64.asm) common/x86/trellis-64.asm
- ASFLAGS += -DARCH_X86_64=1
-@@ -108,7 +108,14 @@
endif
-
+@@ -104,7 +104,14 @@
+ endif
+
# AltiVec optims
-ifeq ($(ARCH),PPC)
+ifeq ($(ARCH),powerpc)