#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