FFmpeg è una popolare libreria di conversione/elaborazione video e audio, insieme all'estensione PHP-FFmpeg può aiutarti a creare potenti app Web video in pochi minuti. FFmpeg può anche convertire file multimediali al volo e applicare potenti filtri ai tuoi file audio e video.
Importante:questo metodo dovrebbe funzionare con CentOS 6.xe 7.x semplici senza cPanel, devi solo modificare il file php.ini corretto (di solito situato in /etc/php.ini) durante il caricamento di php-ffmpeg estensione
Installa FFmpeg e l'estensione PHP-FFmpeg
A volte questo processo di installazione può essere difficile o potresti trovare molti errori durante la compilazione se stai usando il codice sorgente, tuttavia utilizzeremo i file rpm per l'installazione di ffmpeg e compileremo solo l'estensione php-ffmpeg. Cominciamo.
Installa il repository Dag
Crea un nuovo file chiamato dag.repo all'interno dei repository yum:
nano -w /etc/yum.repos/dag.repo
Incollalo all'interno esattamente come lo vedi:
[dag] name=DAG RPM Repository baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag gpgcheck=1 enabled=1
Importa la chiave GPG di Dag
rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt
Installa il pacchetto libdc1394:
yum install libdc1394-devel
Installa i pacchetti ffmpeg e ffmpeg-devel:
yum -y install ffmpeg ffmpeg-devel
Prova FFMPEG
Dovresti vedere questo tipo di output:
[[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
Ora iniziamo con l'estensione php-ffmpeg, che ti permetterà di manipolare video e audio tramite il linguaggio di programmazione PHP:
Effettua il backup del tuo attuale file php.ini
cp /usr/local/lib/php.ini /usr/local/lib/php.ini.backup
Installa Git
yum -y install git
Scarica e compila
cd /root/ git clone https://github.com/tony2001/ffmpeg-php.git cd ffmpeg-php phpize ./configure make make install
Modifica il tuo php.ini
nano -w /usr/local/lib/php.ini
Alla fine del file, aggiungi l'estensione in modo che PHP possa caricarlo:
extension="ffmpeg.so"
Salva il file e riavvia httpd per applicare le modifiche:
service httpd restart
Provalo:
php -i | grep ffmpeg
Questo dovrebbe darti un grande risultato come questo:
[[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
Come posso convertire un file video?
In effetti è abbastanza facile, proprio così:
$ ffmpeg -i input.mp4 output.avi
Ulteriori letture:
- Documentazione ufficiale FFMPEG
- Esempi PHP-FFMPEG