Compiling with libvpx support
Objective
Build ffmpeg with libvpx support, on Linux, OSX and Windows7
Dependencies
libvorbis depends on libogg
(Optional) ffplay, if not disabled at configure time, will be built if libsdl is installed
Linux and OSX
Updated 2013-05-14
Systems Tested
Mac OSX 10.8.3
Ubuntu 12.04 (Linux kernel 3.2.5)
Tools Needed
git
tar / gzip
wget
a build environment
Begin
Note: Commands preceded by # (hash) should be invoked with root privileges, perhaps using sudo.
Create a workspace in $HOME:
mkdir ~/src
yasm
cd ~/src
git clone git://github.com/yasm/yasm.git
cd yasm
./autogen.sh
make
# make install
libogg
cd ~src
wget http://downloads.xiph.org/releases/ogg/libogg-1.3.0.tar.gz
tar xzvf libogg-1.3.0.tar.gz
cd libogg-1.3.0
./configure --disable-shared
make
# make install
libvorbis
cd ~/src
wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.3.tar.gz
tar xzvf libvorbis-1.3.3.tar.gz
cd libvorbis-1.3.3
./configure --disable-shared
make
# make install
libvpx
cd ~/src
git clone https://chromium.googlesource.com/webm/libvpx
cd libvpx
./configure
make
# make install
libsdl (optional)
cd ~/src
wget http://www.libsdl.org/release/SDL-1.2.15.tar.gz
tar xzvf SDL-1.2.15.tar.gz
cd SDL-1.2.15
./configure
make
# make install
ffmpeg
cd ~/src
git clone git://source.ffmpeg.org/ffmpeg.git
cd ffmpeg
./configure --enable-libvpx --enable-libvorbis
make
# make install
MS Windows 7
Updated 2013-05-16
Systems Tested
Windows 7 Home Premium 64-bit (SP1)
Tools Needed
python
git
MinGW/MSYS
wget
Python
Python doesn't ship with Windows 7, and configure scripts below will require it. Download and run a current Python 2.x installer:
Install Python for all users. Choose the default components. Install to c:\python27 or similar.
Add the Python executable to your $PATH:
Computer > Properties > Advanced system settings > Environment Variables ...
Locate and edit the System variable "Path". Append a semicolon (;) followed by the path to your python executable (perhaps c:\python27).
git
Download and run a current Git installer:
Choose the default components.
Choose "Run Git from the Windows Command Prompt".
Choose "Checkout as-is, commit Unix-style endings".
Last choice is important. FFmpeg won't build if git changes line endings to crlf.
MinGW/MSYS
Download and run the MinGW+MSYS installer mingw-get-inst:
http://sourceforge.net/projects/mingw/files/Installer/mingw-get-inst/
Install to c:\mingw. Choose the default C compiler, MSYS Basic System, and MinGW Developer Toolkit.
Begin
Launch a MinGW shell (Start > MinGW > MinGW Shell).
Create a workspace in $HOME:
mkdir ~/src
(This directory corresponds to C:\MinGW\msys\1.0\home\[username]\src)
wget
Install wget with the following command:
mingw-get install msys-wget
yasm
cd ~/src
git clone git://github.com/yasm/yasm.git
cd yasm
./autogen.sh --prefix=/mingw --target=x86_64-win64-gcc
make
make install
libogg
cd ~/src
wget http://downloads.xiph.org/releases/ogg/libogg-1.3.0.tar.gz
tar xzvf libogg-1.3.0.tar.gz
cd libogg-1.3.0
./configure --prefix=/mingw --target=x86_64-win64-gcc
make
make install
libvorbis
cd ~/src
wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.3.tar.gz
tar xzvf libvorbis-1.3.3.tar.gz
cd libvorbis-1.3.3
./configure --prefix=/mingw --target=x86_64-win64-gcc
make
make install
libvpx
cd ~/src
git clone https://chromium.googlesource.com/webm/libvpx
cd libvpx
./configure --prefix=/mingw --target=x86_64-win64-gcc
make
make install
libsdl (optional)
cd ~/src
wget http://www.libsdl.org/release/SDL-1.2.15.tar.gz
tar xzvf SDL-1.2.15.tar.gz
cd SDL-1.2.15
./configure --prefix=/mingw --target=x86_64-win64-gcc
make
make install
ffmpeg
cd ~/src
git clone git://source.ffmpeg.org/ffmpeg.git
cd ffmpeg
./configure --prefix=/mingw --target=x86_64-win64-gcc --enable-libvpx --enable-libvorbis
make
make install