Назад | Перейти на главную страницу

Ubuntu установить php5-ffmpeg

Когда я пытаюсь установить php5-ffmpeg:

apt-get install php5-ffmpeg

Я получаю сообщение об ошибке:

The following packages have unmet dependencies:
 php5-ffmpeg : Depends: phpapi-20090626+lfs

Насколько я понимаю, мой php5-ffmpeg был сломан, когда я обновил php с 5.3 до 5.4.

Как я могу это исправить? Я пробовал использовать некоторые параметры, например -f, -ingnore-dependencies, но это не помогло.

Я использую Ubuntu 12.04.2 LTS.

Сначала попробуйте разрешить зависимость, используя ниже PPA но эта версия End Of Life, рекомендуется обновить php-5.6

sudo add-apt-repository ppa:ondrej/php5-oldstable
sudo apt-get update

затем

sudo add-apt-repository ppa:mc3man/trusty-media   
sudo apt-get update
sudo apt-get install ffmpeg ffmpeg-devel

Скачать php-ffmpeg из http://ffmpeg-php.sourceforge.net/ и извлечь.

cd ffmpeg-php-<version>
./configure
make 
sudo make

Отредактируйте файл php.ini и добавьте этот конец файла:

extension=ffmpeg.so

На прошлой неделе я успешно установил это расширение на centos 6

phpapi-20090626+lfs представляет собой «виртуальный пакет», который может «предоставлять» другой пакет. В вашем случае это более старый виртуальный пакет, который php5-ffmpeg требует, а новый пакет PHP не предоставляет. Самым быстрым решением, чтобы все заработало, если обновление PHP сломало его, было бы понизить версию PHP.

Для решения с использованием нового PHP вам понадобится обновленная версия php5-ffmpeg, если это возможно. Я считаю, что это пакет из внешнего репозитория (например, PPA), потому что я не вижу его в репозиториях обычного распространения. Если он недоступен, вам придется попробовать собрать его самостоятельно. Это может быть невозможно с обновленными версиями ffmpeg и PHP, хотя ...

Учитывая особенности того, сколько лет php5-ffmpeg является (как подробно здесь), Я бы попытался изменить ваше приложение, чтобы избежать использования этой библиотеки в первую очередь, поскольку она блокирует вас (по крайней мере) старой версией ffmpeg.

Между тем, на мой взгляд, самое простое решение - это понизить версию PHP (и ffmpeg, при необходимости) к поддерживаемой версии.

Простая установка ffmpeg достаточно для использования его в файлах php, но если вам все же нужно установить его, попробуйте загрузить файлы и скомпилировать их вручную. проверьте это для справки http://ffmpeg-php.sourceforge.net/

Если вы посмотрите на официальная веб-страница для ffmpeg-php, вы увидите дату последнего обновления - 2007. Вот почему не рекомендуется использовать его ни на одном производственном сервере, так как вы должны использовать старую версию ffmpeg вместе с ffmpeg-php, что, очевидно, не хорошая идея, учитывая количество исправленных ошибок, созданных с 2007 года.

Возможно, лучшим решением было бы вызвать ffmpeg / ffprobe прямо с ваших веб-страниц, чтобы делать все, что вам нужно, с вашим аудио / видео. Таким образом, у вас будет меньше головной боли, связанной с новыми обновлениями ffmpeg, поскольку параметры командной строки обычно не меняются так сильно, как API / ABI. Для получения дополнительной помощи по использованию ffmpeg с веб-страниц вы можете прочитать это руководство на вики ffmpeg: