Changes between Version 45 and Version 46 of CompilationGuide/Ubuntu


Ignore:
Timestamp:
Dec 22, 2012, 2:07:37 AM (6 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 ==