Skip to content

Instantly share code, notes, and snippets.

@masbog
Last active May 30, 2018 00:16
Show Gist options
  • Save masbog/2034304c7fb400b4d8f5 to your computer and use it in GitHub Desktop.
Save masbog/2034304c7fb400b4d8f5 to your computer and use it in GitHub Desktop.
Automation FFmpeg installation script ( https://trac.ffmpeg.org/wiki/CompilationGuide/Centos ) with all plugin and tested in Centos 7
#!/bin/bash
#!/bin/sh
rpm -Uvh http://dl.fedoraproject.org/pub/epel/beta/7/x86_64/epel-release-7-0.2.noarch.rpm &&
yum install autoconf automake gcc gcc-c++ git libtool make nasm pkgconfig zlib-devel freetype-devel speex-devel -y &&
mkdir ~/ffmpeg_sources &&
cd ~/ffmpeg_sources &&
curl -O http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz &&
tar xzvf yasm-1.3.0.tar.gz &&
cd yasm-1.3.0 &&
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" &&
make &&
make install &&
make distclean &&
export "PATH=$PATH:$HOME/bin" &&
cd ~/ffmpeg_sources &&
git clone --depth 1 git://git.videolan.org/x264 &&
cd x264 &&
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static &&
make &&
make install &&
make distclean &&
cd ~/ffmpeg_sources &&
git clone --depth 1 git://git.code.sf.net/p/opencore-amr/fdk-aac &&
cd fdk-aac &&
autoreconf -fiv &&
./configure --prefix="$HOME/ffmpeg_build" --disable-shared &&
make &&
make install &&
make distclean &&
cd ~/ffmpeg_sources &&
curl -L -O http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz &&
tar xzvf lame-3.99.5.tar.gz &&
cd lame-3.99.5 &&
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --disable-shared --enable-nasm &&
make &&
make install &&
make distclean &&
cd ~/ffmpeg_sources &&
curl -O http://downloads.xiph.org/releases/opus/opus-1.1.tar.gz &&
tar xzvf opus-1.1.tar.gz &&
cd opus-1.1 &&
./configure --prefix="$HOME/ffmpeg_build" --disable-shared &&
make &&
make install &&
make distclean &&
cd ~/ffmpeg_sources &&
curl -O http://downloads.xiph.org/releases/ogg/libogg-1.3.2.tar.gz &&
tar xzvf libogg-1.3.2.tar.gz &&
cd libogg-1.3.2 &&
./configure --prefix="$HOME/ffmpeg_build" --disable-shared &&
make &&
make install &&
make distclean &&
cd ~/ffmpeg_sources &&
curl -O http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.4.tar.gz &&
tar xzvf libvorbis-1.3.4.tar.gz &&
cd libvorbis-1.3.4 &&
./configure --prefix="$HOME/ffmpeg_build" --with-ogg="$HOME/ffmpeg_build" --disable-shared &&
make &&
make install &&
make distclean &&
cd ~/ffmpeg_sources &&
git clone --depth 1 https://chromium.googlesource.com/webm/libvpx.git &&
cd libvpx &&
./configure --prefix="$HOME/ffmpeg_build" --disable-examples &&
make &&
make install &&
make clean &&
cd ~/ffmpeg_sources &&
curl -O http://downloads.xiph.org/releases/theora/libtheora-1.1.1.tar.gz &&
tar xzvf libtheora-1.1.1.tar.gz &&
cd libtheora-1.1.1 &&
./configure --prefix="$HOME/ffmpeg_build" --with-ogg="$HOME/ffmpeg_build" --disable-examples --disable-shared --disable-sdltest --disable-vorbistest &&
make &&
make install &&
make distclean &&
cd ~/ffmpeg_sources &&
git clone --depth 1 git://source.ffmpeg.org/ffmpeg &&
cd ffmpeg &&
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" &&
export PKG_CONFIG_PATH &&
./configure --prefix="$HOME/ffmpeg_build" --extra-cflags="-I$HOME/ffmpeg_build/include" --extra-ldflags="-L$HOME/ffmpeg_build/lib" --bindir="$HOME/bin" --extra-libs=-ldl --enable-gpl --enable-nonfree --enable-libfdk_aac --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libfreetype --enable-libspeex --enable-libtheora &&
make &&
make install &&
make distclean &&
hash -r &&
. ~/.bash_profile
@masbog
Copy link
Author

masbog commented Aug 14, 2014

Result 💯

[root@myself ~]# ffmpeg
ffmpeg version git-2014-08-14-5c7899a Copyright (c) 2000-2014 the FFmpeg developers
built on Aug 14 2014 11:58:22 with gcc 4.8.2 (GCC) 20140120 (Red Hat 4.8.2-16)
configuration: --prefix=/root/ffmpeg_build --extra-cflags=-I/root/ffmpeg_build/include --extra-ldflags=-L/root/ffmpeg_build/lib --bindir=/root/bin --extra-libs=-ldl --enable-gpl --enable-nonfree --enable-libfdk_aac --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libfreetype --enable-libspeex --enable-libtheora
libavutil 54. 3.100 / 54. 3.100
libavcodec 56. 0.101 / 56. 0.101
libavformat 56. 1.100 / 56. 1.100
libavdevice 56. 0.100 / 56. 0.100
libavfilter 5. 0.100 / 5. 0.100
libswscale 3. 0.100 / 3. 0.100
libswresample 1. 0.100 / 1. 0.100
libpostproc 53. 0.100 / 53. 0.100
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...

Use -h to get full help or, even better, run 'man ffmpeg'
[root@myself ~]#

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment