Changes between Version 74 and Version 75 of CompilationGuide/Ubuntu


Ignore:
Timestamp:
Jun 5, 2013, 7:53:12 AM (6 years ago)
Author:
llogan
Comment:

re-organize to suit all supported ubuntu releases

Legend:

Unmodified
Added
Removed
Modified
  • CompilationGuide/Ubuntu

    v74 v75  
    33[[PageOutline(2, Contents)]]
    44
    5 This guide for '''Ubuntu 13.04 Raring Ringtail''', '''Debian 7.0 Wheezy''', and '''Linux Mint 15 Olivia''' will provide a local install of the latest FFmpeg tools and libraries including several external encoding and decoding libraries (codecs). This will not provide a system installation and therefore will not interfere with anything such as repository packages. See [[UbuntuCompilationGuide?version=59|these instructions]] if you prefer a system installation, and recent [http://ffmpeg.org/download.html#LinuxBuilds static builds] are also available for lazy people or those who are unable to compile.
    6 
    7 Separate guides are available for:
    8 * [[UbuntuCompilationGuideQuantal|Ubuntu 12.10 Quantal Quetzal]]
    9 * [[UbuntuCompilationGuideQuantal|Ubuntu 12.04 Precise Pangolin]]
    10 * [[UbuntuCompilationGuideQuantal|Ubuntu 11.10 Oneiric Ocelot]]
    11 * [[UbuntuCompilationGuideLucid|Ubuntu 10.04 Lucid Lynx]]
    12 * [[UbuntuCompilationGuideHardy|Ubuntu 8.04 Hardy Heron]]
     5This guide for supported releases of '''Ubuntu''', '''Debian''', and '''Linux Mint''' will provide a local install of the latest FFmpeg tools and libraries including several external encoding and decoding libraries (codecs). This will not provide a system installation and therefore will not interfere with anything such as repository packages. Recent [http://ffmpeg.org/download.html#LinuxBuilds static builds] are also available for lazy people or those who are unable to compile.
    136
    147----
     
    2013{{{
    2114sudo apt-get update
    22 sudo apt-get -y install autoconf automake build-essential git libass-dev libgpac-dev libmp3lame-dev \
    23   libopus-dev libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libvpx-dev \
    24   libx11-dev libxext-dev libxfixes-dev pkg-config texi2html zlib1g-dev
     15sudo apt-get -y install autoconf automake build-essential git libass-dev libgpac-dev \
     16  libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libx11-dev \
     17  libxext-dev libxfixes-dev pkg-config texi2html zlib1g-dev
    2518mkdir ~/ffmpeg_sources
    2619}}}
    2720
    28 Server or headless users can omit: `libsdl1.2-dev libva-dev libvdpau-dev libx11-dev libxext-dev libxfixes-dev`.
     21* Server users can omit the ffplay and x11 dependencies: `libsdl1.2-dev libva-dev libvdpau-dev libx11-dev libxext-dev libxfixes-dev`.
     22* Ubuntu 10.04 Lucid users will need to install the `git-core` package instead of the `git` package. Lucid lacks the packages `libva-dev` and `libvdpau-dev`. These can be ignored.
    2923
    3024----
     
    3226== Compilation & Installation ==
    3327
     28One advantage to compiling is that you can build ffmpeg to your liking. If you do not require certain encoders you may skip the relevant section and then remove the appropriate `./configure` option in FFmpeg. For example, if libopus is not needed, then skip that section and then remove `--enable-libopus` from the [#ffmpeg Install FFmpeg] section.
     29
    3430=== Yasm ===
    35 Yasm is an assembler used by x264 and FFmpeg. Ubuntu and Mint users can simply install it from the repository. Debian users need to compile Yasm because the version in the repository is too old.
    36 
    37 ==== Ubuntu & Mint ====
    38 {{{
    39 sudo apt-get install yasm
    40 }}}
    41 
    42 ==== Debian ====
     31
     32Yasm is an assembler used by x264 and FFmpeg.
     33
     34Ubuntu 13.04 and Mint 15 users can alternatively install the `yasm` package from the repository instead of compiling.
     35
    4336{{{
    4437cd ~/ffmpeg_sources
     
    5548=== x264 ===
    5649
    57 H.264 video encoder. The following commands will get the current source files, compile, and install x264. See the [[x264EncodingGuide|x264 Encoding Guide]] for some usage examples.
     50H.264 video encoder. See the [[x264EncodingGuide|x264 Encoding Guide]] for more information and examples.
    5851
    5952{{{
     
    6154git clone --depth 1 git://git.videolan.org/x264.git
    6255cd x264
    63 ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static
    64 make
    65 make install
    66 make distclean
    67 }}}
    68 
    69 x264 can accept more inputs via `lavf` if it is compiled again after you compile ffmpeg. This is not a necessary step but is useful if you plan on directly using the x264 binary.
     56./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static
     57make
     58make install
     59make distclean
     60}}}
    7061
    7162  '''Note:''' You can download the nightly [ftp://ftp.videolan.org/pub/x264/snapshots/last_x264.tar.bz2 x264 source snapshot] as an alternative to using `git`.
     
    7364=== fdk-aac ===
    7465
    75 AAC audio encoder.
     66AAC audio encoder. See the [[AACEncodingGuide|AAC Encoding Guide]] for more information and examples.
    7667
    7768{{{
     
    8778
    8879  '''Note:''' You can download a [https://github.com/mstorsjo/fdk-aac/zipball/master fdk-aac source snapshot] as an alternative to using `git`.
     80
     81=== libmp3lame ===
     82
     83MP3 audio encoder.
     84
     85Most users can install the repository package:
     86
     87{{{
     88sudo apt-get install libmp3lame-dev
     89}}}
     90
     91
     92Ubuntu 10.04 and Debian Squeeze users must compile:
     93
     94{{{
     95sudo apt-get install nasm
     96cd ~/ffmpeg_sources
     97wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz
     98tar xzvf lame-3.99.5.tar.gz
     99cd lame-3.99.5
     100./configure --enable-nasm --disable-shared
     101make
     102make install
     103make distclean
     104}}}
     105
     106=== libopus ===
     107
     108Opus audio decoder and encoder.
     109
     110Ubuntu 13.04 and Mint 15 users can alternatively install the `libopus-dev` package from the repository instead of compiling.
     111
     112{{{
     113cd ~/ffmpeg_sources
     114wget http://downloads.xiph.org/releases/opus/opus-1.0.2.tar.gz
     115tar xzvf opus-1.0.2.tar.gz
     116cd opus-1.0.2
     117./configure --prefix="$HOME/ffmpeg_build" --disable-shared
     118make
     119make install
     120make distclean
     121}}}
     122
     123=== libvpx ===
     124
     125VP8/VP9 video encoder and decoder. See the [[vpxEncodingGuide|vpx (WebM) Encoding Guide]] for more information and examples.
     126
     127Ubuntu 13.04 and Mint 15 users can alternatively install the `libvpx-dev` package from the repository instead of compiling.
     128
     129{{{
     130cd ~/ffmpeg_sources
     131git clone --depth 1 http://git.chromium.org/webm/libvpx.git
     132cd libvpx
     133./configure --prefix="$HOME/ffmpeg_build" --disable-examples
     134make
     135make install
     136make clean
     137}}}
     138
     139  '''Note:''' You can download a [http://code.google.com/p/webm/downloads/list libvpx source snapshot] as an alternative to using `git`.
    89140
    90141=== ffmpeg ===
     
    124175----
    125176
    126 == Updating FFmpeg (Ubuntu Desktop) ==#update
    127 
    128 Development of FFmpeg and x264 is active and an occasional update can give you new features and bug fixes. First, remove (or move) the old files and then update the dependencies:
     177== Updating FFmpeg ==#update
     178
     179Development of FFmpeg is active and an occasional update can give you new features and bug fixes. First, remove (or move) the old files and then update the dependencies:
    129180
    130181{{{
    131182rm -rf ~/ffmpeg_build ~/bin/{ffmpeg,ffplay,ffprobe,ffserver,x264}
    132183sudo apt-get update
    133 sudo apt-get -y install autoconf automake build-essential git libass-dev libgpac-dev libmp3lame-dev \
    134   libopus-dev libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libvpx-dev \
    135   libx11-dev libxext-dev libxfixes-dev pkg-config texi2html zlib1g-dev
    136 }}}
     184sudo apt-get -y install autoconf automake build-essential git libass-dev libgpac-dev \
     185  libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libx11-dev \
     186  libxext-dev libxfixes-dev pkg-config texi2html zlib1g-dev
     187}}}
     188
     189Server users can omit: `libsdl1.2-dev libva-dev libvdpau-dev libx11-dev libxext-dev libxfixes-dev`.
    137190
    138191=== x264 ===
     
    156209Now run `./configure`, `make`, and `make install` as shown in the [#fdk-aac Install fdk-aac] section.
    157210
     211=== libvpx ===
     212
     213{{{
     214cd ~/ffmpeg_sources/libvpx
     215make clean
     216git pull
     217}}}
     218
     219Now run `./configure`, `make`, and `make install` as shown in the [#libvpx Install libvpx] section.
     220
    158221=== ffmpeg ===
    159222
     
    169232
    170233== Reverting Changes Made by This Guide ==
     234
    171235To remove ffmpeg, x264, and dependencies installed for this guide:
    172236{{{
     
    181245
    182246== If You Need Help ==
    183 Feel free to ask your questions at the #ffmpeg IRC channel or the [http://ffmpeg.org/contact.html ffmpeg-user] mailing list.
     247
     248Feel free to ask questions at the #ffmpeg IRC channel or the [http://ffmpeg.org/contact.html ffmpeg-user] mailing list.
    184249
    185250----
    186251
    187252== Also See ==
     253
    188254* [[x264EncodingGuide|x264 Encoding Guide]]
    189255* [[AACEncodingGuide|AAC Encoding Guide]]
     256
     257=== External Links ===
     258
    190259* [http://ubuntuforums.org/showthread.php?t=2141949 Howto: Compile the development version of VLC under the latest Ubuntu release]
     260* [http://ubuntuforums.org/showthread.php?t=2149564 Howto: Build the svn MPlayer under the latest release version of Ubuntu]
    191261
    192262{{{#!comment
    193263* Make man pages actually work
    194264* Make datadir location (the presets, etc) less useless
    195 }}}
     265
     266FAQ Section
     267How do I perform a "system" install of ffmpeg?
     268What version of Ubuntu am I using?
     269}}}