ffmpeg堪称多媒体处理的瑞士军刀,通过一些简单的指令便可对多媒体文件进行处理来满足不同的需求,笔者也是近期接触,大佬轻喷
下载和安装
官网提供不同平台的安装包 http://www.ffmpeg.org/download.html
win:https://github.com/BtbN/FFmpeg-Builds/releases
安装
这里简单讲解win平台如何使用
两种方法
1.直接使用主程序 ffmpeg.exe 使用时必须要指定路径
2.配置环境变量(推荐)
解压程序包→复制ffmpeg主程序路径(一般在bin文件夹)→右键此电脑→属性→高级系统设置→环境变量→系统变量中的path,双击→新建→复制刚刚的路径
使用
配合cmd或者powershell
最简单的语句:ffmpeg -i input output复制代码 就是这么简单,input为输入文件,output为输出文件
实例 这里的第一步都需要切换至资源(图片)目录cmd→cd /d贴上路径回车
1.实现图片格式的转换,以常见的png转jpg为例
ffmpeg -i input.jpg output.png复制代码
2.图片的简单压缩
ffmpeg -i input.jpg output.jpg复制代码 ps:在不指定参数的情况下,ffmpeg将自动为图片执行压缩(图片质量约为7?)
指定一个压缩质量,个人比较喜欢 q 5
ffmpeg -i input.jpg -q 5 output.jpg复制代码
除了大小,看不出什么区别。。
执行批量压缩,这个比较实用
新建记事本,编辑:
for %%a in (“*.png” and “*.jpg” and “*.jpeg”) do ffmpeg -i “%%~a” -q 5 “新建文件夹/%%~na.jpg”复制代码
解释下,这里使用for语句,括号里为输入文件的格式,可以是多个格式。为了避免某些文件名称带有空格等字符,最好标上引号。为了避免输出文件与输入文件冲突,输出文件放入文件夹(名称自选)同目录输出当然也可以选择加 -y或者其他后缀
另存为bat,在资源文件(图片)目录双击执行
压缩比还是很可观的
3.图片约束尺寸按比例压缩
ffmpeg -i input.jpg -vf “scale=1920:-1” output.jpg复制代码 约束宽为1920,比例不变
ffmpeg -i input.jpg -vf “scale=-1:1080” output.jpg复制代码 约束高为1080,比例不变
批量:for %%a in (“*.png” and “*.jpg” and “*.jpeg”) do ffmpeg -i “%%~a” -vf “scale=-1:1080” -q 5 “完成/%%~na.jpg”复制代码
将目录中png/jpg/jpeg约束高1080等比例缩放,加上刚刚的指定质量会更符合预期
4.图片剪裁
同上使用 -vf ,crop参数
ffmpeg -i input.jpg -vf crop=1000:1000 output.jpg复制代码默认于中心向四周剪裁1000*1000的图片
ffmpeg -i input.jpg -vf crop=1000:1000:500:500 output.jpg复制代码指定坐标点为500:500
按比例剪裁
ffmpeg -i input.jpg -vf “crop=iw:iw/16*9” -q 5 output.jpg复制代码约束宽为宽,比例为16:9,中心剪裁,长宽比在1.77以内可用
ffmpeg -i input.jpg -vf “crop=ih/9*16:ih” -q 5 output.jpg复制代码约束高为高,比例为16:9,中心剪裁,长宽比在1.77以上使用
同样批量:for %%a in (“*.png” and “*.jpg” and “*.jpeg”) do ffmpeg -i “%%~a” -vf “crop=iw:iw/16*9” -q 5 “完成/%%~na.jpg”复制代码
差不多就这样吧
江西省网友说:太難了 我用美圖秀秀(不是
辽宁省网友说:可以了,批处理很方便的
湖北省网友说:可以感谢教程分享
吉林省网友说:第一次写,感谢支持
青海省网友说:ffmpeg 这么强大啊,可以学习一下。
江苏省网友说:有没有mac当中的批处理介绍?
吉林省网友说:抱歉,手上没有mac,对mac完全不了解。。
浙江省网友说:等一个视频处理
河南省网友说:正在看小猪佩奇
黑龙江省网友说:收藏了 学习学习
四川省网友说:来个压制h.264 的mp4命令吧