视频切分与合并

视频切分与合并在应用场景中很常见,如视频剪辑,去广告等。
本文以MP4文件为目标,对其进行切分合并

一. VLC做前期处理

如果需要加亮,锐化,对比度,可以使用VLC来实现,

cvlc nikita.mp4 --sout="#transcode{vfilter={adjust{}:sharpen{sigma=0.12}: deinterlace{mode=mean}},vcodec=h264,scale=0,acodec=mp4a}:file{dst=./0.mp4}" --sout-all --sout-keep


二、使用FFmpeg 进行MP4文件切分 

1. 从30秒开始,切出60秒长的分片

./ffmpeg -ss 30 -t 60 -i nikita.mp4 -same_quant seg1.mp4


注意: 

1. ffmpeg 2.4.3版本的命令如下

./ffmpeg -ss 30 -t 60 -i nikita.mp4 -qscale 0 -y seg1.mp4


2.使用copy参数的问题

./ffmepg -i nikita.mp4 -ss 30 -t 60 -vcodec copy -acodec copy -y seg1.mp4

会造成 音视频不同步 

三、使用 mencoder进行切分

./mencoder -ovc x264 -oac facc -ss 30 -t 60 nikita.mp4 -o seg1.mp4

它比ffmpeg用的内存少点,总是从30s之后的第一个Iframe开始处理,生成的是mp4格式

./mencoder -ovc copy -oac facc -ss 30 0.mp4 -o 2.avi

它比上面的命令快一点,

或:

./mencoder -ovc copy -oac facc -ss 30 0.mp4 -of lavf -o 2.mp4


四、分段MP4合并
如果是mp4文件,直接使用MP4Box合并 

./MP4Box -cat seg1.mp4 -cat seg2.mp4 -new merge.mp4

你可能感兴趣的:(ffmpeg,mencoder,mp4box,视频切分与合并)