Browse Source

add h264 encoding/decoding support

Waldemar Brodkorb 10 years ago
parent
commit
227b3315e3

+ 12 - 2
package/ffmpeg/Makefile

@@ -5,7 +5,7 @@ include ${TOPDIR}/rules.mk
 
 PKG_NAME:=		ffmpeg
 PKG_VERSION:=		2.0.1
-PKG_RELEASE:=		1
+PKG_RELEASE:=		2
 PKG_MD5SUM:=		dd71a1baedb2daa3e4d21e0651daa918
 PKG_DESCR:=		record, convert and stream audio & video
 PKG_SECTION:=		libs
@@ -31,7 +31,14 @@ PKGSC_FFPROBE:=		multimedia
 PKGSS_FFPROBE:=		libffmpeg
 
 PKG_FLAVOURS_LIBFFMPEG:=	WITH_AAC WITH_MP3 WITH_VP8 WITH_THEORA
-PKG_FLAVOURS_LIBFFMPEG+=	WITH_XVID WITH_VORBIS
+PKG_FLAVOURS_LIBFFMPEG+=	WITH_XVID WITH_VORBIS WITH_X264
+
+PKGFD_WITH_X264:=	with X264 decoding support
+PKGFS_WITH_X264:=	libx264
+PKGFB_WITH_X264:=	libx264
+ifeq ($(ADK_PACKAGE_LIBFFMPEG_WITH_X264),y)
+PKG_FDEPENDS+=		libx264
+endif
 
 PKGFD_WITH_AAC:=	with AAC encoding support
 PKGFS_WITH_AAC:=	libfaac
@@ -130,6 +137,9 @@ CONFIGURE_ARGS:=	--prefix=/usr \
 			--enable-postproc \
 			${CONFIGURE_CPU_OPTS}
 
+ifeq ($(ADK_PACKAGE_LIBFFMPEG_WITH_X264),y)
+CONFIGURE_ARGS+=	--enable-libx264
+endif
 ifeq ($(ADK_PACKAGE_LIBFFMPEG_WITH_AAC),y)
 CONFIGURE_ARGS+=	--enable-libfaac
 endif

+ 27 - 0
package/libx264/Makefile

@@ -0,0 +1,27 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=		libx264
+# actually is snapshot x264-snapshot-20131010-2245
+PKG_VERSION:=		1.0
+PKG_RELEASE:=		1
+PKG_MD5SUM:=		e6718029b4bc955f1dbb9bdafeed3ac0
+PKG_DESCR:=		H264 encoding library
+PKG_SECTION:=		libs
+PKG_URL:=		http://www.videolan.org/developers/x264.html
+PKG_SITES:=		http://openadk.org/distfiles/
+
+include $(TOPDIR)/mk/package.mk
+
+$(eval $(call PKG_template,LIBX264,libx264,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+
+CONFIGURE_ARGS+=	--disable-cli
+
+libx264-install:
+	$(INSTALL_DIR) $(IDIR_LIBX264)/usr/lib
+	$(CP) $(WRKINST)/usr/lib/libx264*.so* \
+		$(IDIR_LIBX264)/usr/lib
+
+include ${TOPDIR}/mk/pkg-bottom.mk

+ 23 - 0
package/libx264/patches/patch-configure

@@ -0,0 +1,23 @@
+--- libx264-1.0.orig/configure	2013-10-10 22:45:04.000000000 +0200
++++ libx264-1.0/configure	2013-10-11 11:33:39.000000000 +0200
+@@ -985,9 +985,9 @@ if [ "$debug" = "yes" ]; then
+ elif [ $ARCH = ARM ]; then
+     # arm-gcc-4.2 produces incorrect output with -ffast-math
+     # and it doesn't save any speed anyway on 4.4, so disable it
+-    CFLAGS="-O3 -fno-fast-math $CFLAGS"
++    CFLAGS="-fno-fast-math $CFLAGS"
+ else
+-    CFLAGS="-O3 -ffast-math $CFLAGS"
++    CFLAGS="-ffast-math $CFLAGS"
+ fi
+ 
+ if cc_check '' -fno-tree-vectorize ; then
+@@ -1136,7 +1136,7 @@ LIBX264=$LIBX264
+ AR=$AR
+ RANLIB=$RANLIB
+ STRIP=$STRIP
+-AS=$AS
++AS=$CC
+ ASFLAGS=$ASFLAGS
+ RC=$RC
+ RCFLAGS=$RCFLAGS

+ 11 - 0
package/libx264/patches/patch-configure.orig

@@ -0,0 +1,11 @@
+--- libx264-1.0.orig/configure	2013-10-10 22:45:04.000000000 +0200
++++ libx264-1.0/configure	2013-10-11 11:32:15.000000000 +0200
+@@ -1136,7 +1136,7 @@ LIBX264=$LIBX264
+ AR=$AR
+ RANLIB=$RANLIB
+ STRIP=$STRIP
+-AS=$AS
++AS=$CC
+ ASFLAGS=$ASFLAGS
+ RC=$RC
+ RCFLAGS=$RCFLAGS

+ 1 - 0
target/packages/pkg-available/mpdbox

@@ -20,6 +20,7 @@ config ADK_PKG_MPDBOX
 	select ADK_PACKAGE_FFMPEG
 	select ADK_PACKAGE_FFPROBE
 	select ADK_PACKAGE_LIBFFMPEG
+	select ADK_PACKAGE_LIBFFMPEG_WITH_X264
 	select ADK_PACKAGE_LIBFFMPEG_WITH_AAC
 	select ADK_PACKAGE_LIBFFMPEG_WITH_MP3
 	select ADK_PACKAGE_LIBFFMPEG_WITH_VP8