Cài đặt FFMpeg trên CentOS 7

Nhân dịp làm dịch vụ cài đặt FFMpeg trên server CentOS cho khách hàng, mình có note lại các bước thao tác để sau này có bạn nào cần thì dùng luôn.

FFmpeg là một ứng dụng dùng để convert file audio và video trên Linux. Compile ffmpeg từ source code khá phức tạp, sau đây mình sẽ giới thiệu với các bạn 2 cách cài đặt:

  1. Cài trực tiếp từ repo có hỗ trợ.
  2. Cài đặt bằng phiên bản prebuilt.

Nếu cần phiên bản FFmpeg mới, bạn nên sử dụng theo cách thứ 2 cài bằng bản prebuilt.

FFprobe mặc định được cài kèm với FFmpeg nên bạn không cần quan tâm đến nhé.

1. Cài đặt FFmpeg từ repository

Repo có hỗ trợ FFmpeg rất ít, có thể nói là hiếm luôn và thường sẽ là phiên bản cũ. Ở đây mình giới thiệu repo Nux Dextop, bản mới nhất là 2.6.8.

Đầu tiên cài đặt epel-release

yum -y install epel-release

Cài đặt nux repo

rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

Cài đặt ffmpeg và ffmpeg-devel packages

yum install ffmpeg ffmpeg-devel -y

Kiểm tra lại cài đặt

# ffmpeg -version
ffmpeg version 2.6.8 Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-4)
configuration: --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib64 --mandir=/usr/share/man --arch=x86_64 --optflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic' --enable-bzlib --disable-crystalhd --enable-gnutls --enable-ladspa --enable-libass --enable-libcdio --enable-libdc1394 --enable-libfaac --enable-nonfree --enable-libfdk-aac --enable-nonfree --disable-indev=jack --enable-libfreetype --enable-libgsm --enable-libmp3lame --enable-openal --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libv4l2 --enable-libx264 --enable-libx265 --enable-libxvid --enable-x11grab --enable-avfilter --enable-avresample --enable-postproc --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib64 --enable-runtime-cpudetect
libavutil 54. 20.100 / 54. 20.100
libavcodec 56. 26.100 / 56. 26.100
libavformat 56. 25.101 / 56. 25.101
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 11.102 / 5. 11.102
libavresample 2. 1. 0 / 2. 1. 0
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 3.100 / 53. 3.100

2. Cài đặt FFmpeg từ phiên bản prebuilt

Tải về script cài đặt

wget https://raw.githubusercontent.com/q3aql/ffmpeg-install/master/ffmpeg-install

Cấp quyền executable

chmod a+x ffmpeg-install

Tiến hành cài đặt

./ffmpeg-install --install release

Kiểm tra lại kết quả, phiên bản mới nhất là 3.4.1

# ffmpeg -version
ffmpeg version 3.4.1-static https://johnvansickle.com/ffmpeg/ Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 6.4.0 (Debian 6.4.0-10) 20171112
configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --cc=gcc-6 --enable-fontconfig --enable-frei0r --enable-gnutls --enable-gray --enable-libfribidi --enable-libass --enable-libvmaf --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librubberband --enable-librtmp --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libzimg
libavutil 55. 78.100 / 55. 78.100
libavcodec 57.107.100 / 57.107.100
libavformat 57. 83.100 / 57. 83.100
libavdevice 57. 10.100 / 57. 10.100
libavfilter 6.107.100 / 6.107.100
libswscale 4. 8.100 / 4. 8.100
libswresample 2. 9.100 / 2. 9.100
libpostproc 54. 7.100 / 54. 7.100

Vậy là xong, đơn giản vậy thôi.