By:valen
首先,非常感激“逗亦斗霸”邀请注册!
我看见聚友们发的动图质量普遍较差,想分享高清无损动图和截取音视频的诀窍,为社区添砖加瓦。
我预置的命令参数是核心优势,专为常用视频转换定制,优于很多媒体软件和搜索引擎结果。
建议大家多用webp格式图片,无损!超小!Chromium/Firefox/Safari核心的浏览器兼容。
附件为魔改而成的UltraGUI,原版只能转音频。属于命令行工具前端,实际简单易用,别怕。
VB程序,才80KB,下载地址:
https://cowtransfer.com/s/d657b6f661564f
https://www.mirrored.to/files/1LPEFTVZ/UltraGUI.zip_links
经多引擎检测为安全无毒:
https://s.threatbook.cn/report/file/b96fe36ef4620e721253e722fef8fa47c60659e530f66b322542fe86de7f1ec2/?env=win7_sp1_enx86_office2013
https://www.virustotal.com/gui/file/b96fe36ef4620e721253e722fef8fa47c60659e530f66b322542fe86de7f1ec2/detection
用法说明:
1、先去 https://ffmpeg.zeranoe.com/builds,点击“Download builds”,解压得到 ffmpeg.exe,放入UltraGUI文件夹;
2、双击 UltraGUI.exe,拉大窗口,拖入或浏览你要处理的文件;
3、在下方“Command line”下拉菜单选择相应命令参数,可以随时编辑修改参数。看不懂没关系,多数已为最优。含“-ss”参数的你只需指定时间就够了,很简单。
4、默认生成文件在同源目录,可点击“Browse”指定输出路径。
5、点击“Start”开始转换。
命令详解:
1、
ffmpeg -i <infile> & pause
用于查看媒体文件的详细信息。
2、
ffmpeg -y -v warning -i <infile> <outfile.flac> & pause
ffmpeg -y -v warning -i <infile> <outfile.wav> & pause
用于转换纯音频文件为无损的flac或wav。
3、
ffmpeg -y -v warning -i <infile> -vn -acodec copy <outfile.aac> & pause
ffmpeg -y -v warning -i <infile> -vn -acodec aac -aq 2 <outfile.aac> & pause
用于提取视频中的音频:第一组命令为直接复制为acc,第二组可转为品质较好的acc。
4、
ffmpeg -y -v warning -i <infile> -ss 00:00:00 -t 00:00:00 -acodec copy -vcodec copy <outfile.mp4> & pause
ffmpeg -y -v warning -i <infile> -ss 00:00:00 -t 00:00:00 -acodec copy -vcodec libx264 <outfile.mp4> & pause
用于视频任意部分截取,其中“-ss”表示起始时间,“-t”表示持续时长(注意不是结束/截止时间!!下同!),时间可以查看播放器进度。
第一组命令为直接复制原始音频视频编码,若是avi格式你可修改为“<outfile.avi>”,等等;第二组对于其它视频格式截取后转换成H.264编码的MP4。
5、
ffmpeg -y -v warning -i <infile> -ss 00:00:00 -t 00:00:01 <outfile-%%02d.png> & pause
用于解压视频帧为png格式的图片,默认1秒20张图片,起始时间请你按需定义。
6、
ffmpeg -y -v warning -i <infile> -ss 00:00:00 -t 00:00:01 -vf "fps=10,scale=iw/2:-1:flags=spline,format=bgra" <outfile.gif> & pause
ffmpeg -y -v warning -i <infile> -ss 00:00:00 -t 00:00:01 -filter_complex "fps=10,scale=iw/2:-1:flags=spline,split[x][y];[x]palettegen[p];[y]fifo[z];[z][p]paletteuse" <outfile.gif> & pause
ffmpeg -y -v warning -i <infile> -ss 00:00:00 -t 00:00:01 -vcodec libwebp -loop 0 -lossless 0 -q:v 80 -vf "fps=10,scale=iw/2:-1" <outfile.webp> & pause
用于视频转高清动图,通常情况你只需指定时间就够了。
webp是Google最新开发无损动图,转换速度很快、体积超小!第一、二组为高清gif,第二组质量更高但转换时间较长。
fps=10 表示10帧,影响平滑度和文件体积,通常够了。
scale=iw/2:-1 表示画面缩小1/2,你若把“2”改为“4”则缩小为四分之一,可以改为任意整数;“-1”表示长宽比例不变,这参数不要改。
每行末尾的“& pause”表示执行完后暂停,如果你想连续处理多个文件,可以删掉它。其余参数不用管。
你熟悉ffmpeg的话可以自行添加所需命令到配置文件UltraGUI.ini。
欢迎大家发言交流!
BB姬
