ARTICLE · 1120420
ubuntu下的录屏软件分享
tinyrec 即可打开。在 1920×1080、30 帧、画质「均衡」、不录音的条件下,实测大约占用 0.6 个 CPU 核心,进程内存峰值约 91 MB。
技术说明
界面是一个 GTK 3 小窗口,抓屏和编码交给 GStreamer 管线。程序本身不内置桌面环境,GTK、GStreamer 使用系统里已安装的库。H.264 编码器和 AAC 编码器随软件一起分发,安装包约 874 KB,装好后约占 2.8 MB。
录制管线如下:
ximagesrc → 指定帧率 → videoconvert(I420) → x264enc → h264parse → mp4mux → MP4pulsesrc → audioconvert → voaacenc → aacparse ──────────────┘ximagesrc(X11) | ||
ultrafast / veryfast | ||
pulsesrc + vo-aacenc | ||
mp4mux | ||
抓屏坐标来自 X11 根窗口。区域宽高会对齐到偶数像素,以符合 H.264 的采样要求。视频队列只保留少量帧,编码跟不上时丢掉旧帧,避免内存持续上涨。
画质对应的编码参数:
三种画质都关闭 B 帧,并使用 zerolatency 调优,缩短编码器内部缓冲。「清晰」额外使用 animation 心理视觉调优。帧率可选 15、24、30,帧率只影响抓屏和关键帧间隔,不额外做一次缩放。
声音默认关闭。打开后从 PulseAudio 读取默认输出的监听源(系统声音)或默认输入(麦克风)。配置写在 ~/.config/tinyrec/config.json,GStreamer 插件注册表写在 ~/.cache/tinyrec/。
当前抓屏依赖 X11。在 Wayland 会话里无法使用 ximagesrc。安装包架构为 amd64。
安装
在项目目录执行:
sudo apt install ./package/tinyrec_1.0.0_amd64.debapt 会安装这些依赖:Python 3、PyGObject、GTK 3、GStreamer 基础插件与 good 插件、PulseAudio 插件,以及 pactl。桌面通知使用 libnotify-bin(建议安装)。
卸载:
sudo apt remove tinyrec重新打包:
./package/build.sh生成的文件仍是 package/tinyrec_1.0.0_amd64.deb。
使用方法
安装后,在终端任意目录执行:
tinyrec也可以从应用菜单打开「录屏」。查看简要说明:
tinyrec --help窗口默认出现在主屏幕右上角。各控件的作用:
自选区域时,屏幕会变暗。拖拽出矩形后松开即可,按 Esc 取消。选区至少 16×16 像素。
停止录制:
再点一次按钮 按 F9(窗口被隐藏时用这个) 窗口仍在前台时按 Esc 关闭窗口。程序会先写完文件再退出
文件保存在所选目录,默认是主目录下的 Videos(没有则用 视频,再没有则用主目录)。文件名形如 录屏-20261003-215400.mp4。状态栏会显示刚保存的文件名。
想少占资源时,把帧率调到 15、画质调到「省资源」,并保持声音关闭。
不安装直接运行
在项目目录执行:
./tinyrec这与安装后的 tinyrec 是同一个界面,库文件从项目里的 vendor/ 加载。需要系统已有 /usr/bin/python3、PyGObject 和上面列出的 GStreamer 插件。编码器若缺失,可在有网络时执行 ./scripts/fetch-encoder.sh 重新下载。