Установка ffmpeg-php на серверах с CentOS

Для установки ffmpeg-php нам понадобится репозиторий rpmforge и пакеты ffmpeg, ffmpeg-libpostproc, ffmpeg-devel.

Если rpmforge не подключен — подключаем его, например так:

wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm
rpm -Uvh rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm

Теперь ставим пакеты со всеми зависимостями:

yum install ffmpeg ffmpeg-libpostproc ffmpeg-devel

Теперь ставим собственно ffmpeg-php:
Качаем тут.

На момент написания статьи, последняя версия ffmpeg-php 0.6.0
Распаковываем и запускаем сброку:

tar -xjvf ffmpeg-php-*tbz2
cd ffmpeg-php-*
phpize
./configure
make
make install

И тут, после команды make мы скорее всего получаем ошибку такого вида:

ffmpeg-php-0.6.0/ffmpeg_frame.c: In function ‘zim_ffmpeg_frame_toGDImage’:
ffmpeg-php-0.6.0/ffmpeg_frame.c:336: error: ‘PIX_FMT_RGBA32’ undeclared (first use in this function)
ffmpeg-php-0.6.0/ffmpeg_frame.c:336: error: (Each undeclared identifier is reported only once
ffmpeg-php-0.6.0/ffmpeg_frame.c:336: error: for each function it appears in.)
ffmpeg-php-0.6.0/ffmpeg_frame.c: In function ‘zim_ffmpeg_frame_ffmpeg_frame’:
ffmpeg-php-0.6.0/ffmpeg_frame.c:421: error: ‘PIX_FMT_RGBA32’ undeclared (first use in this function)

В этом случае, открываем файл ffmpeg_frame.c и заменяем в нем все совпадения PIX_FMT_RGBA32 на PIX_FMT_RGB32 после чего снова набираем команды:

make && make install

После того как ffmpeg-php был успешно собран и установлен, остается открыть файл php.ini и прописать в нем:
extension=ffmpeg.so


Автор: Виктор Симон
www.man-linux.ru
Права копирования
Опубликовано 31 января 2012 - информация могла устареть.

Ответить