FFMPEG is a major multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play various audio and video files in different formats. FFMPEG is a very fast video and audio converter that can also grab from a live audio/video source. It can also convert between arbitrary sample rates and re-size video on the fly with a high quality polyphase filter. It is supported by various library files like libavcodec, libavutil, libavformat, libavfilter, libavdevice, libswscale and libswresample.
libavcodec -an audio/video codec library
libavutil- utility library to aid portable multimedia programming
libavformat- library which provides framework for multiplexing and multiplexing video/audio and subtitle streams
libavfilter -library which enhances a generic audio/video filtering
libavdevice- library which provides a framework grabbing from and rendering to many common multimedia input/output devices framework
libswscale- library enhancing highly optimized image scaling and colorspace and pixel format conversion operations
libswresample- library promoting audio resampling, rematrixing and sample format conversion operations
In short, it is a free software available with libraries and programs to handle multimedia data. It can also be used as a commandline tool in PHP and other programming languages for transcoding multimedia files.
Installation Steps for FFMPEG
1. Enable Nux Dextop repo on CentOS 7
yum -y install epel-release
rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm
2. Install FFMPEG and FFMPEG devel packages
yum -y install ffmpeg ffmpeg-devel
3. Check and confirm FFMPEG version
ffmpeg
man ffmpeg