2012-07-17 125 views
0

我有一个简介视频。我想在用户上传视频的开始时使用ffmpeg或类似的程序添加介绍(并且是的,我需要将它们合并到一个文件中,因此稍后可以下载它) 我一直在搜索互联网它建议将(intro和其他视频)转换为.mpg格式。如何合并任何视频到我的介绍使用ffmpeg

OK,到目前为止好,但现在当我尝试加入他们在一起,我得到

[MPEG4 @ 0x5547c60]无效和低效的VFW-AVI装B帧检测

所以我猜这是因为两个视频中的内容不同,比如帧速率或大小。 最糟糕的是用户可以上传几乎任何格式的视频,也是240p-720p的质量,所以没有一个默认大小可以将入门视频转换成。

这怎么办?

回答

0

您的介绍视频应该与用户视频的分辨率相匹配,您应该拥有与用户视频一样多的分辨率的尽可能多的介绍视频。或者将所有用户视频转换为单一分辨率以匹配介绍视频的分辨率。是否在做intro.mpg + user.mpg来合并视频?这是否给出了上述错误?

+0

或者,他可以在他的介绍视频转换为符合用户的问题'vi作为第一步,必要时添加填充。这样他处理每一个可能的决议。然后,他可以缓存结果,以加速后续视频的分辨率。 – sashoalm 2012-07-18 12:16:48

+0

但我如何确定我需要转换视频?视频将使用php上传,然后exec()将运行ffmpeg命令。 – 2012-07-18 17:00:14

+0

上传视频后,运行ffprobe并解析结果以获取视频的宽度和高度。 – d33pika 2012-07-19 05:50:44

0

使用的ffmpeg:

ffmpeg -i 'concat:input1|input2' -codec copy output 

ffmpeg -i opening.mkv -i episode.mkv -i ending.mkv -filter_complex '[0:0] [0:1] [1:0] [1:1] [2:0] [2:1] concat=n=3:v=1:a=1 [v] [a]' -map '[v]' -map '[a]' output.mkv 

$ cat mylist.txt 
file '/path/to/file1' 
file '/path/to/file2' 
file '/path/to/file3' 

$ ffmpeg -f concat -i mylist.txt -c copy output 

来源:Concatenate two mp4 files using ffmpeg