FFMpeg has many command line options when it comes to converting files and therefore it is advisable to use it from the CLI. From there you can fine-tune its options using attributes and even learn how to create BASH scripts to make automatic conversion scripts.
In this tutorial you will learn:
- How to compile the ffmpeg source code from scrach
Software Requirements and Conventions Used
Category | Requirements, Conventions or Software Version Used |
---|---|
System | Red Hat Enterprise Linux 8 |
Software | N/A |
Other | Privileged access to your Linux system as root or via the sudo command. |
Conventions | # - requires given linux commands to be executed with root privileges either directly as a root user or by use of sudo command $ - requires given linux commands to be executed as a regular non-privileged user |
Compile ffmpeg from Git
You can retrieve theffmpeg
source code from Git and compile it yourself. First make sure you have the necessary development packages installed: $ su -
# dnf groupinstall "Development Tools"Be sure to also install Git so we'll have something to grab the source code with:
$ sudo dnf install gitNow you can download the
ffmpeg
Git source: $ git clone https://git.ffmpeg.org/ffmpeg.git ffmpegAfter all is done you will have to navigate to the freshly-downloaded
ffmpeg
source code directory $ cd ffmpegand prepare to compile the source code:
$ ./configureYou can bypass the optional
nasm
dependency with $ ./configure --disable-x86asmNext type
$ makein the same CLI window you just configured
ffmpeg
to be compiled. After ffmpeg
is done compiling (and it may take a while, depending on the power of your system) you can finally install the binary and configuration files you have just compiled by issuing $ sudo make install
Conclusion
Compiling the source from Git is a sure way to getffmpeg
installed in RHEL 8 / CentOS 8, regardless of the version number subpoints. Using the RHEL 8 / CentOS 8 "Development Tools" packages and git
the source code to ffmpeg
compiles cleanly, without required dependencies.