我曾经见过该网站多次推广的屏幕截图的动画 GIF 图像(如下所示),作为一种改进答案的方式。
使用什么工具链来创建这些?是否有程序可以自动执行此操作,还是人们会截取屏幕截图,将其转换为一系列静态帧,然后创建 GIF 图像?
答案1
答案2
拜赞斯
我发现录制 GIF 截屏视频的最佳软件是 Byzanz。
Byzanz 很棒,因为它直接记录为 GIF,质量和 FPS 令人印象深刻,同时将文件大小保持在最小。
安装
Byzanz 现在可以从 Universe 存储库获取:
sudo apt-get install byzanz
用法
安装完成后,您可以在终端中运行它。
这是我刚才做的一个小例子
byzanz-record --duration=15 --x=200 --y=300 --width=700 --height=400 out.gif
答案3
首先安装这个:
sudo apt-get install imagemagick mplayer gtk-recordmydesktop
这些是必需的东西,ImageMagick、MPlayer 和 Desktop Recorder。然后使用桌面录音机捕获屏幕/应用程序的一部分以用作截屏视频。桌面录制器将录制内容保存到OGV 视频,播放器将用于捕获 JPEG 屏幕截图,并将其保存到“输出”目录中。
在终端上:
mplayer -ao null <video file name> -vo jpeg:outdir=output
使用图像魔术师将屏幕截图转换为动态 gif。
convert output/* output.gif
您可以通过以下方式优化屏幕截图:
convert output.gif -fuzz 10% -layers Optimize optimised.gif
答案4
ffmpeg(安装)
我使用的最好的工具之一是ffmpeg
。它可以从截屏工具(例如)获取大多数视频kazam
并将其转换为其他格式。
从安装软件中心- 如果您安装了优秀ubuntu-restricted-extras
软件包,它会自动安装。
Kazam 可以输出视频格式mp4
或webm
。通常,以 格式输出可获得更好的效果mp4
。
GIF 制作语法示例
将视频转换为 gif 的基本语法是:
ffmpeg -i [inputvideo_filename] -pix_fmt rgb24 [output.gif]
转换后的 GIF(尤其是标准 25/29 帧每秒的 GIF)可能非常大。例如,800Kb webm 15 秒视频以 25fps 的速度输出时可能达到 435 MB!
您可以通过多种方法来减少这种情况:
帧速率
使用选项-r [frame-per-second]
。例如
ffmpeg -i Untitled_Screencast.webm -r 1 -pix_fmt rgb24 out.gif
大小从 435 MB 减小到 19 MB
文件大小限制
使用选项-fs [filesize]
。例如
ffmpeg -i Untitled_Screencast.webm -fs 5000k -pix_fmt rgb24 out.gif
笔记:这是近似的输出文件大小,因此其大小可能比指定的稍大。
输出视频尺寸
使用选项-s [widthxheight]
。例如
ffmpeg -i Untitled_Screencast.webm -s 320x200 -pix_fmt rgb24 out.gif
这将示例 1366x768 视频大小减小到 26 MB
永远循环
有时您可能希望 GIF 永远循环播放。
使用选项-loop_output 0
。例如
ffmpeg -i Untitled_Screencast.webm -loop_output 0 -pix_fmt rgb24 out.gif
进一步优化和缩小
如果使用imagemagick
convert
3% 到 10% 之间的模糊系数,则可以显著减小图像大小
convert output.gif -fuzz 3% -layers Optimize finalgif.gif
最后
结合这些选项中的一些来减少到 Ask Ubuntu 可管理的范围。
ffmpeg -i Untitled_Screencast.webm -loop_output 0 -r 5 -s 320x200 -pix_fmt rgb24 out.gif
其次是
convert output.gif -fuzz 8% -layers Optimize finalgif.gif