From 23086151b71c1447cc05ff863a68957c8778d3c5 Mon Sep 17 00:00:00 2001 From: Kesha Antonov Date: Tue, 2 May 2017 06:59:18 +0300 Subject: [PATCH 1/3] upd ffmpeg to v 3.3 --- .gitignore | 3 +++ expat_build.sh | 2 +- ffmpeg | 1 - ffmpeg_build.sh | 2 +- freetype2 | 1 - freetype_build.sh | 2 +- init_update_libs.sh | 10 ++++++++-- libass | 1 - libass_build.sh | 2 +- libpng_build.sh | 2 +- settings.sh | 2 +- 11 files changed, 17 insertions(+), 11 deletions(-) delete mode 160000 ffmpeg delete mode 160000 freetype2 delete mode 160000 libass diff --git a/.gitignore b/.gitignore index 0a4807e..73580ed 100755 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,9 @@ libpng-* expat-* fribidi-* lame-* +ffmpeg-* +freetype-* +libass-* # Created by http://www.gitignore.io diff --git a/expat_build.sh b/expat_build.sh index 611c945..c74a8a0 100755 --- a/expat_build.sh +++ b/expat_build.sh @@ -2,7 +2,7 @@ . abi_settings.sh $1 $2 $3 -pushd expat-2.1.0 +pushd expat-2.2.0 make clean diff --git a/ffmpeg b/ffmpeg deleted file mode 160000 index fda00aa..0000000 --- a/ffmpeg +++ /dev/null @@ -1 +0,0 @@ -Subproject commit fda00aa7749326f02a6ca0a7d9bd9bcda1054071 diff --git a/ffmpeg_build.sh b/ffmpeg_build.sh index 2bc85be..006e37a 100755 --- a/ffmpeg_build.sh +++ b/ffmpeg_build.sh @@ -2,7 +2,7 @@ . abi_settings.sh $1 $2 $3 -pushd ffmpeg +pushd ffmpeg-3.3 case $1 in armeabi-v7a | armeabi-v7a-neon) diff --git a/freetype2 b/freetype2 deleted file mode 160000 index 44accb9..0000000 --- a/freetype2 +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 44accb9e2e5b00696cf50a869b68afa2ce3dd389 diff --git a/freetype_build.sh b/freetype_build.sh index aef08c7..9588cad 100755 --- a/freetype_build.sh +++ b/freetype_build.sh @@ -2,7 +2,7 @@ . abi_settings.sh $1 $2 $3 -pushd freetype2 +pushd freetype-2.7.1 make clean diff --git a/init_update_libs.sh b/init_update_libs.sh index 5e82329..5695fe2 100755 --- a/init_update_libs.sh +++ b/init_update_libs.sh @@ -9,9 +9,15 @@ rm -rf libpng-* rm -rf expat-* rm -rf fribidi-* rm -rf lame-* +rm -rf freetype-* +rm -rf libass-* +rm -rf ffmpeg-* -wget -O- ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/libpng-1.6.21.tar.xz | tar xJ -wget -O- http://downloads.sourceforge.net/project/expat/expat/2.1.0/expat-2.1.0.tar.gz | tar xz +wget -O- ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/libpng-1.6.29.tar.xz | tar xJ +wget -O- https://downloads.sourceforge.net/project/expat/expat/2.2.0/expat-2.2.0.tar.bz2 | tar xj wget -O- http://fribidi.org/download/fribidi-0.19.7.tar.bz2 | tar xj wget -O- http://sourceforge.net/projects/lame/files/lame/3.99/lame-3.99.5.tar.gz | tar xz +wget -O- http://download.savannah.gnu.org/releases/freetype/freetype-2.7.1.tar.bz2 | tar xz +wget -O- https://github.com/libass/libass/releases/download/0.13.6/libass-0.13.6.tar.xz | tar xz +wget -O- http://ffmpeg.org/releases/ffmpeg-3.3.tar.bz2 | tar xz echo "============================================" diff --git a/libass b/libass deleted file mode 160000 index 7c30fea..0000000 --- a/libass +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 7c30feaa6906c5f392f6a1496462504b09fd8df0 diff --git a/libass_build.sh b/libass_build.sh index 402eef6..2589d55 100755 --- a/libass_build.sh +++ b/libass_build.sh @@ -2,7 +2,7 @@ . abi_settings.sh $1 $2 $3 -pushd libass +pushd libass-0.13.6 make clean diff --git a/libpng_build.sh b/libpng_build.sh index a5d75dd..936031c 100755 --- a/libpng_build.sh +++ b/libpng_build.sh @@ -2,7 +2,7 @@ . abi_settings.sh $1 $2 $3 -pushd libpng-1.6.21 +pushd libpng-1.6.29 make clean diff --git a/settings.sh b/settings.sh index bdf7b94..70ebf73 100755 --- a/settings.sh +++ b/settings.sh @@ -9,7 +9,7 @@ fi ANDROID_API_VERSION=9 NDK_TOOLCHAIN_ABI_VERSION=4.8 -NUMBER_OF_CORES=$(nproc) +NUMBER_OF_CORES=$(sysctl -n hw.ncpu) HOST_UNAME=$(uname -m) TARGET_OS=linux From b4dff5cd3a08352b538c5e106d4a4cae5308bf72 Mon Sep 17 00:00:00 2001 From: Kesha Antonov Date: Wed, 1 Nov 2017 10:08:04 +0300 Subject: [PATCH 2/3] ffmpeg v3.3.5 --- .gitignore | 2 +- .gitmodules | 18 +++++++++--------- android_build.sh | 14 +++++++------- ffmpeg-pkg-config | 20 -------------------- ffmpeg_build.sh | 33 ++++++++++++++++++++++----------- init_update_libs.sh | 26 +++++++++++++------------- settings.sh | 5 +++-- 7 files changed, 55 insertions(+), 63 deletions(-) delete mode 100755 ffmpeg-pkg-config diff --git a/.gitignore b/.gitignore index 73580ed..8af3092 100755 --- a/.gitignore +++ b/.gitignore @@ -5,7 +5,7 @@ libpng-* expat-* fribidi-* lame-* -ffmpeg-* +ffmpeg-3.* freetype-* libass-* diff --git a/.gitmodules b/.gitmodules index 042e3ee..b48cfbd 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,15 +1,15 @@ -[submodule "ffmpeg"] - path = ffmpeg - url = git://source.ffmpeg.org/ffmpeg.git +# [submodule "ffmpeg"] +# path = ffmpeg +# url = git://source.ffmpeg.org/ffmpeg.git [submodule "x264"] path = x264 url = git://git.videolan.org/x264.git -[submodule "freetype2"] - path = freetype2 - url = git://git.sv.nongnu.org/freetype/freetype2.git -[submodule "libass"] - path = libass - url = https://github.com/libass/libass.git +# [submodule "freetype2"] +# path = freetype2 +# url = git://git.sv.nongnu.org/freetype/freetype2.git +# [submodule "libass"] +# path = libass +# url = https://github.com/libass/libass.git [submodule "fontconfig"] path = fontconfig url = git://anongit.freedesktop.org/fontconfig diff --git a/android_build.sh b/android_build.sh index 8fb4832..31811fb 100755 --- a/android_build.sh +++ b/android_build.sh @@ -16,14 +16,14 @@ do # $1 = architecture # $2 = base directory # $3 = pass 1 if you want to export default compiler environment variables + # ./libpng_build.sh $i $BASEDIR 1 || exit 1 + # ./freetype_build.sh $i $BASEDIR 1 || exit 1 + # ./expat_build.sh $i $BASEDIR 1 || exit 1 + # ./fribidi_build.sh $i $BASEDIR 1 || exit 1 + # ./fontconfig_build.sh $i $BASEDIR 1 || exit 1 + # ./libass_build.sh $i $BASEDIR 1 || exit 1 + # ./lame_build.sh $i $BASEDIR 1 || exit 1 ./x264_build.sh $i $BASEDIR 0 || exit 1 - ./libpng_build.sh $i $BASEDIR 1 || exit 1 - ./freetype_build.sh $i $BASEDIR 1 || exit 1 - ./expat_build.sh $i $BASEDIR 1 || exit 1 - ./fribidi_build.sh $i $BASEDIR 1 || exit 1 - ./fontconfig_build.sh $i $BASEDIR 1 || exit 1 - ./libass_build.sh $i $BASEDIR 1 || exit 1 - ./lame_build.sh $i $BASEDIR 1 || exit 1 ./ffmpeg_build.sh $i $BASEDIR 0 || exit 1 done diff --git a/ffmpeg-pkg-config b/ffmpeg-pkg-config deleted file mode 100755 index bd452e8..0000000 --- a/ffmpeg-pkg-config +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash -pkg_name=${@: -1} - -SCRIPT=$(readlink -f "$0") -BASEDIR=$(dirname "$SCRIPT") -export PKG_CONFIG_PATH=${BASEDIR}/toolchain-android/lib/pkgconfig -case $1 in - --exists) - pkg-config --exists $pkg_name - ;; - --cflags) - echo $(pkg-config --cflags $pkg_name) - ;; - --libs) - echo $(pkg-config --libs $pkg_name) - ;; - *) - echo "FFmpeg pkg-config to build FFmpeg for Android!" - ;; -esac diff --git a/ffmpeg_build.sh b/ffmpeg_build.sh index 006e37a..68ac319 100755 --- a/ffmpeg_build.sh +++ b/ffmpeg_build.sh @@ -2,7 +2,7 @@ . abi_settings.sh $1 $2 $3 -pushd ffmpeg-3.3 +pushd ffmpeg-3.3.5 case $1 in armeabi-v7a | armeabi-v7a-neon) @@ -22,13 +22,7 @@ make clean --cpu="$CPU" \ --enable-runtime-cpudetect \ --sysroot="$NDK_SYSROOT" \ ---enable-pic \ --enable-libx264 \ ---enable-libass \ ---enable-libfreetype \ ---enable-libfribidi \ ---enable-libmp3lame \ ---enable-fontconfig \ --enable-pthreads \ --disable-debug \ --disable-ffserver \ @@ -36,17 +30,34 @@ make clean --enable-hardcoded-tables \ --disable-ffplay \ --disable-ffprobe \ ---enable-gpl \ --enable-yasm \ --disable-doc \ --disable-shared \ --enable-static \ ---pkg-config="${2}/ffmpeg-pkg-config" \ +--enable-nonfree \ +--disable-network \ +--enable-gpl \ +--enable-ffmpeg \ +--enable-small \ +--disable-filters \ +--enable-filter=copy \ +--enable-filter=trim \ +--enable-filter=crop \ +--enable-filter=scale \ +--enable-filter=format \ +--pkg-config="${2}/ffmpeg-3.3-pkg-config" \ --prefix="${2}/build/${1}" \ --extra-cflags="-I${TOOLCHAIN_PREFIX}/include $CFLAGS" \ --extra-ldflags="-L${TOOLCHAIN_PREFIX}/lib $LDFLAGS" \ ---extra-libs="-lpng -lexpat -lm" \ ---extra-cxxflags="$CXX_FLAGS" || exit 1 +--extra-cxxflags="$CXX_FLAGS" \ +--extra-libs="-lx264 -lm" || exit 1 + +# --enable-libass \ +# --enable-libfreetype \ +# --enable-libfribidi \ +# --enable-libmp3lame \ +# --enable-fontconfig \ +# --extra-libs="-lpng -lexpat -lm" \ make -j${NUMBER_OF_CORES} && make install || exit 1 diff --git a/init_update_libs.sh b/init_update_libs.sh index 5695fe2..c5fd5f9 100755 --- a/init_update_libs.sh +++ b/init_update_libs.sh @@ -5,19 +5,19 @@ echo "Updating submodules" git submodule update --init echo "============================================" echo "Updating libpng, expat and fribidi" -rm -rf libpng-* -rm -rf expat-* -rm -rf fribidi-* -rm -rf lame-* -rm -rf freetype-* -rm -rf libass-* +# rm -rf libpng-* +# rm -rf expat-* +# rm -rf fribidi-* +# rm -rf lame-* +# rm -rf freetype-* +# rm -rf libass-* rm -rf ffmpeg-* -wget -O- ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/libpng-1.6.29.tar.xz | tar xJ -wget -O- https://downloads.sourceforge.net/project/expat/expat/2.2.0/expat-2.2.0.tar.bz2 | tar xj -wget -O- http://fribidi.org/download/fribidi-0.19.7.tar.bz2 | tar xj -wget -O- http://sourceforge.net/projects/lame/files/lame/3.99/lame-3.99.5.tar.gz | tar xz -wget -O- http://download.savannah.gnu.org/releases/freetype/freetype-2.7.1.tar.bz2 | tar xz -wget -O- https://github.com/libass/libass/releases/download/0.13.6/libass-0.13.6.tar.xz | tar xz -wget -O- http://ffmpeg.org/releases/ffmpeg-3.3.tar.bz2 | tar xz +# wget -O- ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/libpng-1.6.29.tar.xz | tar xJ +# wget -O- https://downloads.sourceforge.net/project/expat/expat/2.2.0/expat-2.2.0.tar.bz2 | tar xj +# wget -O- http://fribidi.org/download/fribidi-0.19.7.tar.bz2 | tar xj +# wget -O- http://sourceforge.net/projects/lame/files/lame/3.99/lame-3.99.5.tar.gz | tar xz +# wget -O- http://download.savannah.gnu.org/releases/freetype/freetype-2.7.1.tar.bz2 | tar xz +# wget -O- https://github.com/libass/libass/releases/download/0.13.6/libass-0.13.6.tar.xz | tar xz +wget -O- https://www.ffmpeg.org/releases/ffmpeg-3.3.5.tar.bz2 | tar xz echo "============================================" diff --git a/settings.sh b/settings.sh index 70ebf73..373a4f1 100755 --- a/settings.sh +++ b/settings.sh @@ -1,12 +1,13 @@ #!/bin/bash -SUPPORTED_ARCHITECTURES=(armeabi-v7a armeabi-v7a-neon x86) +# SUPPORTED_ARCHITECTURES=(armeabi-v7a armeabi-v7a-neon x86) +SUPPORTED_ARCHITECTURES=(armeabi-v7a) ANDROID_NDK_ROOT_PATH=${ANDROID_NDK} if [[ -z "$ANDROID_NDK_ROOT_PATH" ]]; then echo "You need to set ANDROID_NDK environment variable, please check instructions" exit fi -ANDROID_API_VERSION=9 +ANDROID_API_VERSION=17 NDK_TOOLCHAIN_ABI_VERSION=4.8 NUMBER_OF_CORES=$(sysctl -n hw.ncpu) From 55f8997d28323b92fcf70128dac322fcaa59c4c8 Mon Sep 17 00:00:00 2001 From: Kesha Antonov Date: Sat, 25 Nov 2017 01:32:03 +0300 Subject: [PATCH 3/3] fix build --- ffmpeg-pkg-config-for-3.3 | 20 ++++++++++++++++++++ ffmpeg_build.sh | 30 ++++++++++-------------------- 2 files changed, 30 insertions(+), 20 deletions(-) create mode 100644 ffmpeg-pkg-config-for-3.3 diff --git a/ffmpeg-pkg-config-for-3.3 b/ffmpeg-pkg-config-for-3.3 new file mode 100644 index 0000000..bd452e8 --- /dev/null +++ b/ffmpeg-pkg-config-for-3.3 @@ -0,0 +1,20 @@ +#!/bin/bash +pkg_name=${@: -1} + +SCRIPT=$(readlink -f "$0") +BASEDIR=$(dirname "$SCRIPT") +export PKG_CONFIG_PATH=${BASEDIR}/toolchain-android/lib/pkgconfig +case $1 in + --exists) + pkg-config --exists $pkg_name + ;; + --cflags) + echo $(pkg-config --cflags $pkg_name) + ;; + --libs) + echo $(pkg-config --libs $pkg_name) + ;; + *) + echo "FFmpeg pkg-config to build FFmpeg for Android!" + ;; +esac diff --git a/ffmpeg_build.sh b/ffmpeg_build.sh index 68ac319..746c333 100755 --- a/ffmpeg_build.sh +++ b/ffmpeg_build.sh @@ -30,35 +30,25 @@ make clean --enable-hardcoded-tables \ --disable-ffplay \ --disable-ffprobe \ +--enable-gpl \ --enable-yasm \ --disable-doc \ --disable-shared \ --enable-static \ ---enable-nonfree \ ---disable-network \ ---enable-gpl \ ---enable-ffmpeg \ --enable-small \ ---disable-filters \ ---enable-filter=copy \ ---enable-filter=trim \ ---enable-filter=crop \ ---enable-filter=scale \ ---enable-filter=format \ ---pkg-config="${2}/ffmpeg-3.3-pkg-config" \ +--disable-network \ +--pkg-config="${2}/ffmpeg-pkg-config-for-3.3" \ --prefix="${2}/build/${1}" \ --extra-cflags="-I${TOOLCHAIN_PREFIX}/include $CFLAGS" \ --extra-ldflags="-L${TOOLCHAIN_PREFIX}/lib $LDFLAGS" \ ---extra-cxxflags="$CXX_FLAGS" \ ---extra-libs="-lx264 -lm" || exit 1 - -# --enable-libass \ -# --enable-libfreetype \ -# --enable-libfribidi \ -# --enable-libmp3lame \ -# --enable-fontconfig \ -# --extra-libs="-lpng -lexpat -lm" \ +--extra-libs="-lx264" \ +--extra-cxxflags="$CXX_FLAGS" || exit 1 make -j${NUMBER_OF_CORES} && make install || exit 1 popd + + +# TODO: ENABLE ONLY FILTERS THAT WE USE. NOW GIVES ERROR WHEN USING CONVERT +# --disable-filters \ +# --enable-filter=crop,scale,acopy,format,trim,rotate \