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:
- Cài trực tiếp từ repo có hỗ trợ.
- 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.
Lưu ý: các bạn có thể cài đặt HocVPS Script xong rồi cài đặt FFmpeg nhé, không có xung đột gì cả.
Rất chi tiết, phải login để cmt cảm ơn thớt.
Em đã cài theo cách 2. Giờ muốn xóa đi để cài lại theo cách 1 thì làm ntn ạ?
Có vẻ như bộ Code e hoạt động ngon hơn trên cách 1. 😀
Thanks a.
Vấn đề này mình không rõ rồi
Cho mình hỏi chút là vs centos 6 thì có thể cái ffpmeg được không
Mình nghĩ chắc là được
Mình gặp lỗi bảo mật (Encryption Error) là sau khi update đường dẫn cho việc xử lý video của FFMPEG trong file liên quan (config.php) mà chưa hiểu nguyên nhân.
Vậy mình nên edit file này rồi upload qua FTP hay thực hiện việc thay đổi qua Terminal hả Phương?
Cảm ơn bạn
Mình nghĩ là không liên quan. Bạn edit trực tiếp trên terminal thì lỗi đó vẫn xuất hiện chứ?
Trên Cent OS thì 1 thời điểm mình chỉ chạy được 1 lệnh ffmpeg duy nhất thôi đúng không ạ? Khác với Windows thì mình có thể tạo ra nhiều file .bat để chạy nhiều lệnh ffmpeg cùng 1 lúc ad nhỉ?
Về cơ bản là có bạn nhé, đa nhiệm
FFmpeg + Nginx thì bá phát. Thanks
em cài thành công trên vps centos rồi, ad có thể cho em thêm chỉ dẫn sử dụng được ffmpeg trong php được ko ạ? em muốn test code ffmpeg tạo thumb video trên web! cảm ơn ad nhiều
em ko cài được ffmpeg-php trên hocvps, mong ad giúp ạ
Bạn cài theo hướng dẫn nào. Gặp vấn đề ntn?
em cài theo HD này:
yum -y install git
git clone https://github.com/tony2001/ffmpeg-php.git
cd ffmpeg-php
phpize
./configure
make
make install
Lỗi báo:
[root@ffmpeg ffmpeg-php]# ./configure
checking for grep that handles long lines and -e… /bin/grep
checking for egrep… /bin/grep -E
checking for a sed that does not truncate output… /bin/sed
checking for cc… no
checking for gcc… no
configure: error: in `/home/ffmpeg-php’:
configure: error: no acceptable C compiler found in $PATH
See `config.log’ for more details.
[root@ffmpeg ffmpeg-php]# make
make: *** No targets specified and no makefile found. Stop.
checking for cc… no
checking for gcc… no
Bạn thiếu các trình biên dịch rồi. Đọc qua thì cần các trình biên dịch C thông thường. Bạn xem họ note những trình biên dịch gì
Hình như cái ffmpeg này có thể làm server stream video đó nhỉ
Uhm bạn. Có thể live stream video
xử lý video khá hay
ad có thể chỉ thêm các lệnh của ffmpeg không ak, ví dụ như chuyển đổi video, add thêm logo . nếu có script dự động upload video lên drive thì ok quá
Bạn tham khảo ffmpeg Documentation nhé