-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
chenlong
committed
Feb 27, 2017
0 parents
commit 2cd1fcf
Showing
6,173 changed files
with
1,473,412 additions
and
0 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,156 @@ | ||
#!/bin/sh | ||
|
||
# directories | ||
SOURCE="ffmpeg-3.1.1" | ||
FAT="FFmpeg-tvOS" | ||
|
||
SCRATCH="scratch-tvos" | ||
# must be an absolute path | ||
THIN=`pwd`/"thin-tvos" | ||
|
||
# absolute path to x264 library | ||
#X264=`pwd`/../x264-ios/x264-iOS | ||
|
||
#FDK_AAC=`pwd`/fdk-aac/fdk-aac-ios | ||
|
||
CONFIGURE_FLAGS="--enable-cross-compile --disable-debug --disable-programs \ | ||
--disable-doc --enable-pic --disable-indev=avfoundation" | ||
|
||
if [ "$X264" ] | ||
then | ||
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-gpl --enable-libx264" | ||
fi | ||
|
||
if [ "$FDK_AAC" ] | ||
then | ||
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libfdk-aac" | ||
fi | ||
|
||
# avresample | ||
#CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-avresample" | ||
|
||
ARCHS="arm64 x86_64" | ||
|
||
COMPILE="y" | ||
LIPO="y" | ||
|
||
DEPLOYMENT_TARGET="9.0" | ||
|
||
if [ "$*" ] | ||
then | ||
if [ "$*" = "lipo" ] | ||
then | ||
# skip compile | ||
COMPILE= | ||
else | ||
ARCHS="$*" | ||
if [ $# -eq 1 ] | ||
then | ||
# skip lipo | ||
LIPO= | ||
fi | ||
fi | ||
fi | ||
|
||
if [ "$COMPILE" ] | ||
then | ||
if [ ! `which yasm` ] | ||
then | ||
echo 'Yasm not found' | ||
if [ ! `which brew` ] | ||
then | ||
echo 'Homebrew not found. Trying to install...' | ||
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" \ | ||
|| exit 1 | ||
fi | ||
echo 'Trying to install Yasm...' | ||
brew install yasm || exit 1 | ||
fi | ||
if [ ! `which gas-preprocessor.pl` ] | ||
then | ||
echo 'gas-preprocessor.pl not found. Trying to install...' | ||
(curl -L https://github.com/libav/gas-preprocessor/raw/master/gas-preprocessor.pl \ | ||
-o /usr/local/bin/gas-preprocessor.pl \ | ||
&& chmod +x /usr/local/bin/gas-preprocessor.pl) \ | ||
|| exit 1 | ||
fi | ||
|
||
if [ ! -r $SOURCE ] | ||
then | ||
echo 'FFmpeg source not found. Trying to download...' | ||
curl http://www.ffmpeg.org/releases/$SOURCE.tar.bz2 | tar xj \ | ||
|| exit 1 | ||
fi | ||
|
||
CWD=`pwd` | ||
for ARCH in $ARCHS | ||
do | ||
echo "building $ARCH..." | ||
mkdir -p "$SCRATCH/$ARCH" | ||
cd "$SCRATCH/$ARCH" | ||
|
||
CFLAGS="-arch $ARCH" | ||
if [ "$ARCH" = "x86_64" ] | ||
then | ||
PLATFORM="AppleTVSimulator" | ||
CFLAGS="$CFLAGS -mtvos-simulator-version-min=$DEPLOYMENT_TARGET" | ||
else | ||
PLATFORM="AppleTVOS" | ||
CFLAGS="$CFLAGS -mtvos-version-min=$DEPLOYMENT_TARGET -fembed-bitcode" | ||
if [ "$ARCH" = "arm64" ] | ||
then | ||
EXPORT="GASPP_FIX_XCODE5=1" | ||
fi | ||
fi | ||
|
||
XCRUN_SDK=`echo $PLATFORM | tr '[:upper:]' '[:lower:]'` | ||
CC="xcrun -sdk $XCRUN_SDK clang" | ||
AR="xcrun -sdk $XCRUN_SDK ar" | ||
CXXFLAGS="$CFLAGS" | ||
LDFLAGS="$CFLAGS" | ||
if [ "$X264" ] | ||
then | ||
CFLAGS="$CFLAGS -I$X264/include" | ||
LDFLAGS="$LDFLAGS -L$X264/lib" | ||
fi | ||
if [ "$FDK_AAC" ] | ||
then | ||
CFLAGS="$CFLAGS -I$FDK_AAC/include" | ||
LDFLAGS="$LDFLAGS -L$FDK_AAC/lib" | ||
fi | ||
|
||
TMPDIR=${TMPDIR/%\/} $CWD/$SOURCE/configure \ | ||
--target-os=darwin \ | ||
--arch=$ARCH \ | ||
--cc="$CC" \ | ||
--ar="$AR" \ | ||
$CONFIGURE_FLAGS \ | ||
--extra-cflags="$CFLAGS" \ | ||
--extra-ldflags="$LDFLAGS" \ | ||
--prefix="$THIN/`basename $PWD`" \ | ||
|| exit 1 | ||
|
||
xcrun -sdk $XCRUN_SDK make -j3 install $EXPORT || exit 1 | ||
cd $CWD | ||
done | ||
fi | ||
|
||
if [ "$LIPO" ] | ||
then | ||
echo "building fat binaries..." | ||
mkdir -p $FAT/lib | ||
set - $ARCHS | ||
CWD=`pwd` | ||
cd $THIN/$1/lib | ||
for LIB in *.a | ||
do | ||
cd $CWD | ||
echo lipo -create `find $THIN -name $LIB` -output $FAT/lib/$LIB 1>&2 | ||
lipo -create `find $THIN -name $LIB` -output $FAT/lib/$LIB || exit 1 | ||
done | ||
|
||
cd $CWD | ||
cp -rf $THIN/$1/include $FAT | ||
fi | ||
|
||
echo Done |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,168 @@ | ||
#!/bin/sh | ||
|
||
# directories | ||
SOURCE="ffmpeg-3.2" | ||
FAT="FFmpeg-iOS" | ||
|
||
SCRATCH="scratch" | ||
# must be an absolute path | ||
THIN=`pwd`/"thin" | ||
|
||
# absolute path to x264 library | ||
X264=`pwd`/"x264-iOS-build-script/x264-iOS" | ||
|
||
echo "x264 path = $X264" | ||
|
||
#FDK_AAC=`pwd`/../fdk-aac-build-script-for-iOS/fdk-aac-ios | ||
|
||
LIBRTMP=`pwd`/librtmp/librtmp-iOS | ||
|
||
CONFIGURE_FLAGS="--enable-cross-compile --enable-debug --disable-programs \ | ||
--disable-doc --enable-pic" | ||
|
||
if [ "$X264" ] | ||
then | ||
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-gpl --enable-libx264" | ||
fi | ||
|
||
if [ "$FDK_AAC" ] | ||
then | ||
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libfdk-aac" | ||
fi | ||
|
||
if [ "$LIBRTMP" ] | ||
then | ||
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-protocol=librtmp --enable-librtmp" | ||
fi | ||
|
||
# avresample | ||
#CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-avresample" | ||
|
||
ARCHS="arm64 armv7 x86_64 i386" | ||
|
||
COMPILE="y" | ||
LIPO="y" | ||
|
||
DEPLOYMENT_TARGET="6.0" | ||
|
||
if [ "$*" ] | ||
then | ||
if [ "$*" = "lipo" ] | ||
then | ||
# skip compile | ||
COMPILE= | ||
else | ||
ARCHS="$*" | ||
if [ $# -eq 1 ] | ||
then | ||
# skip lipo | ||
LIPO= | ||
fi | ||
fi | ||
fi | ||
|
||
if [ "$COMPILE" ] | ||
then | ||
if [ ! `which yasm` ] | ||
then | ||
echo 'Yasm not found' | ||
if [ ! `which brew` ] | ||
then | ||
echo 'Homebrew not found. Trying to install...' | ||
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" \ | ||
|| exit 1 | ||
fi | ||
echo 'Trying to install Yasm...' | ||
brew install yasm || exit 1 | ||
fi | ||
if [ ! `which gas-preprocessor.pl` ] | ||
then | ||
echo 'gas-preprocessor.pl not found. Trying to install...' | ||
(curl -L https://github.com/libav/gas-preprocessor/raw/master/gas-preprocessor.pl \ | ||
-o /usr/local/bin/gas-preprocessor.pl \ | ||
&& chmod +x /usr/local/bin/gas-preprocessor.pl) \ | ||
|| exit 1 | ||
fi | ||
|
||
if [ ! -r $SOURCE ] | ||
then | ||
echo 'FFmpeg source not found. Trying to download...' | ||
curl http://www.ffmpeg.org/releases/$SOURCE.tar.bz2 | tar xj \ | ||
|| exit 1 | ||
fi | ||
|
||
CWD=`pwd` | ||
for ARCH in $ARCHS | ||
do | ||
echo "building $ARCH..." | ||
mkdir -p "$SCRATCH/$ARCH" | ||
cd "$SCRATCH/$ARCH" | ||
|
||
CFLAGS="-g -arch $ARCH" | ||
if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ] | ||
then | ||
PLATFORM="iPhoneSimulator" | ||
CFLAGS="$CFLAGS -mios-simulator-version-min=$DEPLOYMENT_TARGET" | ||
else | ||
PLATFORM="iPhoneOS" | ||
CFLAGS="$CFLAGS -mios-version-min=$DEPLOYMENT_TARGET" | ||
if [ "$ARCH" = "arm64" ] | ||
then | ||
EXPORT="GASPP_FIX_XCODE5=1" | ||
fi | ||
fi | ||
|
||
XCRUN_SDK=`echo $PLATFORM | tr '[:upper:]' '[:lower:]'` | ||
CC="xcrun -sdk $XCRUN_SDK clang" | ||
CXXFLAGS="$CFLAGS" | ||
LDFLAGS="$CFLAGS" | ||
if [ "$X264" ] | ||
then | ||
CFLAGS="$CFLAGS -I$X264/include" | ||
LDFLAGS="$LDFLAGS -L$X264/lib" | ||
fi | ||
if [ "$FDK_AAC" ] | ||
then | ||
CFLAGS="$CFLAGS -I$FDK_AAC/include" | ||
LDFLAGS="$LDFLAGS -L$FDK_AAC/lib" | ||
fi | ||
if [ "$LIBRTMP" ] | ||
then | ||
CFLAGS="$CFLAGS -I$LIBRTMP/include" | ||
LDFLAGS="$LDFLAGS -L$LIBRTMP/lib" | ||
fi | ||
|
||
TMPDIR=${TMPDIR/%\/} $CWD/$SOURCE/configure \ | ||
--target-os=darwin \ | ||
--arch=$ARCH \ | ||
--cc="$CC" \ | ||
$CONFIGURE_FLAGS \ | ||
--extra-cflags="$CFLAGS" \ | ||
--extra-ldflags="$LDFLAGS" \ | ||
--prefix="$THIN/$ARCH" \ | ||
|| exit 1 | ||
|
||
make -j3 install $EXPORT || exit 1 | ||
cd $CWD | ||
done | ||
fi | ||
|
||
if [ "$LIPO" ] | ||
then | ||
echo "building fat binaries..." | ||
mkdir -p $FAT/lib | ||
set - $ARCHS | ||
CWD=`pwd` | ||
cd $THIN/$1/lib | ||
for LIB in *.a | ||
do | ||
cd $CWD | ||
echo lipo -create `find $THIN -name $LIB` -output $FAT/lib/$LIB 1>&2 | ||
lipo -create `find $THIN -name $LIB` -output $FAT/lib/$LIB || exit 1 | ||
done | ||
|
||
cd $CWD | ||
cp -rf $THIN/$1/include $FAT | ||
fi | ||
|
||
echo Done |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
*.pnm -diff -text |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
language: c | ||
sudo: false | ||
os: | ||
- linux | ||
- osx | ||
addons: | ||
apt: | ||
packages: | ||
- yasm | ||
- diffutils | ||
compiler: | ||
- clang | ||
- gcc | ||
cache: | ||
directories: | ||
- ffmpeg-samples | ||
before_install: | ||
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew update --all; fi | ||
install: | ||
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew install yasm; fi | ||
script: | ||
- mkdir -p ffmpeg-samples | ||
- ./configure --samples=ffmpeg-samples --cc=$CC | ||
- make -j 8 | ||
- make fate-rsync | ||
- make check -j 8 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
# Note to Github users | ||
Patches should be submitted to the [ffmpeg-devel mailing list](https://ffmpeg.org/mailman/listinfo/ffmpeg-devel) using `git format-patch` or `git send-email`. Github pull requests should be avoided because they are not part of our review process and **will be ignored**. | ||
|
||
See [https://ffmpeg.org/developer.html#Contributing](https://ffmpeg.org/developer.html#Contributing) for more information. |
Oops, something went wrong.