我有2个视频文件,我想使用ffmpeg
连接initial.mp4 视频:h264(高)(avc1 / 0x31637661),yuv420p(tv),720x720,1077 kb / s,15.98 fps,16 tbr,600 tbn,1200 tbc(默认)
ending.mp4 视频:h264(高)(avc1 / 0x31637661),yuv420p(tv,bt470bg),720x720 [SAR 1:1 DAR 1:1],1287 kb / s,25 fps,25 tbr,25k tbn,50 tbc(默认< / p>
video_instructions_with_ending.txt
file initial.mp4
file initial.mp4
file initial.mp4
file ending.mp4
FFmpeg命令
ffmpeg -f concat -i video_instructions_with_ending.txt -c copy output.mp4 -y
output.mp4 视频:h264(高)(avc1 / 0x31637661),yuv420p(tv),720x720,27 kb / s,0.43 fps,48 tbr,19200 tbn,38400 tbc(默认)
输出文件应为6秒。但是输出文件是3分32秒。
任何帮助将不胜感激
对于我使用的文件,您可以从HERE
获取答案 0 :(得分:1)
在ending.mp4
上运行此命令,然后使用新文件连接:
ffmpeg -i ending.mp4 -c copy -video_track_timescale 600 newending.mp4
长话短说,时基不同,所以结尾视频会延长。有关时间戳&amp;的上下文,请参阅https://stackoverflow.com/a/43337235/5726027。碱基。
答案 1 :(得分:1)
我尝试了以下命令,它对我有用
ffmpeg -i initial.mp4 -i initial.mp4 -i initial.mp4 -i ending.mp4 -filter_complex concat=n=4:v=1:a=0 -f MOV output.mp4 -y
<强>说明:强> FFmpeg有三个concat方法
第3个选项适合场景,因为我们需要重新编码文件。