用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第一个都是传视频对应格式类的实例化,请问这个具体到底怎么用?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
最后是因为依赖没有安装好,这些依赖不是强制依赖,所以即使不安装FFmpeg也不会报错
需要什么样的依赖呢?需要安装 php ffmpeg 这样的扩展码?