我有一个.mp4视频文件,我需要修剪它,但无论我怎么做,修剪后的视频都会被重新编码,导致视频噪音。
我尝试过的事情:
使用Matlab打开视频,读取帧并仅写入我想要修剪视频的帧,我使用'MPEG-4'
选项。
使用Windows Movie Maker修剪视频。
在前2个场景中,原始mp4电影在修剪后再次编码。我无法在VirtualDub中打开mp4文件。
那么在不重新录制视频的情况下修剪视频的最简单方法是什么?
答案 0 :(得分:3)
您可以在一个命令中进行拆分和重新编码。
创建文本文件list.txt
,
file 'in.mp4'
inpoint 48.101
outpoint 67.459
file 'in.mp4'
inpoint 76.178
outpoint 86.399
file 'in.mp4'
inpoint 112.140
outpoint 125.031
然后跑,
ffmpeg -f concat -i list.txt -an -crf 18 out_merged.mp4
答案 1 :(得分:2)
我已使用以下命令解决了这个问题:
ffmpeg.exe -ss 48.101 -t 19.358 -i in.mp4 -an out_part1.mp4
ffmpeg.exe -ss 76.178 -t 10.221 -i in.mp4 -an out_part2.mp4
ffmpeg.exe -ss 112.140 -t 12.891 -i in.mp4 -an out_part3.mp4
ffmpeg -i out_part1.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts intrmdt1.ts
ffmpeg -i out_part2.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts intrmdt2.ts
ffmpeg -i out_part3.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts intrmdt3.ts
ffmpeg -i "concat:intrmdt1.ts|intrmdt2.ts|intrmdt3.ts" -c copy out_merged.mp4
还有一些解释: