Home > Article > Backend Development > How to install ffmpeg-php extension on linux
Installation method: 1. Download the ffmpeg installation package and use the tar command to decompress it; 2. Use the make command to compile and install ffmpeg; 3. 3. Download the ffmpeg-php installation package and use the tar command to decompress it; 4. Use the make command to compile and install ffmpeg-php.
The operating environment of this tutorial: Red Hat Enterprise Linux 6.1 system, PHP7.1, Dell G3 computer.
1. Install ffmpeg
(1) Obtain the installation package
wget -c wget http://down1.chinaunix.net/distfiles/ffmpeg-0.4.9-p20051120.tar.bz2
(2) Unzip
tar -xvf ffmpeg-0.4.9-p20051120.tar.bz2
(3) Compile and install
./configure --prefix=/usr/local/ffmpeg --enable-shared make make install
(4) Test
Direct input: ffmpeg
ffmpeg version CVS, build 3277056, Copyright (c) 2000-2004 Fabrice Bellard configuration: --prefix=/usr/local/ffmpeg --enable-shared built on Oct 16 2013 17:05:16, gcc: 4.4.7 20120313 (Red Hat 4.4.7-3) usage: ffmpeg [[infile options] -i infile]... {[outfile options] outfile}... Hyper fast Audio and Video encoder Main options: -L show license -h show help ................................省略
If the compilation reports the following error
yasm not found, use --disable-yasm for a crippled build error, you need to compile and install it first yasm
Yasm download address: http://yasm.tortall.net/Download.html
After downloading and decompressing the source code package, compile and install
./configure make make install
If the test reports the following error
ffmpeg: error while loading shared libraries: libavdevice.so.52: cannot open shared object file: No such file or directory”
Solution
vi /etc/ld.so.conf
Join
/usr/local/ffmpeg/lib
Then execute
ldconfig
2. Install ffmpeg- php
(1) Download the installation package
wget http://jaist.dl.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.5.3.1/ffmpeg-php-0.5.3.1.tbz2
(2) Unzip
tar -xvf ffmpeg-php-0.5.3.1.tbz2
(3) Compile and install
cd ffmpeg-php-0.5.3.1 ./configure --with-php-config=/usr/local/php/bin/php-config --with-ffmpeg=/usr/local/ffmpeg make make install
(4) Test
In the php configuration php.ini file, add the following content
extension=ffmpeg.so
Restart apache or php-fpm, use php to test
/usr/local/php/bin/php -r 'phpinfo();' | grep ffmpeg ffmpeg ffmpeg support (ffmpeg-php) => enabled ffmpeg-php version => 0.5.3.1 ffmpeg-php gd support => enabled ffmpeg.allow_persistent => 0 => 0 ffmpeg.show_warnings => 0 => 0 ............................省略
3. The errors encountered are solved as follows
(1) If in An error message is found when making: make: *** [ffmpeg_frame.lo] Error 1 Then:
mv ffmpeg_frame.loT ffmpeg_frame.lo
Then make again; make install
(2) If the ffmepg-php module is called, an error message is displayed :
php: symbol lookup error: /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/ffmpeg.so: undefined symbol: register_ffmpeg_frame_class
Then modify ffmpeg_frame.c and change PIX_FMT_RGBA32 at 3 places to PIX_FMT_RGB32.
vi ffmpeg_frame.c :%s/PIX_FMT_RGBA32/PIX_FMT_RGB32 :wq!
Then reconfigure;make;make install
(3) If make times
make: *** [ffmpeg-php.lo] Error 1
Need to add ./configure --with-php-config=/usr/local/php/bin/php-config when compiling
If it still doesn’t work, please replace ffmpeg and ffmpeg-php Try different versions, it may be incompatible between versions.
Recommended learning: "PHP Video Tutorial"
The above is the detailed content of How to install ffmpeg-php extension on linux. For more information, please follow other related articles on the PHP Chinese website!