Как установить ffmpeg для PHP

#php #ffmpeg #server #centos

#php #ffmpeg #сервер #centos

Вопрос:

Я успешно установил ffmpeg, используя ssh, как root, на свой выделенный сервер (CentOS 7).
ffmpeg работает нормально, но теперь мне нужно использовать его без root-доступа.

Когда я пытаюсь использовать ffmpeg без root-доступа, я получаю следующую ошибку :

 ffmpeg: error while loading shared libraries: libx264.so.148: 
        cannot open shared object file: No such file or directory
  

Конечная цель — иметь возможность использовать ffmpeg внутри моих PHP-скриптов, которые не имеют root-доступа.

Ответ №1:

Самое простое решение — загрузить уже скомпилированный ffmpeg двоичный / исполняемый файл и указать на него свой скрипт. На странице загрузки FFmpeg обратитесь к разделу «Получение пакетов«, чтобы найти ссылки на последние статические сборки для Linux, Windows и macOS.

Вы можете использовать shell_exec() , как показано в FFmpeg Wiki: PHP, и указать полный путь к загруженному двоичному файлу.

Комментарии:

1. я загрузил пакет в public_html, как его использовать? я не понимаю, как работает статическая сборка в php, нужно ли мне вызывать команду exec() ? спасибо за помощь

2. на данный момент php-кода не существует, кроме <?php ?> lol, мне нужно знать, как использовать эту библиотеку для вызова ffmpeg -i 123.mov -hls_segment_filename 'filed.ts' s1.m3u8

3. Вы можете использовать shell_exec() , как показано в FFmpeg Wiki: PHP , и указать полный путь к загруженному двоичному файлу.

Ответ №2:

Может быть, слишком поздно, но вот обновленное решение:

Установите библиотеку в вашей операционной системе https://www.vultr.com/docs/how-to-install-ffmpeg-on-debian-8-or-9

Установить для PHP 7.x через composer https://github.com/PHP-FFMpeg/PHP-FFMpeg