前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ffmpeg 常用命令存档

ffmpeg 常用命令存档

原创
作者头像
美女视频
修改2022-02-11 19:45:11
1.9K0
修改2022-02-11 19:45:11
举报

1、提取音频或视频

代码语言:javascript
复制
ffmpeg -i input_file -vcodec copy -an output_file_video  //分离视频流
ffmpeg -i input_file -acodec copy -vn output_file_audio  //分离音频流

2、桌面分享推流

代码语言:javascript
复制
ffmpeg -f avfoundation -i "1" -vcodec libx264 -preset ultrafast -acodec libfaac -f flv rtmp://domain/rtmplive/home 

3、推流桌面+麦克风

代码语言:javascript
复制
ffmpeg -f avfoundation -i "1:0" -vcodec libx264 -preset ultrafast -acodec libmp3lame -ar 44100 -ac 1 -f flv rtmp://domain/rtmplive/home 

4、推流桌面+摄像头+麦克风

代码语言:javascript
复制
ffmpeg -f avfoundation -framerate 30 -i "1:0" \-f avfoundation -framerate 30 -video_size 640x480 -i "0" \-c:v libx264 -preset ultrafast \-filter_complex 'overlay=main_w-overlay_w-10:main_h-overlay_h-10' -acodec libmp3lame -ar 44100 -ac 1  -f flv rtmp://domain/rtmplive/home 

5、视频解封装

代码语言:javascript
复制
ffmpeg –i test.mp4 –vcodec copy –an –f m4v test.264
ffmpeg –i test.avi –vcodec copy –an –f m4v test.264

6、视频转码

代码语言:javascript
复制
ffmpeg –i test.mp4 –vcodec h264 –s 352*278 –an –f m4v test.264 //转码为码流原始文件
ffmpeg –i test.mp4 –vcodec h264 –bf 0 –g 25 –s 352*278 –an –f m4v test.264 //转码为码流原始文件
ffmpeg –i test.avi -vcodec mpeg4 –vtag xvid –qsame test_xvid.avi //转码为封装文件

-bf B帧数目控制
-g 关键帧间隔控制
-s 分辨率控制

7、视频改封装

代码语言:javascript
复制
ffmpeg –i video_file.flv –i audio_file –vcodec copy –acodec copy output_file.mp4

8、视频剪切

代码语言:javascript
复制
ffmpeg –i test.avi –r 1 –f image2 image-%3d.jpeg //提取图片
ffmpeg -ss 0:1:30 -t 0:0:20 -i input.avi -vcodec copy -acodec copy output.avi //剪切视频

9、直播转录

代码语言:javascript
复制
ffmpeg –i rtsp://192.168.3.205:5555/test –vcodec copy out.avi

10、播放yuv文件

代码语言:javascript
复制
ffplay -f rawvideo -video_size 1920x1080 input.yuv

11、双声道合并单声道

代码语言:javascript
复制
ffmpeg -i music.mp3 -ac 1 music.aac

12、提取两个声道

代码语言:javascript
复制
-map_channel [input_file_id.stream_specifier.channel_id|-1][?][:output_file_id.stream_specifier]

ffmpeg -i music.mp3 -map_channel 0.0.0 letf.aac -map_channel 0.0.1 right.aac

13、将两个音频源合并为双声道

代码语言:javascript
复制
 ffmpeg -i left.aac -i right.aac -filter_complex "[0:a][1:a]amerge=inputs=2[aout]" -map "[aout]" output.mka

14、音频音量探测

代码语言:javascript
复制
 ffmpeg -i test.mp4 -filter_complex volumedetect -c:v copy -f null /dev/null

15、绘制音频波形图  (多声道混合)

代码语言:javascript
复制
ffmpeg -i music.mp3 -filter_complex "showwavespic=s=640*120" -frames:v 1 output.png 

绘制不同声道的波形图

ffmpeg -i 1.mp3 -filter_complex "showwavespic=s=640*240:split_channels=1" -frames:v 1 output.png

16、调整音量

代码语言:javascript
复制
声音音量应该仔细调整,以保护我们的耳朵和ffmpeg提供2种方法。第一个使用-vol选项,它接受从0到256的整数值,其中256是最大值

ffmpeg -i music.mp3 -vol 30 sound_low.mp3

另一种方法是使用表中描述的卷过滤器:

音量降低到三分之二

ffmpeg -i music.mp3 -af volume=2/3 quiet_music.mp3

增加10分贝的音量

 ffmpeg -i music.mp3 -af volume=10dB louder_sound.mp3

17、删除其中一个音频流

代码语言:javascript
复制
ffmpeg  -i gf.mkv  -map 0.0 -map 0.2  -vcodec copy -acodec copy out.mkv

18、只保留其中一个声道

代码语言:javascript
复制
ffmpeg.exe -i xiaoetong.mp4 -map_channel 0.1.0 -c:v copy  xiaoetong.single.mp4

19、将声音放大

代码语言:javascript
复制
ffmpeg  -i   input.mp3   -vol   400    output.mp3

20、视频转gif

代码语言:javascript
复制
ffmpeg -i capx.mp4 -t 10 -s 320x240 -pix_fmt rgb24 jidu1.gif
// -t参数表示提取前10秒视频
// -s 表示按照 320x240的像素提取

21、合并视频和字幕

代码语言:javascript
复制
ffmpeg -i webrtc.mp4 -i webrtc.srt -map 0:v -map 0:a -map 1:s -c:v copy -c:a copy -c:s mov_text  webrtc2013.mp4
//mp4不支持srt格式,需要加-c:s mov_text才行,mkv格式则不需要

收集自:

https://www.hack520.com/668.html

https://www.jianshu.com/p/d541b317f71c

https://www.hack520.com/668.html

https://blog.csdn.net/sinat_14826983/article/details/82975561

https://blog.csdn.net/wulong710/article/details/54616624

https://blog.csdn.net/konga/article/details/54561914

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云点播
面向音视频、图片等媒体,提供制作上传、存储、转码、媒体处理、媒体 AI、加速分发播放、版权保护等一体化的高品质媒体服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档