FFMPEG音视频合成
两类FFmpeg命令行
- 视频、音频、图片的转换。
- 增加处理效果。
例如增加水印、增加gif、音频延迟等。一般是通过滤镜功能实现。 滤镜参考资料:
http://ffmpeg.org/ffmpeg-filters.html
http://blog.chinaunix.net/uid-26000296-id-4282537.html
FFmpeg命令行举例
视频截取
ffmpeg -ss 00:46:28 -i "Morning_News.asf" -acodec copy -vcodec copy -t 00:03:25 output.asf
命令参数解释:
-ss: 开始时间
-i:输入源
-acodec copy -vcodec copy:视频和音频编码不变
-t:在该时间点停止输出
视频转码
ffmpeg -i INPUT -f FORMAT OUTPUT
example:
ffmpeg -i "D:/result.mpge" -f mp4 "D:/result.mp4"
去除视频声音
ffmpeg -i 1.avi -vcodec copy -an 2.avi
合并音频和视频
fmpeg -i a.wav -i a.avi out.avi
若音频比视频长,画面停留在最后一帧,继续播放声音
音频提前或延迟N秒
ffmpeg -i ogg.ogg -i 1.avi -filter_complex "adelay=3000|3000" output.avi
-filter_complex "adelay=3000|3000":对前面的ogg音频的两个声道都延迟3000毫秒
http://ffmpeg.org/ffmpeg-all.html#adelay
音频合成
ffmpeg -i INPUT1 -i INPUT2 -i INPUT3 -filter_complex amix=inputs=3:duration=first:dropout_transition=3 OUTPUT
inputs=3:三个输入
duration=first:输出长度为第一个输入的长度
dropout_transition=3:声音淡出时间为3秒