我将PHP-FFMpeg合并到我的symfony3项目中,该项目运行正常。然而,最近我一直需要将两个视频连接成一个,看起来它不受支持。所以我创建了一个基于this
的ConcatVideoFilter
类
public function apply(Video $video, VideoInterface $format)
{
$params = [];
$count = count($this->files) + 1;
foreach ($this->files as $i => $file) {
$params[] = '-i';
$params[] = $file;
}
$params[] = '-filter_complex';
$params[] = 'concat=n='.$count.':v=1:a=1 [v]';
$params[] = '-map';
$params[] = '[v]';
return $params;
}
我的symfony探查器中出现编码失败错误
然后我复制粘贴了实际的ffmpeg命令行,看看它会给出什么错误:
哪个给了我这个错误
过滤器concat:out:v0具有未连接的输出
这个错误意味着什么,我该怎么做才能摆脱它?
答案 0 :(得分:2)
你需要
$params[] = '-filter_complex';
$params[] = 'concat=n='.$count.':v=1:a=1 [v][a]';
$params[] = '-map';
$params[] = '[v]';
$params[] = '-map';
$params[] = '[a]';
您的concat过滤器会导出音频输出,但您没有为其分配输出板,然后将其映射。