Linux下的GIF录制

简书排版
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 starting
DELAY=5

# Duration and output file
if [ $# -gt 0 ]; then
    D="--duration=$@"
else
    echo Default recording duration 5s to /tmp/recorded.gif
    D="--duration=10 /tmp/recorded.gif"
fi
XWININFO=$(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 start
for (( i=$DELAY; i>0; --i )) ; do
    echo $i
    sleep 1
done

byzanz-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
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值