FFmpeg常用的命令

1.视频的录制

同时打开摄像头跟麦克风,进行录制:点击q进行退出
0:0,前面为图像设备,后面为声音设备。

ffmpeg -f avfoundation -framerate 30 -i "0:0" -s 320x240 cam2.mp4

如果只要声音,则:

ffmpeg -f avfoundation -i ":0" sound.aac 

或者:

ffmpeg  -f avfoundation -i ":0" -acodec libmp3lame sound2.mp3

aac是音频的一种编码格式,我用的ffmpeg3.1.2会编码成aac格式,当然也可以指定编码成mp3,但要借助libmp3lame这个组件。

想录制屏幕,那只需要把-i "0"换成-i "1"了

2.从视频中抽几张图

ffmpeg -ss 00:00:5 -i   /moments.mp4 -vframes 1 -f image2 -y a.png

ss表示开始提取图片的时间点,既可以用时分秒方式,也可以是多少秒。如果使用到这个参数,那应该把它作为第一个参数,因为可以让FFmpeg提速。

i表示输入文件,就是视频文件。

vframes表示拿多少帧,也就是多少张图片。注意,这个参数要放在-i参数之后。
f 表示提取出来的图片的格式。
y 表示覆盖已有同名的图片。

ffmpeg -i xxx.mp4 -r 1 -y -f image2 -t 5 -s 240*320 pc%3d.jpg

r 表示每秒提取图片的帧数,即帧率,默认是25fps,上面设置为一秒拿一张图。
t 表现提取持续多少秒,也可以用时分秒的格式来表示。
s 表出来的图片的尺寸。
3%d表示以001、002这样的格式来命名输出的图片。

如果我发现视频某个时间点有美女的话,那我就可以用ss从这个时间点再前一点,然后用t来持续提取5秒,或者用vframes来提取几十张,那就准没漏了!也就是这样:

ffmpeg -ss 10 -t 5 -r 1 -i Movie-1.mp4 -f image2 -y pc-temp/image%3d.jpg

提取到一些图片后,我想弄成视频,怎么办?
很简单,前提是你的ffmpeg已经支持视频编码器(比如x264),参考FFmpeg的安装吧( 已经支持lamemp3、x264、librtmp、fdk-aac等)

把图片制作成视频

ffmpeg -f image2 -i img%3d.jpg test.mp4

-img%d表示以‘img001’, ’img002‘这类的命名,按顺序使用。注意f参数要在i参数之前。

3.使用FFmpeg

提取视频流:

ffmpeg -i xx.flv -vcodec copy -an output.h264 

提取音频流:

ffmpeg -i fx_flash22298734.flv -acodec copy -vn audio.aac 

提取视频流并且为mp4格式:

ffmpeg -i xx.flv -vcodec copy -an -f mp4 1.mp4 

提取音轨(音频流):

ffmpeg -i 后来_MQ.m4a -map 0:0 0.wav  
ffmpeg -i 后来_MQ.m4a -map 0:1 1.wav 

提取声道:

ffmpeg -i "TFBOYS - 是你.mp3" -map_channel 0.0.0 1.aac -map_channel 0.0.1 2.aac

提取流中的packet:

ffmpeg -v 48 -i "rtmp://xxx.com/live/7360883 live=1" out.flv

提取pcm:

ffmpeg -i "Rogue Traders - Watching You.mp3" -f s16le -ar 44100 -ac 2 -loglevel quiet -y decoded.pcm

合成音频与视频:

ffmpeg -i 1.mp4 -i 1.wav -vcodec copy  mix_test.mp4

转码:

ffmpeg -i 22298734.flv -vcodec mpeg4 -s 320*240 -an -f m4v test.mp4

保存rtmp流在本地:

ffmpeg -i "rtmp://xxx.com/live/hks live=1" -vcodec copy -acodec copy out.flv  

FFmpeg官网
或者更具体一点的比如:

FFmpeg具体命令

4.视频MP4转成GIF

将视频 MP4 转化为 GIF

ffmpeg -i small.mp4 small.gif

转化视频中的一部分为 GIF

ffmpeg -t 3 -ss 00:00:02 -i small.webm small-clip.gif

从视频中第二秒开始,截取时长为3秒的片段转化为 gif

转化高质量 GIF

默认转化是中等质量模式,若要转化出高质量的 gif,可以修改比特率

ffmpeg -i small.mp4 -b 2048k small.gif

视频属性调整

缩放视频尺寸

ffmpeg -i big.mov -vf scale=360:-1  small.mov

注意 sacle 值必须是偶数,这里的 -1 表示保持长宽比,根据宽度值自适应高度。

如果要求压缩出来的视频尺寸长宽都保持为偶数,可以使用 -2

加倍速播放视频

ffmpeg -i input.mov -filter:v "setpts=0.5*PTS" output.mov

定义帧率 16fps:

ffmpeg -i input.mov -r 16 -filter:v "setpts=0.125*PTS" -an output.mov

慢倍速播放视频

ffmpeg -i input.mov -filter:v "setpts=2.0*PTS" output.mov

静音视频(移除视频中的音频)

ffmpeg -i input.mov -an mute-output.mov

-an 就是禁止音频输出

将 GIF 转化为 MP4

ffmpeg -f gif -i animation.gif animation.mp4

也可以将 gif 转为其他视频格式

ffmpeg -f gif -i animation.gif animation.mpeg

ffmpeg -f gif -i animation.gif animation.webm

获取 GIF 的第一帧图片

使用 ImageMagick 可以方便第提取 gif 图片的第 N 帧图像。

安装 ImageMagick

brew install imagemagick

提取第一帧

convert 'animation.gif[0]' animation-first-frame.gif

通过 [0] 就可以提取出 gif 的第一帧图像。

GIF 转出来的 MP4 播放不了?

有些 GIF 转化出来的 MP4 不能被 Mac QuickTime Player.app 播放,需要添加 pixel formal 参数

ffmpeg -i input.gif -vf scale=420:-2,format=yuv420p out.mp4

使用 yunv420p 需要保证长宽为偶数,这里同时使用了 scale=420:-2

wiki 解释: QuickTime Player 对 H.264 视频只支持 YUV 色域 4:2:0 方式的二次插值算法。

参考资料

ffmpeg -i input.mp4 output.avi

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,839评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,543评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,116评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,371评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,384评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,111评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,416评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,053评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,558评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,007评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,117评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,756评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,324评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,315评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,539评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,578评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,877评论 2 345