Last active
February 17, 2016 15:14
-
-
Save toddp/9c5d3feecc1f2c97549e to your computer and use it in GitHub Desktop.
downloads and compiles ffmpeg and its dependencies
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
#!/usr/bin/env bash | |
# builds FFMPEG and its dependencies | |
# as needed for Serviio | |
# http://wiki.serviio.org/doku.php?id=build_ffmpeg_linux | |
echo "include /usr/local/lib/" >> /etc/ld.so.conf | |
echo 'you may need to reboot, just added include to your ld.so.conf' | |
ldconfig | |
sudo apt-get remove ffmpeg x264 libx264-dev libvpx-dev librtmp0 librtmp-dev | |
sudo apt-get update | |
sudo apt-get install build-essential checkinstall git libfaac-dev libjack-jackd2-dev \ | |
libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libsdl1.2-dev libtheora-dev \ | |
libva-dev libvdpau-dev libvorbis-dev libx11-dev libxfixes-dev texi2html zlib1g-dev \ | |
libssl1.0.0 libssl-dev libxvidcore-dev libxvidcore4 libass-dev | |
#### YASM | |
cd ~ | |
mkdir src | |
cd src | |
wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz | |
tar xzvf yasm-1.2.0.tar.gz | |
cd yasm-1.2.0 | |
./configure | |
make | |
sudo checkinstall --pkgname=yasm --pkgversion="1.2.0" --backup=no \ | |
--deldoc=yes --fstrans=no --default | |
### x264 LIB | |
cd ~/src | |
git clone git://git.videolan.org/x264 | |
cd x264 | |
./configure --enable-static --disable-opencl | |
make | |
sudo checkinstall --pkgname=x264 --pkgversion="3:$(./version.sh | \ | |
awk -F'[" ]' '/POINT/{print $4"+git"$5}')" --backup=no --deldoc=yes \ | |
--fstrans=no --default | |
#### LIBRTEMP | |
cd ~/src | |
git clone git://git.ffmpeg.org/rtmpdump | |
cd rtmpdump | |
make SYS=posix | |
sudo checkinstall --pkgname=rtmpdump --pkgversion="2:$(date +%Y%m%d%H%M)-git" --backup=no \ | |
--deldoc=yes --fstrans=no --default | |
#### FFMPEG | |
cd ~/src | |
git clone --depth 1 git://git.videolan.org/ffmpeg | |
wget http://download.serviio.org/opensource/ffmpeg-N-54096-ge41bf19.tar.gz | |
tar xvf ffmpeg-N-54096-ge41bf19.tar.gz | |
cd ffmpeg | |
./configure --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb \ | |
--enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 \ | |
--enable-nonfree --enable-postproc --enable-version3 --enable-x11grab --enable-librtmp \ | |
--enable-libxvid --enable-libass | |
make | |
sudo checkinstall --pkgname=ffmpeg --pkgversion="99:$(date +%Y%m%d%H%M)-git" --backup=no \ | |
--deldoc=yes --fstrans=no --default | |
### LIBVPX | |
cd ~/src | |
git clone https://chromium.googlesource.com/webm/libvpx | |
cd libvpx | |
./configure | |
make | |
sudo checkinstall --pkgname=libvpx --pkgversion="1:$(date +%Y%m%d%H%M)-git" --backup=no \ | |
--deldoc=yes --fstrans=no --default | |
## rebuild FFMPEG | |
cd ~/src | |
cd ffmpeg | |
./configure --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb \ | |
--enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 \ | |
--enable-nonfree --enable-postproc --enable-version3 --enable-x11grab --enable-librtmp \ | |
--enable-libxvid --enable-libass --enable-libvpx | |
make | |
sudo checkinstall --pkgname=ffmpeg --pkgversion="99:$(date +%Y%m%d%H%M)-git" --backup=no \ | |
--deldoc=yes --fstrans=no --default | |
## rebuild x264 | |
sudo apt-get remove x264 | |
cd ~/src/x264 | |
rm *.deb | |
make distclean | |
./configure --enable-static | |
make | |
sudo checkinstall --pkgname=x264 --pkgversion="3:$(./version.sh | \ | |
awk -F'[" ]' '/POINT/{print $4"+git"$5}')" --backup=no --deldoc=yes \ | |
--fstrans=no --default |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment