FFmpeg je populární knihovna pro převod/zpracování videa a zvuku, spolu s rozšířením PHP-FFmpeg vám pomůže vytvořit výkonné webové aplikace pro video během několika minut. FFmpeg také dokáže převádět multimédia za chodu a aplikovat výkonné filtry na vaše audio a video soubory.
Důležité:tato metoda by měla fungovat pro prostý CentOS 6.xa 7.x bez cPanelu, stačí upravit správný soubor php.ini (obvykle umístěný na /etc/php.ini) při načítání php-ffmpeg rozšíření
Nainstalujte FFmpeg a rozšíření PHP-FFmpeg
Někdy může být tento instalační proces obtížný nebo můžete při kompilaci najít spoustu chyb, pokud používáte zdrojový kód, nicméně pro instalaci ffmpeg použijeme soubory rpm a zkompilujeme pouze rozšíření php-ffmpeg. Začněme.
Nainstalujte Dag repo
Vytvořte nový soubor s názvem dag.repo v úložištích yum:
nano -w /etc/yum.repos/dag.repo
Vložte to dovnitř přesně tak, jak to vidíte:
[dag] name=DAG RPM Repository baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag gpgcheck=1 enabled=1
Importujte Dagův klíč GPG
rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt
Nainstalujte balíček libdc1394:
yum install libdc1394-devel
Nainstalujte balíčky ffmpeg a ffmpeg-devel:
yum -y install ffmpeg ffmpeg-devel
Otestujte FFMPEG
Měli byste vidět tento druh výstupu:
[[email protected]:~]ffmpeg -version ffmpeg version 2.2.1 built on Apr 13 2014 13:00:18 with gcc 4.4.6 (GCC) 20120305 (Red Hat 4.4.6-4) configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/man --enable-shared --enable-runtime-cpudetect --enable-gpl --enable-version3 --enable-postproc --enable-avfilter --enable-pthreads --enable-x11grab --enable-vdpau --disable-avisynth --enable-frei0r --enable-libopencv --enable-libdc1394 --enable-libgsm --enable-libmp3lame --enable-libnut --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --extra-cflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fPIC' --disable-stripping libavutil 52. 66.100 / 52. 66.100 libavcodec 55. 52.102 / 55. 52.102 libavformat 55. 33.100 / 55. 33.100 libavdevice 55. 10.100 / 55. 10.100 libavfilter 4. 2.100 / 4. 2.100 libswscale 2. 5.102 / 2. 5.102 libswresample 0. 18.100 / 0. 18.100 libpostproc 52. 3.100 / 52. 3.100
Nyní začněme rozšířením php-ffmpeg, které vám umožní manipulovat s videem a zvukem prostřednictvím programovacího jazyka PHP:
Zálohujte svůj aktuální soubor php.ini
cp /usr/local/lib/php.ini /usr/local/lib/php.ini.backup
Nainstalujte Git
yum -y install git
Stáhněte a zkompilujte
cd /root/ git clone https://github.com/tony2001/ffmpeg-php.git cd ffmpeg-php phpize ./configure make make install
Upravte svůj php.ini
nano -w /usr/local/lib/php.ini
Na konec souboru přidejte příponu, aby ji PHP mohlo načíst:
extension="ffmpeg.so"
Uložte soubor a restartujte httpd pro použití změn:
service httpd restart
Otestujte to:
php -i | grep ffmpeg
To by vám mělo poskytnout velký výstup, jako je tento:
[[email protected]:~]php -i | grep ffmpeg ffmpeg ffmpeg-php version => 0.7.0 ffmpeg-php built on => Aug 4 2015 23:38:38 ffmpeg-php gd support => disabled ffmpeg libavcodec version => Lavc55.52.102 ffmpeg libavcodec license => GPL version 3 or later ffmpeg libavformat version => Lavf55.33.100 ffmpeg libavformat license => GPL version 3 or later ffmpeg swscaler version => SwS2.5.102 ffmpeg swscaler license => GPL version 3 or later
Jak mohu převést soubor videa?
Ve skutečnosti je to docela snadné, přesně takhle:
$ ffmpeg -i input.mp4 output.avi
Další čtení:
- Oficiální dokumentace FFMPEG
- Příklady PHP-FFMPEG