diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2011-09-17 19:30:48 +0200 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2011-09-17 19:30:48 +0200 |
commit | 3d6df5473607ae6ba0542285582cfec0f5196d38 (patch) | |
tree | 2363296962be517e95b7907626ef58b31cf7d551 | |
parent | bd2f41ee73b6c681b1c16d9aeb15bb5a67ad4e73 (diff) |
add support for VP8 codec
-rw-r--r-- | package/ffmpeg/Makefile | 26 | ||||
-rw-r--r-- | package/libvpx/Makefile | 41 | ||||
-rw-r--r-- | package/libvpx/patches/patch-build_make_Makefile | 24 | ||||
-rw-r--r-- | package/libvpx/patches/patch-build_make_configure_sh | 11 | ||||
-rw-r--r-- | package/libvpx/patches/patch-vp8_common_arm_bilinearfilter_arm_c | 15 | ||||
-rw-r--r-- | package/libvpx/patches/patch-vp8_vp8cx_arm_mk | 11 |
6 files changed, 121 insertions, 7 deletions
diff --git a/package/ffmpeg/Makefile b/package/ffmpeg/Makefile index 781dcd329..debea9675 100644 --- a/package/ffmpeg/Makefile +++ b/package/ffmpeg/Makefile @@ -21,19 +21,21 @@ PKGSC_FFPLAY:= multimedia PKGSS_FFPLAY:= libsdl libpthread libffmpeg PKGSB_FFPLAY:= sdl PKGSD_FFMPEG:= ffmpeg video converter -PKGSD_FFMPEG:= multimedia +PKGSC_FFMPEG:= multimedia PKGSD_FFSERVER:= streaming server -PKGSD_FFSERVER:= multimedia +PKGSC_FFSERVER:= multimedia PKGSD_FFPROBE:= simple multimedia stream analyzer -PKGSD_FFPROBE:= multimedia +PKGSC_FFPROBE:= multimedia + +PKG_FLAVOURS_LIBFFMPEG:= WITH_AAC WITH_MP3 WITH_VP8 -PKG_FLAVOURS_LIBFFMPEG:= WITH_AAC WITH_MP3 PKGFD_WITH_AAC:= with AAC encoding support PKGFS_WITH_AAC:= libfaac PKGFB_WITH_AAC:= faac ifeq ($(ADK_PACKAGE_LIBFFMPEG_WITH_AAC),y) PKG_FDEPENDS+= libfaac endif + PKGFD_WITH_MP3:= with MP3 encoding support PKGFS_WITH_MP3:= libmp3lame PKGFB_WITH_MP3:= lame @@ -41,14 +43,21 @@ ifeq ($(ADK_PACKAGE_LIBFFMPEG_WITH_MP3),y) PKG_FDEPENDS+= libmp3lame endif +PKGFD_WITH_VP8:= with VP8 encoding support +PKGFS_WITH_VP8:= libvpx +PKGFB_WITH_VP8:= libvpx +ifeq ($(ADK_PACKAGE_LIBFFMPEG_WITH_VP8),y) +PKG_FDEPENDS+= libvpx +endif + DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.bz2 include ${TOPDIR}/mk/package.mk $(eval $(call PKG_template,LIBFFMPEG,libffmpeg,${PKG_VERSION}-${PKG_RELEASE},${PKG_FDEPENDS},${PKG_DESCR},${PKG_SECTION})) -$(eval $(call PKG_template,FFMPEG,ffmpeg,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_FFMPEG},${PKGSD_FFMPEG})) -$(eval $(call PKG_template,FFSERVER,ffserver,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_FFSERVER},${PKGSD_FFSERVER})) -$(eval $(call PKG_template,FFPROBE,ffprobe,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_FFPROBE},${PKGSD_FFPROBE})) +$(eval $(call PKG_template,FFMPEG,ffmpeg,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_FFMPEG},${PKGSC_FFMPEG})) +$(eval $(call PKG_template,FFSERVER,ffserver,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_FFSERVER},${PKGSC_FFSERVER})) +$(eval $(call PKG_template,FFPROBE,ffprobe,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_FFPROBE},${PKGSC_FFPROBE})) $(eval $(call PKG_template,FFPLAY,ffplay,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_FFPLAY},${PKGSD_FFPLAY},${PKGSC_FFPLAY})) TARGET_CFLAGS:= $(filter-out -flto,$(TARGET_CFLAGS)) @@ -96,6 +105,9 @@ endif ifeq ($(ADK_PACKAGE_LIBFFMPEG_WITH_MP3),y) CONFIGURE_ARGS+= --enable-libmp3lame endif +ifeq ($(ADK_PACKAGE_LIBFFMPEG_WITH_MP3),y) +CONFIGURE_ARGS+= --enable-libvpx +endif libffmpeg-install: ${INSTALL_DIR} ${IDIR_LIBFFMPEG}/usr/lib diff --git a/package/libvpx/Makefile b/package/libvpx/Makefile new file mode 100644 index 000000000..d7344ed87 --- /dev/null +++ b/package/libvpx/Makefile @@ -0,0 +1,41 @@ +# 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:= libvpx +PKG_VERSION:= 0.9.7 +PKG_RELEASE:= 1 +PKG_MD5SUM:= bd888cffde8d9c3061c7fd719b0cd4ce +PKG_DESCR:= VP8 codec library +PKG_SECTION:= libs +PKG_URL:= http://www.webmproject.org/about/ +PKG_SITES:= http://webm.googlecode.com/files/ + +PKG_SYSTEM_DEPENDS:= sharp-zaurus + +DISTFILES:= ${PKG_NAME}-v${PKG_VERSION}-p1.tar.bz2 +WRKDIST= $(WRKDIR)/${PKG_NAME}-v${PKG_VERSION}-p1 + +include $(TOPDIR)/mk/package.mk + +$(eval $(call PKG_template,LIBVPX,libvpx,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) + +CONFIG_STYLE:= minimal +ifeq ($(ADK_TARGET_SYSTEM_SHARP_ZAURUS),y) +CONFIGURE_ARGS+= --target=armv5te-linux-gcc +endif +CONFIGURE_ARGS+= --prefix=/usr \ + --disable-install-docs \ + --disable-install-bins \ + --enable-install-libs \ + --disable-examples \ + --enable-shared +ALL_TARGET:= + +libvpx-install: + $(INSTALL_DIR) $(IDIR_LIBVPX)/usr/lib + $(CP) $(WRKINST)/usr/lib/libvpx.so* \ + $(IDIR_LIBVPX)/usr/lib + +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/libvpx/patches/patch-build_make_Makefile b/package/libvpx/patches/patch-build_make_Makefile new file mode 100644 index 000000000..e1a6d5fa8 --- /dev/null +++ b/package/libvpx/patches/patch-build_make_Makefile @@ -0,0 +1,24 @@ +--- libvpx-v0.9.7-p1.orig/build/make/Makefile 2011-08-15 23:02:45.000000000 +0200 ++++ libvpx-v0.9.7-p1/build/make/Makefile 2011-09-17 18:03:25.467990966 +0200 +@@ -193,8 +193,8 @@ endif + define linker_template + $(1): $(filter-out -%,$(2)) + $(1): +- $(if $(quiet),@echo " [LD] $$@") +- $(qexec)$$(LD) $$(strip $$(INTERNAL_LDFLAGS) $$(LDFLAGS) -o $$@ $(2) $(3) $$(extralibs)) ++ $(if $(quiet),@echo " [CC] $$@") ++ $(qexec)$$(CC) $$(strip $$(INTERNAL_LDFLAGS) $$(LDFLAGS) -o $$@ $(2) $(3) $$(extralibs)) + endef + # make-3.80 has a bug with expanding large input strings to the eval function, + # which was triggered in some cases by the following component of +@@ -227,8 +227,8 @@ define so_template + # + # This needs further abstraction for dealing with non-GNU linkers. + $(1): +- $(if $(quiet),@echo " [LD] $$@") +- $(qexec)$$(LD) -shared $$(LDFLAGS) \ ++ $(if $(quiet),@echo " [CC] $$@") ++ $(qexec)$$(CC) -shared $$(LDFLAGS) \ + -Wl,--no-undefined -Wl,-soname,$$(SONAME) \ + -Wl,--version-script,$$(SO_VERSION_SCRIPT) -o $$@ \ + $$(filter %.o,$$?) $$(extralibs) diff --git a/package/libvpx/patches/patch-build_make_configure_sh b/package/libvpx/patches/patch-build_make_configure_sh new file mode 100644 index 000000000..42ab9785a --- /dev/null +++ b/package/libvpx/patches/patch-build_make_configure_sh @@ -0,0 +1,11 @@ +--- libvpx-v0.9.7-p1.orig/build/make/configure.sh 2011-08-15 23:02:45.000000000 +0200 ++++ libvpx-v0.9.7-p1/build/make/configure.sh 2011-09-17 17:48:07.667986440 +0200 +@@ -287,7 +287,7 @@ check_cpp() { + check_ld() { + log check_ld "$@" + check_cc $@ \ +- && check_cmd ${LD} ${LDFLAGS} "$@" -o ${TMP_X} ${TMP_O} ${extralibs} ++ && check_cmd ${CC} ${LDFLAGS} "$@" -o ${TMP_X} ${TMP_O} ${extralibs} + } + + check_header(){ diff --git a/package/libvpx/patches/patch-vp8_common_arm_bilinearfilter_arm_c b/package/libvpx/patches/patch-vp8_common_arm_bilinearfilter_arm_c new file mode 100644 index 000000000..1a5757a9a --- /dev/null +++ b/package/libvpx/patches/patch-vp8_common_arm_bilinearfilter_arm_c @@ -0,0 +1,15 @@ +--- libvpx-v0.9.7-p1.orig/vp8/common/arm/bilinearfilter_arm.c 2011-08-15 23:02:45.000000000 +0200 ++++ libvpx-v0.9.7-p1/vp8/common/arm/bilinearfilter_arm.c 2011-09-17 18:14:27.977994106 +0200 +@@ -29,10 +29,10 @@ void vp8_filter_block2d_bil_armv6 + unsigned short FData[36*16]; /* Temp data buffer used in filtering */ + + /* First filter 1-D horizontally... */ +- vp8_filter_block2d_bil_first_pass_armv6(src_ptr, FData, src_pitch, Height + 1, Width, HFilter); ++ //vp8_filter_block2d_bil_first_pass_armv6(src_ptr, FData, src_pitch, Height + 1, Width, HFilter); + + /* then 1-D vertically... */ +- vp8_filter_block2d_bil_second_pass_armv6(FData, dst_ptr, dst_pitch, Height, Width, VFilter); ++ //vp8_filter_block2d_bil_second_pass_armv6(FData, dst_ptr, dst_pitch, Height, Width, VFilter); + } + + diff --git a/package/libvpx/patches/patch-vp8_vp8cx_arm_mk b/package/libvpx/patches/patch-vp8_vp8cx_arm_mk new file mode 100644 index 000000000..9c170c84f --- /dev/null +++ b/package/libvpx/patches/patch-vp8_vp8cx_arm_mk @@ -0,0 +1,11 @@ +--- libvpx-v0.9.7-p1.orig/vp8/vp8cx_arm.mk 2011-08-15 23:02:45.000000000 +0200 ++++ libvpx-v0.9.7-p1/vp8/vp8cx_arm.mk 2011-09-17 18:09:12.317990227 +0200 +@@ -18,7 +18,7 @@ VP8_CX_SRCS-$(ARCH_ARM) += encoder/arm/ + VP8_CX_SRCS-$(ARCH_ARM) += encoder/arm/dct_arm.c + VP8_CX_SRCS-$(ARCH_ARM) += encoder/arm/dct_arm.h + VP8_CX_SRCS-$(ARCH_ARM) += encoder/arm/encodemb_arm.h +-VP8_CX_SRCS-$(ARCH_ARM) += encoder/arm/picklpf_arm.c ++VP8_CX_SRCS-$(HAVE_ARMV7) += encoder/arm/picklpf_arm.c + VP8_CX_SRCS-$(ARCH_ARM) += encoder/arm/quantize_arm.c + VP8_CX_SRCS-$(ARCH_ARM) += encoder/arm/quantize_arm.h + VP8_CX_SRCS-$(ARCH_ARM) += encoder/arm/variance_arm.c |