一个惊人快速的终端录像工具,也能录制 VSCode 和 Chrome 窗口

文章目录
  1. 1. 简介
    1. 1.1. 项目地址
  2. 2. 下载安装
    1. 2.1. 在 MacOS 下安装使用
    2. 2.2. 在 Linux 下安装使用
    3. 2.3. 使用命令详解
    4. 2.4. 录制指定的窗口

【导语】:t-rec 是一款惊人的快速终端记录器,可以生成 gif 图像。

简介

t-rec 是使用 Rust 实现的一款快速终端记录器,结果可生成动图或视频,有以下特点:

  • 以每秒 4 帧的速度录制终端
  • 生成高质量的小尺寸动画 gif 图像或 mp4 视频
  • 内置空闲帧检测和优化 (用于超级流体演示)
  • 应用 (可以禁用) 边框装饰效果,如投影
  • 在 MacOS 和 Linux 上运行
  • 使用本地高效的 api
  • 在没有任何云服务的情况下运行,完全脱机
  • 支持终端尺寸大于 80x24
  • 字体和颜色均可正常显示
  • 支持基于 curses 的程序
  • 支持转义序列
  • 没有记录和重放 - 只是一个简单的命令来管理
  • 隐藏功能: 记录任意窗口

项目地址

github

下载安装

t-rec 仅支持在 MacOS 和 Linux 安装使用,方法如下:

在 MacOS 下安装使用

  • 使用 homebrew 安装:
brew install t-rec
  • 使用 cargo 安装:
#先安装依赖imagemagick
brew install imagemagick
cargo install -f t-rec 

在 Linux 下安装使用

  • 下载 deb 安装包安装:
sudo apt-get install imagemagick
wget https://github.com/sassman/t-rec-rs/releases/download/v0.5.0/t-rec_0.5.0_amd64.deb
sudo dpkg -i t-rec_0.5.0_amd64.deb
  • 使用 snap 安装:
sudo snap install t-rec --classic
/snap/bin/t-rec --version
t-rec 0.4.3
  • 从 AUR 下载
paru -S t-rec
  • 使用 cargo 安装:
# 先安装依赖imagemagick
sudo apt-get install libx11-dev imagemagick
cargo install -f t-rec

ubuntu 20.10 GNOME 下使用效果:

ubuntu 20.10 i3wm 下使用效果:

linux mint 20 cinnamon 下使用效果:

ArcoLinux 5.4 Xfwm4 下使用效果:

使用命令详解

t-rec [FLAGS] [OPTIONS] [shell or program to launch]
FLAGS:
    -h, --help       打印帮助信息
    -l, --ls-win     显示窗口ID,设置环境变量'WINDOWID'去录制指定的窗口
    -n, --natural    自然的打字体验并禁用空闲检测和采样优化
    -q, --quiet      静音模式,不提示:“Press Ctrl+D to end recording”
    -V, --version    显示版本信息
    -v, --verbose    详细信息

OPTIONS:
    -b, --bg <bg>          背景颜色[默认: transparent][可选: white, black,transparent]
    -d, --decor <decor>    装饰效果 [默认: shadow]  [可选: shadow, none]
    -m, --video <video>    对gif生成一个mp4视频[默认: mp4]  [可选: mp4]

ARGS:
    <shell or program to launch>    启动指定的程序,例如 '/bin/sh'


录制指定的窗口

  • 通过环境变量 TERM_PROGRAM 指定录制 Google Chrome 窗口
TERM_PROGRAM="google chrome" t-rec

Frame cache dir: "/var/folders/m8/084p1v0x4770rpwpkrgl5b6h0000gn/T/trec-74728.rUxBx3ohGiQ2"
Recording window: "Google Chrome 2"
Press Ctrl+D to end recording

  • 通过环境变量 WINDOWID 指定录制 VSCode 窗口
t-rec --ls-win | grep -i code
Code | 27600

# set the WINDOWID variable and run t-rec
WINDOWID=27600 t-rec

Frame cache dir: "/var/folders/m8/084p1v0x4770rpwpkrgl5b6h0000gn/T/trec-77862.BMYiHNRWqv9Y"
Press Ctrl+D to end recording