Linux下的GIF录制

来源:互联网 发布:淘宝脸部拍摄自助开通 编辑:程序博客网 时间:2024/06/06 08:15

简书排版
http://www.jianshu.com/p/a81cf3953937

本机OS:  Ubuntu 14.04 x64

Windows下录制gif图片的工具很多,Linux下录制的工具比较少
之前一直都是用Android Studio自带的工具录制成视频,也有使用OBS录制视频,然后使用FFMPEG库的命令进行转换,最终的结果就是图片体积很大,CSDN的图片上传都有大小限制,后来放到Github上,其他地方来引用,不过加载也很缓慢,后来找了几个帖子,有介绍使用byzanz工具录制的,记录一下使用过程。

首先是安装,比较简单

sudo apt-get install byzanz

如果找不到,可以先添加源

sudo add-apt-repository ppa:fossfreedom/byzanzsudo apt-get update && sudo apt-get install byzanz

直接录制

执行命令即可

byzanz-record --duration=10 --x=100 --y=100 --width=600 --height=600 output.gif
--duration 录制时长--x x坐标--y y坐标--width 录制宽度--height 录制高度output.gif 录制生成文件名

录制窗口

新建脚本byzanz-record-window.sh

#!/bin/bash# Example: byzanz-record-window 30 -c output.gif# Delay before startingDELAY=5# Duration and output fileif [ $# -gt 0 ]; then    D="--duration=$@"else    echo Default recording duration 5s to /tmp/recorded.gif    D="--duration=10 /tmp/recorded.gif"fiXWININFO=$(xwininfo)read X < <(awk -F: '/Absolute upper-left X/{print $2}' <<< "$XWININFO")read Y < <(awk -F: '/Absolute upper-left Y/{print $2}' <<< "$XWININFO")read W < <(awk -F: '/Width/{print $2}' <<< "$XWININFO")read H < <(awk -F: '/Height/{print $2}' <<< "$XWININFO")echo Delaying $DELAY seconds. After that, byzanz will startfor (( i=$DELAY; i>0; --i )) ; do    echo $i    sleep 1donebyzanz-record --verbose --delay=0 --x=$X --y=$Y --width=$W --height=$H $D

记得加上执行权限

chmod a+x byzanz-record-window.sh

录制视频

./byzanz-record-window 5 -c output.gif

附加:
如果不习惯上述方式
可以下载LICEcap这款Windows下的工具,配合Wine使用非常方便
http://www.cockos.com/licecap/

录制效果也非常好

参考:
http://einverne.github.io/post/2016/01/byzanz-record.html

0 0