webpmux 批量合成、分解动图

系统管理自动化、图像处理(ImageMagick, WebP, nConvert)、文档转换(pandoc)、网络(wget, curl)
头像
paktc
渐入佳境
渐入佳境
帖子: 50
注册时间: 2016年07月21日 20:34
拥有现金: 锁定
储蓄: 锁定
Has thanked: 6 times
Been thanked: 5 times
联系:

webpmux 批量合成、分解动图

帖子 #1 paktc » 2018年10月09日 08:47

参考:http://bbs.bathome.net/thread-50892-1-1.html

webpmux 的google资源被墙了,但是可以通过 百度快照间接获得
百度快照-developers.google.com/speed/webp

具体的,工具集的下载链接请点击 Download for Windows

逐帧拆解示例(代码第二行,先把解压后的工具集目录添加到PATH环境变量,方便调用)

代码: 全选

@echo off &setlocal enabledelayedexpansion
set path=%path%;.\libwebp-1.0.0-windows-x86\bin

set file=cell_animation.webp
for /f "tokens=1 delims=:" %%a in ('webpmux -info cell_animation.webp ^|more +5') do (
    set /a num=%%a
    webpmux -get frame !num! %file% -o frame-!num!.webp
)
pause

或者

代码: 全选

@echo off
set path=%path%;.\libwebp-1.0.0-windows-x86\bin

set file=cell_animation.webp
for /f "tokens=2 delims=:" %%a in ('webpmux -info cell_animation.webp ^|find "frames:"') do set /a max=%%a
for /l %%n in (1,1,%max%) do webpmux -get frame %%n %file% -o frame-%%n.webp
pause
多张webp图片合并成一张webp动图

代码: 全选

@echo off &setlocal enabledelayedexpansion
set path=%path%;.\libwebp-1.0.0-windows-x86\bin

set /a max=29
REM create long long command
for /l %%a in (1,1,%max%) do set arg=!arg! -frame frame-%%a.webp +100
webpmux %arg% -o merge.webp
pause

或者也可以通过 image-magick 先合成 gif 再用 gif2webp 转换。(magick 可以处理单帧的webp图片,暂时不支持webp动图)

代码: 全选

magick convert *.webp test.gif
REM 注意,使用这种*.webp的形式合并,每一帧的编号必须是补0的形式,否则会乱序
gif2webp -lossy test.gif -o out.webp

回到 “第三方命令行工具”

在线用户

用户浏览此论坛: 没有注册用户 和 1 访客