This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
build_ffmpeg_linux [2014/01/08 08:52] will Added more details about which version of ffmpeg source to use |
build_ffmpeg_linux [2017/02/12 15:56] (current) cmd [Overview] |
||
|---|---|---|---|
| Line 2: | Line 2: | ||
| ====Overview==== | ====Overview==== | ||
| - | This guide aims to provide the details on building the latest version of [[http:// | + | This guide aims to [[http:// |
| Line 19: | Line 19: | ||
| ====Build Procedure==== | ====Build Procedure==== | ||
| - | The below process is written by Serviio users. It will replace all existing libraries and tools with the new ones. | + | The below process is written by Serviio users [[http:// |
| - | You can also follow a [[http:// | + | You can also follow a [[http:// |
| ===Remove Existing Versions of Packages=== | ===Remove Existing Versions of Packages=== | ||
| Line 45: | Line 45: | ||
| ===Yasm=== | ===Yasm=== | ||
| - | Yasm is an assembler and is recommended for x264 and FFmpeg. Version 1.2 is required to build the latest x264 and FFmpeg sources. | + | Yasm is an assembler and is recommended for x264 and FFmpeg. Version 1.3 is required to build the latest x264 and FFmpeg sources. |
| < | < | ||
| Line 51: | Line 51: | ||
| mkdir src | mkdir src | ||
| cd src | cd src | ||
| - | wget http:// | + | wget http:// |
| - | tar xzvf yasm-1.2.0.tar.gz | + | tar xzvf yasm-1.3.0.tar.gz |
| - | cd yasm-1.2.0 | + | cd yasm-1.3.0 |
| ./configure | ./configure | ||
| make | make | ||
| - | sudo checkinstall --pkgname=yasm --pkgversion=" | + | sudo checkinstall --pkgname=yasm --pkgversion=" |
| --deldoc=yes --fstrans=no --default | --deldoc=yes --fstrans=no --default | ||
| </ | </ | ||
| Line 68: | Line 68: | ||
| < | < | ||
| - | cd src | + | cd ~/src |
| git clone git:// | git clone git:// | ||
| cd x264 | cd x264 | ||
| Line 78: | Line 78: | ||
| </ | </ | ||
| - | **NOTE:** New version of x264 contains by default support of OpenCL. If not installed or without sense (example Ubuntu 12.04LTS on VMWare) add to configure additional option --disable-opencl. Without this option ffmpeg could not be configured (ERROR: libx264 not found). | + | **NOTE:** New version of x264 contains by default support of OpenCL. If not installed or without sense (example Ubuntu 12.04LTS on VMWare) add to configure additional option --disable-opencl. |
| + | |||
| + | < | ||
| + | ./configure --disable-opencl | ||
| + | </ | ||
| + | Without this option ffmpeg could not be configured (ERROR: libx264 not found). | ||
| ===Build and Install librtmp=== | ===Build and Install librtmp=== | ||
| Line 109: | Line 114: | ||
| Else, to use the version that Serviio ships with | Else, to use the version that Serviio ships with | ||
| < | < | ||
| - | wget http:// | + | wget http:// |
| - | tar xvf ffmpeg-N-54096-ge41bf19.tar.gz | + | bzip2 -d ffmpeg-2.4.x.tar.bz2 |
| + | tar xvf ffmpeg-2.4.x.tar | ||
| </ | </ | ||
| Line 133: | Line 139: | ||
| < | < | ||
| cd ~/src | cd ~/src | ||
| - | git clone http://git.chromium.org/ | + | git clone https:// |
| cd libvpx | cd libvpx | ||
| ./configure | ./configure | ||
| Line 146: | Line 152: | ||
| </ | </ | ||
| to the long ./configure command | to the long ./configure command | ||
| - | |||
| ====Add Additional Support to x264 (Lavf)==== | ====Add Additional Support to x264 (Lavf)==== | ||
| Line 164: | Line 169: | ||
| ====Conclusion==== | ====Conclusion==== | ||
| - | At this point, FFmpeg is installed and Serviio should now use the newly built version. Please visit the [[http:// | + | At this point, FFmpeg is installed and Serviio should now use the newly built version. Please visit the [[http:// |
| + | |||
| + | ====Note==== | ||
| + | If you receive error: | ||
| + | **ffmpeg: error while loading shared libraries: librtmp.so.1: | ||
| + | |||
| + | Then do as follows | ||
| + | |||
| + | sudo nano / | ||
| + | |||
| + | Add the following line to the file | ||
| + | |||
| + | < | ||
| + | |||
| + | Save the file < | ||
| + | |||
| + | Now enter: sudo ldconfig | ||
| + | |||
| + | Now reboot machine: sudo reboot | ||
| ~~NOTOC~~ | ~~NOTOC~~ | ||