FFmpeg常用功能
ffmpeg -i input.mp4 output.avi |
上述命令将输入的MP4视频文件转换为AVI格式。
2.压缩视频文件:
ffmpeg -i input.mp4 -vcodec libx264 -crf 23 output.mp4 |
该命令使用libx264视频编解码器对输入的MP4文件进行压缩,并将压缩后的视频保存为MP4格式。CRF值(Constant Rate Factor)越小,视频质量越高,文件大小越大。
3.调整视频尺寸:
ffmpeg -i input.mp4 -vf scale=640:480 output.mp4 |
上述命令将输入的MP4视频文件调整为640x480的分辨率。
4.提取音频:
ffmpeg -i input.mp4 -vn -acodec copy output.mp3 |
该命令从输入的MP4视频文件中提取音频,并将音频保存为MP3文件。
5.视频剪切:
ffmpeg -i input.mp4 -ss 00:01:30 -t 00:00:30 -c:v copy -c:a copy output.mp4 |
上述命令从输入的MP4视频文件中截取从1分30秒开始的30秒片段,并将剪切后的视频保存为MP4文件。
6.添加水印:
ffmpeg -i input.mp4 -i watermark.png -filter_complex "overlay=W-w-10:H-h-10" output.mp4 |
该命令在输入的MP4视频文件中添加一个水印,水印图像为watermark.png,并将带有水印的视频保存为MP4文件。水印位置在视频的右下角。
7.网络推送
ffmpeg -re -i 1.ts -c copy -f mpegts udp: //192.168.0.106:80 |
udp视频流的推送
8.视频拼接
ffmpeg -i "concat:test1.h264|test2.h264" -vcodec copy -f h264 out12.h264 |
9.截取图片格式
ffmpeg -i test.asf -y -f image2 -t 0.001 -s 352x240 a.jpg |
截取一张352x240尺寸大小的,格式为jpg的图片
10.截取图片格式(Gif)
ffmpeg -i test.asf -vframes 30 -y -f gif a.gif |
把视频的前30帧转换成一个Animated Gif
11.屏幕录制
ffmpeg -vcodec mpeg4 -b 1000 -r 10 -g 300 -vd x11:0,0 -s 1024x768 ~/test.avi |
其中,-vd x11:0,0 指录制所使用的偏移为 x=0 和 y=0,-s 1024×768 指录制视频的大小为 1024×768。录制的视频文件为 test.avi,将保存到用户主目录中。
如果你只想录制一个应用程序窗口或者桌面上的一个固定区域,那么可以指定偏移位置和区域大小。
12.视频采集
ffmpeg -f video4linux -s 320*240 -r 10 -i /dev/video0 test.asf |
把摄像头的实时视频录制下来,存储为文件
13.从视频中提取音频
ffmpeg -i test.mp4 -vn music.mp3 |
14.提取视频
ffmpeg -i input.mp4 -vcodec copy -an output.mp4 |
15.视频编码
ffmpeg -i input.mp4 -vcodec h264 output.mp4 |
视频的编码是MPEG4,转为H264编码
16.提取视频ES数据
ffmpeg –i input.mp4 –vcodec copy –an –f m4v output.h264 |
17.视频缩放
1 | ffmpeg -i input.mp4 -vf scale=960:540 output.mp4 |
将输入的1920x1080缩小到960x540输出
18.视频添加LOGO
//右上角 ffmpeg -i input.mp4 -i logo.png -filter_complex overlay=W-w output.mp4 //右下角 ffmpeg -i input.mp4 -i logo.png -filter_complex overlay=0:H-h output.mp4 |
19.去掉视频的LOGO
1 | ffmpeg -i input.mp4 -vf delogo=0:0:220:90:100:1 output.mp4 |
语法:-vf delogo=x:y:w:h[:t[:show]] x:y 离左上角的坐标 w:h logo的宽和高 t: 矩形边缘的厚度默认值4 show:若设置为1有一个绿色的矩形,默认值0。
20.图片生成视频
ffmpeg -f image2 -r 1 -i %01d.jpg -r 1 -y video.mp4 |
21.提取字幕
ffmpeg -i input.mkv -map 0:s:0 -c:s copy output.srt |
-i input.mkv 指定输入文件。
-map 0:s:0 表示从文件的第一个流中提取第一个字幕。
-c:s copy 表示复制字幕流而不重编码。
output.srt 是输出的字幕文件。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?