Ошибка при создании миниатюры видео в laravel

Я использую ffmpeg и Pawlox / видео-миниатюр пакет для создания миниатюры. Я уже установил ffmpeg и pawlox / video-thumbnail.

Вот мой код

VideoThumbnail::createThumbnail(url('/storage/app/accident_report_videos/ynvO5D9GzUJsLPj8vPlyiOEND0ag9MeFGr4NFu5k.mp4'), asset('thumbnAils'), '111.jpg', 2, 600, 600);

Ошибка:

error:getimagesize(http://54.255.240.102/storage/app/accident_report_videos/thumbs/ynvO5D9GzUJsLPj8vPlyiOEND0ag9MeFGr4NFu5k.jpg): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found

Путь к видео и путь к миниатюре являются правильными. Но он использует метод миниатюр в videothumbnail.php создать миниатюру. Эта функция генерирует миниатюру. Итак, после этого он вызывает resizeCropImage() функция, в которой они используют getimagesize() Funtion. А также getiamgesize() Функция не получает изображение, потому что оно никогда не генерируется.

1

Решение

Вы не хотите использовать url() здесь — он собирается сгенерировать полный URL-адрес HTTP, что означает, что ваш сервер должен будет скачать полный файл MP4 (который может быть гигабайтами!) для скриншота.

(Ваш каталог хранения также обычно недоступен через HTTP …)

Использовать фактический путь через storage_path() помощник.

VideoThumbnail::createThumbnail(storage_path('app/accident_report_videos/ynvO5D9GzUJsLPj8vPlyiOEND0ag9MeFGr4NFu5k.mp4'), storage_path('app/accident_report_videos/thumbs'), '111.jpg', 2, 600, 600);
4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]