猿问

用php-ffmpeg给视频加水印,保存的时候Encoding failed

代码如下:
$con = array('ffmpeg.binaries' => 'path_to_ffmpeg',

            'ffprobe.binaries' => 'path_to_ffprobe',
            'timeout' => 3600,//底层进程的超时时间
            'ffmpeg.threads' => 12
            );
            $logger = 'path_to_/ffmpeg.log';
            $watermarkPath = 'path_to_logo.PNG';
            $ffmpeg = FFMpeg::create($con);
            $video = $ffmpeg->open('path_to_test.mp4');
            $frame = $video->frame(TimeCode::fromSeconds(2));
            $frame->save('path_to_image.jpg');
            $video->filters()
                ->watermark($watermarkPath, array(
                    'position' => 'relative',
                    'bottom' => 50,
                    'right' => 50,
                ));
            $format = new X264();
            $format->on('progress', function ($video, $format, $percentage) {
                echo "$percentage % transcoded";
            });
            $video->save($format,'path_to_video.mp4');
            

我在看官方文档的时候save的第一个参数要format的接口,但是我看网上写的blog第一个都是传视频对应格式类的实例化,请问这个具体到底怎么用?

牛魔王的故事
浏览 1014回答 2
2回答

HUWWW

最后是因为依赖没有安装好,这些依赖不是强制依赖,所以即使不安装FFmpeg也不会报错

杨__羊羊

需要什么样的依赖呢?需要安装 php ffmpeg 这样的扩展码?
随时随地看视频慕课网APP
我要回答