Video ffmpeg concat使视频更长
我有两个视频文件,我想用ffmpeg压缩 首字母.mp4 视频:h264(高)(avc1/0x31637661)、yuv420p(电视)、720x720、1077 kb/s、15.98 fps、16 tbr、600 tbn、1200 tbc(默认) 结束.mp4 视频:h264(高)(avc1/0x31637661),yuv420p(电视,bt470bg),720x720[SAR 1:1 DAR 1:1],1287kb/s,25fps,25tbr,25k tbn,50tbc(默认值 视频\u说明\u和\u ending.txtVideo ffmpeg concat使视频更长,video,ffmpeg,Video,Ffmpeg,我有两个视频文件,我想用ffmpeg压缩 首字母.mp4 视频:h264(高)(avc1/0x31637661)、yuv420p(电视)、720x720、1077 kb/s、15.98 fps、16 tbr、600 tbn、1200 tbc(默认) 结束.mp4 视频:h264(高)(avc1/0x31637661),yuv420p(电视,bt470bg),720x720[SAR 1:1 DAR 1:1],1287kb/s,25fps,25tbr,25k tbn,50tbc(默认值 视频\u说明
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
输出.mp4视频:h264(高)(avc1/0x31637661)、yuv420p(电视)、720x720、27 kb/s、0.43 fps、48 tbr、19200 tbn、38400 tbc(默认)
输出文件应为6秒,但输出文件为3分钟32秒
任何帮助都将不胜感激
对于我使用的文件,您可以从以下位置获得它:在
end.mp4
上运行此命令,然后使用新文件concat:
ffmpeg -i ending.mp4 -c copy -video_track_timescale 600 newending.mp4
长话短说,时基不同,因此结束视频会延长。有关时间戳和时基的上下文,请参阅。我尝试了以下命令,它对我有效
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方法
第三个选项适合这种情况,因为我们需要对文件进行重新编码。您好,谢谢您的帮助。我尝试过,但不幸的是,组合的视频没有newending.mp4。为什么?您的视频没有相同的编码。一个或两个可能需要重新编码。您好,Arun,谢谢您的解释。对于第三个选项,因为它是重新编码的ing,我将遭受质量损失,对吗?不一定。我们可以应用其他参数进行无损编码。有一个参数crf(0-51)其中0表示完全无损,51表示大多数有损。当我使用18尝试crf时,我可以得到源比特率。下面是命令,我尝试了'ffmpeg-I initial.mp4-I initial.mp4-I initial.mp4-I ending.mp4-filter\u complex concat=n=4:v=1:a=0-crf 18 output.mp4-y'Ref:这修正了我的错误,非常感谢!我以为我是为了避免t他的方法在使用MP4时却明显没有!非常感谢:)请参考,我想这将是您的解决方案。