aboutsummaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorDerek Buitenhuis2016-01-03 13:22:03 -0500
committerDerek Buitenhuis2016-01-06 16:43:06 +0000
commit72673ad7eae2d4f685f3c0a895558502bfe07c8e (patch)
treeff31efba3b8c96cf01bd3b763147d133988c096d /tools
parent149b1f7ccafaee66c5370bce980a1569c3ec3db5 (diff)
avcodec: Remove libstagefright
It serves absolutely no purpose other than to confuse potentional Android developers about how to use hardware acceleration properly on the the platform. The stagefright "API" is not public, and the MediaCodec API is the proper way to do this. Furthermore, stagefright support in avcodec needs a series of magic incantations and version-specific stuff, such that using it actually provides downsides compared just using the actual Android frameworks properly, in that it is a lot more work and confusion to get it even running. It also leads to a lot of misinformation, like these sorts of comments (in [1]) that are absolutely incorrect. [1] http://stackoverflow.com/a/29362353/3115956 Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Diffstat (limited to 'tools')
-rw-r--r--tools/build_libstagefright58
1 files changed, 0 insertions, 58 deletions
diff --git a/tools/build_libstagefright b/tools/build_libstagefright
deleted file mode 100644
index 22bb71225c..0000000000
--- a/tools/build_libstagefright
+++ /dev/null
@@ -1,58 +0,0 @@
-#!/bin/bash
-
-if [ "$NDK" = "" ]; then
- echo NDK variable not set, assuming ${HOME}/android-ndk
- export NDK=${HOME}/android-ndk
-fi
-
-echo "Fetching Android system headers"
-git clone --depth=1 --branch gingerbread-release https://github.com/CyanogenMod/android_frameworks_base.git ../android-source/frameworks/base
-git clone --depth=1 --branch gingerbread-release https://github.com/CyanogenMod/android_system_core.git ../android-source/system/core
-
-echo "Fetching Android libraries for linking"
-# Libraries from any froyo/gingerbread device/emulator should work
-# fine, since the symbols used should be available on most of them.
-if [ ! -d "../android-libs" ]; then
- if [ ! -f "../update-cm-7.0.3-N1-signed.zip" ]; then
- wget http://download.cyanogenmod.com/get/update-cm-7.0.3-N1-signed.zip -P../
- fi
- unzip ../update-cm-7.0.3-N1-signed.zip system/lib/* -d../
- mv ../system/lib ../android-libs
- rmdir ../system
-fi
-
-
-SYSROOT=$NDK/platforms/android-9/arch-arm
-# Expand the prebuilt/* path into the correct one
-TOOLCHAIN=`echo $NDK/toolchains/arm-linux-androideabi-4.4.3/prebuilt/*-x86`
-export PATH=$TOOLCHAIN/bin:$PATH
-ANDROID_SOURCE=../android-source
-ANDROID_LIBS=../android-libs
-ABI="armeabi-v7a"
-
-rm -rf ../build/stagefright
-mkdir -p ../build/stagefright
-
-DEST=../build/stagefright
-FLAGS="--target-os=linux --cross-prefix=arm-linux-androideabi- --arch=arm --cpu=armv7-a"
-FLAGS="$FLAGS --sysroot=$SYSROOT"
-FLAGS="$FLAGS --disable-avdevice --disable-decoder=h264 --disable-decoder=h264_vdpau --enable-libstagefright-h264"
-
-EXTRA_CFLAGS="-I$ANDROID_SOURCE/frameworks/base/include -I$ANDROID_SOURCE/system/core/include"
-EXTRA_CFLAGS="$EXTRA_CFLAGS -I$ANDROID_SOURCE/frameworks/base/media/libstagefright"
-EXTRA_CFLAGS="$EXTRA_CFLAGS -I$ANDROID_SOURCE/frameworks/base/include/media/stagefright/openmax"
-EXTRA_CFLAGS="$EXTRA_CFLAGS -I$NDK/sources/cxx-stl/gnu-libstdc++/include -I$NDK/sources/cxx-stl/gnu-libstdc++/libs/$ABI/include"
-
-EXTRA_CFLAGS="$EXTRA_CFLAGS -march=armv7-a -mfloat-abi=softfp -mfpu=neon"
-EXTRA_LDFLAGS="-Wl,--fix-cortex-a8 -L$ANDROID_LIBS -Wl,-rpath-link,$ANDROID_LIBS -L$NDK/sources/cxx-stl/gnu-libstdc++/libs/$ABI"
-EXTRA_CXXFLAGS="-Wno-multichar -fno-exceptions -fno-rtti"
-DEST="$DEST/$ABI"
-FLAGS="$FLAGS --prefix=$DEST"
-
-mkdir -p $DEST
-
-echo $FLAGS --extra-cflags="$EXTRA_CFLAGS" --extra-ldflags="$EXTRA_LDFLAGS" --extra-cxxflags="$EXTRA_CXXFLAGS" > $DEST/info.txt
-./configure $FLAGS --extra-cflags="$EXTRA_CFLAGS" --extra-ldflags="$EXTRA_LDFLAGS" --extra-cxxflags="$EXTRA_CXXFLAGS" | tee $DEST/configuration.txt
-[ $PIPESTATUS == 0 ] || exit 1
-make clean
-make -j4 || exit 1