美文网首页音视频开发经验之路FFmpeg学习
FFMpeg命令行学习笔记(1)常用命令行指令

FFMpeg命令行学习笔记(1)常用命令行指令

作者: WSGNSLog | 来源:发表于2016-10-17 18:38 被阅读591次

1.音频
(1) 音频合并(两个音频会重叠)

ffmpeg -i first.mp3 -i second.mp3 -filter_complex amix=inputs=2:duration=first:dropout_transition=2 -f mp3 third.mp3

(2)音频拼接

(1)ffmpeg -i "concat:first.mp3|second.mp3" -acodec copy third.mp3 (third格式和first保持一致)
(2)ffmpeg -i "concat:first.mp3|second.mp3" -i second.mp3 -acodec copy test.mp3 -map_metadata 0:1 (third格式和second保持一致)
(3)cat first.mp3 > third.mp3 && cat second.mp3 >> third.mp3 (发现third.mp3也可以播放,瞎搞???)

http://superuser.com/questions/314239/how-to-join-merge-many-mp3-files"

2.视频
(1) 视频截取

ffmpeg -i a.mp4  (-ss 0 ) -t 5 -acodec copy -vcodec copy b.mp4

 -ss 开始时间 以秒为单位/ 写成这样00:00:01应该也可以吧

-t 多长时间 ,以秒为单位   

but新视频没有封面

(2) 视频合并

这个的思路是先将 mp4 转化为同样编码形式的 ts 流,因为 ts流是可以 concate 的,先把 mp4 封装成 ts ,然后 concate ts 流, 最后再把 ts 流转化为 mp4。

ffmpeg -i 1.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 1.ts 

ffmpeg -i 2.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 2.ts  

ffmpeg -i "concat:1.ts|2.ts" -acodec copy -vcodec copy -absf aac_adtstoasc output.mp4

3.过滤器的使用

将输入的视频转为960x540输出:

ffmpeg -i out21.avi -vf scale=960:540 out31.avi

//注:如果540不写,写成-1也是可以的,即scale=960:-1,ffmpeg会通知缩放滤镜在输出时保持原始的宽高比。

4.视频格式转换

ffmpeg -i input.avi output.mp4

ffmpeg -i 20171012134024.mp4 -qscale 0 -ar 11025 20171012134024.flv

参考:
ffmpeg常用命令
http://www.360doc.com/content/16/0518/11/496343_560111633.shtml
http://blog.csdn.net/l_yangliu/article/details/7274968
ffmpeg文档系列:https://www.cnblogs.com/xdsnet/category/788313.html

相关文章

网友评论

    本文标题:FFMpeg命令行学习笔记(1)常用命令行指令

    本文链接:https://www.haomeiwen.com/subject/lbkzyttx.html