ffmpeg 简单命令知悉

ffmpeg 简单命令知悉

月光魔力鸭

2019-02-27 16:41 阅读 1497 喜欢 0 ffmpeg ffmpeg常用命令

FFmpeg 常用命令整理。

查看视频的时长/大小等基本信息

ffmpeg -i d:/a.mp4

输出

可以根据输出信息获得该视频的时长、分辨率信息。

将图片和音频合并为一个视频文件

ffmpeg -r 15 -f image2 -loop 1 -i d:/zzs/mp3/1.jpg -i d:/zzs/mp3/1.mp3 -s 720x480 -pix_fmt yuvj420p -t 567 -vcodec libx264 -y d:/zzs/mp3/1.mp4

ffmpeg -r 15 -f image2 -loop 1 -i d:/zzs/pp/2/index.jpg -i d:/zzs/pp/2/index.mp3 -s 720x480 -pix_fmt yuvj420p -t 567 -vcodec libx264 -y d:/zzs/pp/2/index.mp4

-loop 是循环 -s 是分辨率 -t 是输出的视频时长

将视频转化为m3u8格式

ffmpeg -i d:/a.mp4 -c:v libx264 -c:a aac -strict -2 -f hls d:/a.m3u8

将视频转化为flv格式

ffmpeg -i d:/a.mp4 -y -ab 32 -ar 22050 -qscale 10 -s 640*480 -r 15 d:/a.flv

-qscale 为视频输出质量,值越小文件越大质量越高 -s 为输出文件的分辨率大小 -r 播放帧数

对视频抓取截图

ffmpeg -i d:/a.mp4 -y -f image2 -ss 5 -t 0.001 -s 350x240 d:/aa.jpg

-f 输出格式 -t 截取时长 -ss 开始时间

通过ffmpeg对桌面进行截图抓取

ffmpeg -f gdigrab -i desktop d:/desk.png

使用gdigrab 来抓取

通过ffmpeg抓取桌面某位置的截图

ffmpeg -f gdigrab -framerate 5 -offset_x 10 -offset_y 20 -video_size 640x480 -i desktop d:/desktop.png

从屏幕(x:10,y:20)处开始截图抓取 640x480的屏幕

从视频中生成gif图

ffmpeg -i d:/a.mp4 -t 10 -s 320x240 -pix_fmt rgb24 d:/a.gif

-t 抓取时间 -s 大小 -ss 开始时间

通过ffmpeg 对系统的摄像头进行抓图

ffmpeg -f dshow -i video="Lenovo EasyCamera" d:/abc.png

这里的video ="Lenovo EasyCamera" 是系统使用的摄像头的名称,可以通过以下命令查看(中文会乱码):

ffmpeg -list_devices true -f dshow -i dummy

输出

对视频进行加密切片

ffmpeg -i C:\Users\Administrator\Desktop\hls-enc\test.mp4 -vf "movie=post.png [watermark]; [in][watermark] overlay=10:10 [out]" -hls_time 5 -hls_key_info_file C:\Users\Administrator\Desktop\hls-enc\aa.keyinfo -hls_list_size 0 -f hls C:\Users\Administrator\Desktop\hls-enc\test.m3u8

注意:加水印是通过-vf来增加的,但是后边的图片地址 movie对应的地址不能写盘符?

//右下角
overlay=main_w-overlay_w-10:main_h-overlay_h-10
//为左上角
overlay=10:10 
//为右上角
overlay=main_w-overlay_w-10:10 
//为左下角
overlay=10:main_h-overlay_h-10
//含义
main_w,main_h : The main input width and height.
overlay_w,overlay_h:The overlay input width and height.

视频剪切

ffmpeg -ss 0:1:30 -t 0:0:20 -i input.mp4 -vcodec copy -acodec copy output.mp4

-ss 开始时间 -t 持续时间

从视频中抓图

ffmpeg -i input.mp4 -r 1 -f image2 image-%3d.jpeg

-r 提取图像的频率

未完待续。


以上都是简单的几个使用命令,如果想深入学习FFMPEG,那么请看这里。 https://blog.csdn.net/leixiaohua1020/article/details/15811977/. 当然,如果英语过关,直接看官网最好啦。 http://ffmpeg.org/documentation.html

转载请注明出处: https://chrunlee.cn/article/ffmpeg-cmd-store.html


感谢支持!

赞赏支持
提交评论
评论信息 (请文明评论)
暂无评论,快来快来写想法...
推荐
关于自动签到,之前也有过,感觉写过好多次了,有可能也重复了,不过这次是通过puppeteer来实现的,相对于之前的phantomjs 或 casperjs 或 request 等最起码会更简单些,也不用安装这么多稀奇古怪的东西。
好久配置了,最近重新安装了一回,有忘了.. 果然还是得记录下来啊,起码以后不用到处找了对吧。
业务需求需要一个微信的文章,但是这个文章又不想让所有人知道,只想让参与活动的人看到,那么怎么在不发布微信公众号文章的前提下,拿到文章的永久地址呢?
最近一直在了解关于个人支付的问题。由于之前一直想实现个人支付,但是目前微信和支付宝的支付接口都需要企业或个体户资质,导致没办法实现,无奈只能走向这个道路。 说是免签,实际上就是拿到收款金额来做些事情。
chrome css 下的 media=print 下的调试小技巧
最近入手了华为鲲鹏服务器... 作为一个菜鸡前端,去部署服务器,亚历山大.. 即便是各种抄抄抄也无济于事.
虽说docker已经大名鼎鼎,但在之前一直都未上手使用过,即便是前一阵子想挂下京东的京豆(使用docker)也给耽搁了,一直的感觉就是这货应该跟vm没啥区别吧,应该就是更方便更好用更适合开发者。
前段时间有问到一个网页去掉水印的问题,拿到地址一看..dom