я использую PHP-FFMpeg в приложении Laravel 5.2 для стабилизации видео с помощью VidStab. У меня есть все зависимости и все установлено правильно, и я могу следовать указаниям репозитория VidStab, чтобы стабилизировать свои видео через командную строку.
Мой вопрос заключается в том, как я могу сделать это красиво (способ Laravel) изнутри PHP? Я знаю, что могу добавить пользовательский фильтр к объекту Video следующим образом:
$video = $ffmpeg->open('shaky_video.mp4');
$video->addFilter(new CustomFilter('vidstabdetect=stepsize=6:shakiness=8:accuracy=9:result=transform.trf'));
Но как я могу выполнить эту команду без необходимости $video-save()
, который я думаю, предназначен для вывода видео / аудио файла, а не trf
файл анализа?
Я полагаю, что мог бы просто запустить команду PHP exec (), но я бы хотел сохранить этот объектно-ориентированный PHP как можно больше. Какие-либо предложения?
Заранее спасибо!
Я попробовал это (добавил -f null -
отфильтровать, а затем попытался запустить save()
выполнить команду), но он все равно создает файл mp4 вместо файла trf:
$video = $ffmpeg->open('shaky_video.mp4');
$video->addFilter(new CustomFilter('vidstabdetect=stepsize=6:shakiness=8:accuracy=9:result=transform.trf -f null -'));
$video->save(new X264(), 'stabilized.mp4');
Задача ещё не решена.
Других решений пока нет …