php -FFMpeg проблема при добавлении водяного знака - PullRequest
1 голос
/ 17 февраля 2020

В настоящее время появляется следующая ошибка при попытке добавить водяной знак в видео

PHP Неустранимая ошибка: Uncaught Alchemy \ BinaryDriver \ Exception \ ExecutionFailureException: ffmpeg не удалось выполнить команду '/ usr / bin / ffmpeg '' -y '' -i '' test.mp4 '' -vcode c '' libx264 '' -acode c '' libmp3lame '' -b: v '' 1000k '' -refs '' 6 '' -кодер '' 1 '' -sc_threshold '' 40 '' -flags '' + l oop '' -me_range '' 16 '' -subq '' 7 '' -i_qfactor '' 0.71 '' - qcomp '' 0.6 '' -qdiff '' 4 '' -trellis '' 1 '' -b: a '' 256k '' -a c '' 2 '' -vf '' movie = watermark.png [watermark ]; [in] [водяные знаки] overlay = main_w - 50 - overlay_w: 25 [out] '' -pass '' 1 '' -passlogfile '' / tmp / ffmpeg-pass5e4aa564641efqx15l / pass-5e4aa564642e3 '' 1276404247.mp4 '

при выполнении следующих действий:

if (file_exists('test.mp4')) {

    $videoSource = 'test.mp4';
    $reqExtension = 'mp4';
    $watermark = "watermark.png";

    $ffmpeg = FFMpeg\FFMpeg::create();

    $video = $ffmpeg->open($videoSource);

    $format = new FFMpeg\Format\Video\X264('libmp3lame', 'libx264');

    if (!empty($watermark))
    {
        $video  ->filters()
                ->watermark($watermark, array(
                    'position' => 'relative',
                    'top' => 25,
                    'right' => 50,
                ));
    }

    $format
    -> setKiloBitrate(1000)
    -> setAudioChannels(2)
    -> setAudioKiloBitrate(256);

    $randomFileName = rand().".$reqExtension";
    $saveLocation = getcwd(). '/'.$randomFileName;
    $video->save($format, $saveLocation);

}

Не знаете, почему это не удается, возможно, необходимо найти видео, чтобы даже запустить процесс?

РЕДАКТИРОВАТЬ:

Пытался сделать его проще и просто сгенерировать захват видео ...

$ffmpeg = FFMpeg\FFMpeg::create();

$video = $ffmpeg->open($videoSource);


$frame = $video->frame(FFMpeg\Coordinate\TimeCode::fromSeconds(1));
$frame->save('image.jpg');

Бросает т его ошибка:

PHP Неустранимая ошибка: Uncaught Alchemy \ BinaryDriver \ Exception \ ExecutionFailureException: ffmpeg не удалось выполнить команду '/ usr / bin / ffmpeg' '-y' '-ss' '00 : 00: 01.00 '' -i '' test.mp4 '' -vframes '' 1 '' -f '' image2 '' image.jpg '

В консоли он работает и генерирует скриншот без ошибок.

...