Changes between Version 45 and Version 46 of CompilationGuide/Ubuntu


Ignore:
Timestamp:
Dec 22, 2012, 2:07:37 AM (7 years ago)
Author:
llogan
Comment:

alphabeticalize and cleanup; use "hash -r" as former method confused some users

Legend:

Unmodified
Added
Removed
Modified
  • CompilationGuide/Ubuntu

    v45 v46  
    33[[PageOutline(2, Contents)]]
    44
    5 This guide supports '''Ubuntu 12.10 (Quantal Quetzal)''', '''Ubuntu 12.04 (Precise Pangolin)''', and '''Ubuntu 11.10 (Oneiric Ocelot)'''. Separate guides are available for [wiki:UbuntuCompilationGuideLucid Ubuntu 10.04 (Lucid Lynx)] and [wiki:UbuntuCompilationGuideHardy Ubuntu 8.04 (Hardy Heron)]. This guide will provide the latest FFmpeg code and enable several external encoding and decoding libraries: ''fdk-aac'' (AAC encoder), ''libfaac'' (AAC encoder), ''libmp3lame'' (MP3 encoder), ''libopencore-amr'' (AMR encoder/decoder), ''librtmp'' (for additional RTMP protocols), ''libtheora'' (Theora encoder), ''libvorbis'' (Vorbis encoder), ''libvpx'' (VP8 encoder/decoder), and ''libx264'' (H.264 encoder). These are optional and may be omitted if desired. This guide will also install many filters, including the subtitles filter for hardcoding subtitles (see the filter list in the [wiki:FilteringGuide#ListofFilters Filtering Guide]).
     5This guide supports '''Ubuntu 12.10 (Quantal Quetzal)''', '''Ubuntu 12.04 (Precise Pangolin)''', and '''Ubuntu 11.10 (Oneiric Ocelot)'''. Separate guides are available for [wiki:UbuntuCompilationGuideLucid Ubuntu 10.04 (Lucid Lynx)] and [wiki:UbuntuCompilationGuideHardy Ubuntu 8.04 (Hardy Heron)]. This guide will provide the latest FFmpeg code and enable several external encoding and decoding libraries: ''fdk-aac'' (AAC encoder), ''libfaac'' (AAC encoder), ''libmp3lame'' (MP3 encoder), ''libopencore-amr'' (AMR encoder/decoder), ''librtmp'' (for additional RTMP protocols), ''libtheora'' (Theora encoder), ''libvorbis'' (Vorbis encoder), ''libvpx'' (VP8 encoder/decoder), and ''libx264'' (H.264 encoder). These are optional and may be omitted if desired. This guide will also install many filters, including the `subtitles` filter for hardcoding subtitles (see the filter list in the [wiki:FilteringGuide#ListofFilters Filtering Guide]).
    66
    77  '''Note:''' Copy and paste the whole code box for each step.
     
    1919{{{
    2020sudo apt-get update
    21 sudo apt-get -y install autoconf build-essential checkinstall git libfaac-dev libgpac-dev \
    22   libjack-jackd2-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev \
     21sudo apt-get -y install autoconf build-essential checkinstall git libass-dev libfaac-dev \
     22  libgpac-dev libjack-jackd2-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev \
    2323  librtmp-dev libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev \
    24   libx11-dev libxext-dev libxfixes-dev pkg-config texi2html yasm zlib1g-dev libass-dev
     24  libx11-dev libxext-dev libxfixes-dev pkg-config texi2html yasm zlib1g-dev
    2525}}}
    2626
     
    2828{{{
    2929sudo apt-get update
    30 sudo apt-get -y install autoconf build-essential checkinstall git libfaac-dev libgpac-dev \
    31   libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev librtmp-dev libtheora-dev \
    32   libtool libvorbis-dev pkg-config texi2html yasm zlib1g-dev libass-dev
     30sudo apt-get -y install autoconf build-essential checkinstall git libass-dev libfaac-dev \
     31  libgpac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev librtmp-dev \
     32  libtheora-dev libtool libvorbis-dev pkg-config texi2html yasm zlib1g-dev
    3333}}}
    3434
    3535== Installation ==
    36 === x264 ===#x264
     36=== x264 ===
    3737H.264 video encoder. The following commands will get the current source files, compile, and install x264. See the [wiki:x264EncodingGuide x264 Encoding Guide] for some usage examples.
    3838{{{
     
    4949  '''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`.
    5050
    51 === fdk-aac ===#fdk-aac
     51=== fdk-aac ===
    5252AAC audio encoder.
    5353{{{
     
    6464  '''Note:''' You can download a [https://github.com/mstorsjo/fdk-aac/zipball/master fdk-aac source snapshot] as an alternative to using `git`.
    6565
    66 === libvpx ===#libvpx
     66=== libvpx ===
    6767VP8 video encoder and decoder.
    6868{{{
     
    7878  '''Note:''' You can download a [http://code.google.com/p/webm/downloads/list libvpx source snapshot] as an alternative to using `git`.
    7979
     80=== opus (optional) ===
     81Opus audio encoder and decoder. Add `--enable-libopus` to your ffmpeg `./configure` line if you want to use this.
     82{{{
     83cd
     84git clone --depth 1 git://git.xiph.org/opus.git
     85cd opus
     86./autogen.sh
     87./configure --disable-shared
     88make
     89sudo checkinstall --pkgname=libopus --pkgversion="$(date +%Y%m%d%H%M)-git" --backup=no \
     90  --deldoc=yes --fstrans=no --default
     91}}}
     92
     93=== libaacplus (optional) ===
     94HE-AAC audio encoder. Add `--enable-libaacplus` to your ffmpeg `./configure` line if you want to use this.
     95{{{
     96sudo apt-get install -y libfftw3-dev automake unzip
     97cd
     98wget http://217.20.164.161/~tipok/aacplus/libaacplus-2.0.2.tar.gz
     99tar xzvf libaacplus-2.0.2.tar.gz
     100cd libaacplus-2.0.2
     101./autogen.sh --disable-shared --enable-static
     102make
     103sudo checkinstall --pkgname=libaacplus --pkgversion=2.0.2 --backup=no --deldoc=yes \
     104  --fstrans=no --default
     105}}}
     106
    80107=== FFmpeg ===#ffmpeg
    81108
     
    86113git clone --depth 1 git://source.ffmpeg.org/ffmpeg
    87114cd ffmpeg
    88 ./configure --enable-gpl --enable-libfaac --enable-libfdk-aac --enable-libmp3lame \
     115./configure --enable-gpl --enable-libass --enable-libfaac --enable-libfdk-aac --enable-libmp3lame \
    89116  --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-librtmp --enable-libtheora \
    90   --enable-libvorbis --enable-libvpx --enable-x11grab --enable-libx264 --enable-nonfree \
    91   --enable-version3 --enable-libass
     117  --enable-libvorbis --enable-libvpx --enable-x11grab --enable-libx264 --enable-nonfree --enable-version3
    92118make
    93119sudo checkinstall --pkgname=ffmpeg --pkgversion="7:$(date +%Y%m%d%H%M)-git" --backup=no \
    94120  --deldoc=yes --fstrans=no --default
    95 hash x264 ffmpeg ffplay ffprobe
     121hash -r
    96122}}}
    97123
    98124  '''Note 1:''' You can download the nightly [http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2 FFmpeg source snapshot] as an alternative to using `git`.
    99 
    100   '''Note 2:''' if you wish to add --enable-libaacplus to configure above you will need to first do this
    101 {{{
    102 $ wget http://217.20.164.161/~tipok/aacplus/libaacplus-2.0.2.tar.gz
    103 $ tar -xf libaacplus-2.0.2.tar.gz && cd libaacplus-2.0.2
    104 $ ./autogen.sh
    105 $ make
    106 $ sudo checkinstall --pkgname=libaacplus --pkgversion=2.0.2 --backup=no --deldoc=yes --fstrans=no --default
    107 $ sudo ldconfig
    108 }}}
    109  '''Note 3:''' To compile FFmpeg with '''opus''' support configure it with --enable-libopus.
    110                For Ubuntu 12.10 (Quantal Quetzal) onwards add '''libopus-dev''' to the dependencies.
    111 
    112                For earlier versions compile and install opus library instead.
    113 
    114                This method is OK:-
    115 {{{
    116 $ git clone --depth 1 git://git.xiph.org/opus.git
    117 $ cd opus && ./autogen.sh && ./configure --disable-shared
    118 $ make
    119 $ sudo checkinstall --pkgname=libopus --pkgversion="1.1.1+git$(date +%Y%m%d)" --backup=no --deldoc=yes --fstrans=no --default
    120 }}}
    121    
    122 
    123 
    124125
    125126== Finish ==
     
    158159sudo apt-get -y remove ffmpeg x264 libx264-dev libvpx-dev
    159160sudo apt-get update
    160 sudo apt-get -y install build-essential checkinstall git libfaac-dev libgpac-dev \
    161   libjack-jackd2-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev \
    162   librtmp-dev libsdl1.2-dev libtheora-dev libva-dev libvdpau-dev libvorbis-dev \
    163   libx11-dev libxext-dev libxfixes-dev texi2html yasm zlib1g-dev
     161sudo apt-get -y install build-essential checkinstall git libass-dev libfaac-dev \
     162  libgpac-dev libjack-jackd2-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev \
     163  librtmp-dev libsdl1.2-dev libtheora-dev libva-dev libvdpau-dev libvorbis-dev libx11-dev \
     164  libxext-dev libxfixes-dev texi2html yasm zlib1g-dev
    164165}}}
    165166
     
    201202To remove FFmpeg, x264, and other packages installed for this guide:
    202203{{{
    203 sudo apt-get -y autoremove autoconf build-essential checkinstall fdk-aac ffmpeg git libfaac-dev libgpac-dev \
    204   libjack-jackd2-dev libmp3lame-dev librtmp-dev libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev \
    205   libvorbis-dev libvpx libx11-dev libxfixes-dev pkg-config qt-faststart texi2html x264 yasm zlib1g-dev
    206 }}}
    207 Lastly, delete the `x264`, `fdk-aac`, `libvpx`, and `ffmpeg` directories in your home folder.
     204sudo apt-get -y autoremove autoconf automake build-essential checkinstall fdk-aac ffmpeg git libfaac-dev \
     205  libfftw3-dev libgpac-dev libjack-jackd2-dev libmp3lame-dev librtmp-dev libsdl1.2-dev libtheora-dev \
     206  libtool libva-dev libvdpau-dev libvorbis-dev libvpx libx11-dev libxfixes-dev pkg-config qt-faststart \
     207  texi2html x264 yasm zlib1g-dev
     208}}}
     209Lastly, delete the `x264`, `fdk-aac`, `libvpx`, `opus`, `libaacplus` and `ffmpeg` directories in your home folder.
    208210
    209211== If You Need Help ==