Bash ImageMagick,对“导入-捕捉-暂停”的解释?

Bash ImageMagick,对“导入-捕捉-暂停”的解释?,bash,imagemagick,Bash,Imagemagick,对于背景故事,我的目标是使用ImageMagick中的import和convert命令,使用-snaps-pause选项拍摄屏幕快照,并使用convert制作Gif动画。换句话说,我想在Bash脚本中使用ImageMagick制作一个桌面记录器。因为我的问题是关于import-snaps-pause的具体用法,所以我不隐藏转换阶段 到目前为止,以下命令行在这方面非常有效: import-窗口根目录-快照30-暂停1-监视器屏幕截图.miff 在上面的cmd行示例中,我设置了-snaps 30,这

对于背景故事,我的目标是使用ImageMagick中的
import
convert
命令,使用
-snaps-pause
选项拍摄屏幕快照,并使用
convert
制作Gif动画。换句话说,我想在Bash脚本中使用ImageMagick制作一个桌面记录器。因为我的问题是关于
import-snaps-pause
的具体用法,所以我不隐藏转换阶段

到目前为止,以下命令行在这方面非常有效:

import-窗口根目录-快照30-暂停1-监视器屏幕截图.miff

在上面的cmd行示例中,我设置了
-snaps 30
,这样它将以1秒的延迟拍摄30张图像
-pause 1
。可以制作30秒左右的Gif动画

因此,现在我想提高动画的流动性(图像/秒),并找到一种方法来设置所需的im/s快照速率。我目前正在尝试通过以下方式获得2张图像/秒的动画:

导入-窗口根目录-快照30-暂停0.5-监视器屏幕截图。miff

我在想,
-pause 0.5
将在每次快照之前等待0.5秒,并以每秒2幅图像的速度制作15秒的Gif动画,但实际上它制作的是相反的,看起来像每秒30幅图像的1秒Gif动画

ImageMagick向导能否解释如何正确使用或共享有关此主题的良好文档或示例

ImageMagick 6.9.2-7


谢谢

尝试设置每个帧在生成的GIF中显示的时间量,如下所示:

import -window root -snaps 30 -pause 0.5 -monitor -set delay 50 screenshot.gif

这就是事实,我在转换阶段设置了延迟,我要寻找的是一种将-pause选项设置在1秒以下的方法,而不是在现有Gif中缩放帧速率。我尝试了你的例子,但没有什么不同。如果我运行
时间导入-窗口根-暂停1…
运行需要40秒,而如果我使用
-pause 0.5
运行需要20秒,因此它似乎是在尊重
-pause
中的小数秒,至少在我的系统上。感谢
time
cmd,它实际上是非常有用的技巧,这很奇怪,因为我使用
-snaps30-暂停1
进行测试,持续时间为33.902秒,而使用
-snaps30-暂停0.5
则持续时间为3.601秒。我运行了,但我不认为有任何原因会改变ImageMagick工具的工作方式。通常我使用macOS并用它进行了测试,但我只是在LinuxMint上运行了它,看到了与您相同的结果。如果您同时删除
-暂停
,并使输出文件
抓取-%04d.gif
,您将以最快的速度获得所有抓取。然后,您可以在脚本中每8帧中删除7帧或类似的内容,以获得所需的速率,然后使用
convert-delay 50 grab-*gif result.gif
将剩余的帧组合成gif。如果我找到了解决方法,我将对此进行深入研究并进行更新,非常感谢您的时间。