Linux 录屏命令是 Linux 系统中用于捕获屏幕活动并保存为视频文件的工具,广泛应用于教程制作、问题排查、会议记录等场景,Linux 系统提供了多种录屏工具,每种工具都有其特点和适用场景,用户可以根据需求选择合适的工具,本文将详细介绍几种常用的 Linux 录屏命令,包括它们的安装方法、基本用法、高级参数以及实际应用场景。

最常用的录屏工具之一是 FFmpeg,FFmpeg 是一个强大的多媒体处理工具,不仅可以进行音视频录制,还能进行格式转换、流媒体处理等,使用 FFmpeg 录屏的基本命令格式为 ffmpeg -f x11grab -r 25 -s 1920x1080 -i :0.0 -c:v libx264 -preset ultrafast -crf 23 output.mp4。-f x11grab 指定使用 X11grab 作为输入格式,适用于 X11 系统的桌面录制;-r 25 设置帧率为 25 帧/秒;-s 1920x1080 指定录制分辨率为 1920x1080;-i :0.0 表示录制整个屏幕,0.0 是显示设备名称;-c:v libx264 指定视频编码为 H.264;-preset ultrafast 和 -crf 23 是编码参数,preset 控制编码速度和压缩率的平衡,ultrafast 表示最快速度但压缩率较低,crf 控制视频质量,取值范围 0-51,越小质量越高,如果需要录制音频,可以添加 -f alsa -i pulse 参数来捕获 PulseAudio 音频流,并使用 -c:a aac 指定音频编码为 AAC,FFmpeg 的优势在于功能强大且高度可定制,但命令参数较多,需要一定的学习成本。
另一种流行的录屏工具是 SimpleScreenRecorder(SSR),SSR 是一个图形化界面的录屏工具,操作简单,适合初学者,它支持录制整个屏幕、选定区域或特定窗口,可以调整帧率、比特率、音频源等参数,在 Ubuntu 系统中,可以通过 sudo apt install simplescreenrecorder 命令安装,启动后,用户可以通过界面选择录制区域、设置视频和音频参数,然后点击开始录制即可,SSR 还支持暂停、继续和停止录制,录制的视频可以保存为 MP4、MKV 等格式,相比 FFmpeg,SSR 的优势在于直观易用,但功能相对较少,适合对参数要求不高的用户。
对于需要快速录制的场景,byzanz 是一个轻量级的选择,Byzanz 是一个命令行工具,主要用于录制 GIF 动画,但也可以录制视频,安装命令为 sudo apt install byzanz,基本用法是 byzanz-record --duration=10 --delay=5 --cursor --area=800,600,400,300 output.gif,--duration=10 表示录制时长 10 秒,--delay=5 表示延迟 5 秒后开始录制,--cursor 表示录制鼠标指针,--area=800,600,400,300 指定录制区域为左上角坐标 (800,600),宽 400,高 300,Byzanz 的优势在于体积小、启动快,适合录制短屏幕活动,但功能较为基础,不支持高级编辑。
recordMyDesktop 是另一个经典的录屏工具,支持 X11 和 Wayland 环境,安装命令为 sudo apt install recordmydesktop,基本用法是 recordmydesktop --fps=25 --device=pulseaudio --delay=5 --output=output.ogv,--fps=25 设置帧率,--device=pulseaudio 指定音频设备,--delay=5 延迟 5 秒开始,--output=output.ogv 指定输出文件格式为 OGV,recordMyDesktop 的优势在于兼容性好,支持多种桌面环境,但输出格式和编码选项相对较少。

在选择录屏工具时,可以根据以下因素进行考虑:是否需要图形化界面、是否需要高级参数调整、是否需要录制音频、输出格式需求等,以下是几种工具的对比表格:
| 工具名称 | 类型 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|---|
| FFmpeg | 命令行 | 功能强大,高度可定制 | 参数复杂,学习成本高 | 高级用户,专业录制 |
| SimpleScreenRecorder | 图形化 | 操作简单,直观易用 | 功能相对较少 | 初学者,日常录制 |
| Byzanz | 命令行 | 轻量级,适合录制 GIF | 功能基础,不支持长视频 | 短屏幕活动,动画制作 |
| recordMyDesktop | 命令行 | 兼容性好,支持多种桌面环境 | 输出格式有限 | 传统 X11 环境录制 |
在实际应用中,可能需要结合多种工具或参数来实现最佳效果,使用 FFmpeg 录制特定窗口时,可以通过 xwininfo 命令获取窗口 ID,然后使用 -i :0.0 加上窗口坐标来指定录制区域,还可以使用 ffmpeg -f x11grab -r 25 -s 800x600 -i :0.0+100,200 -c:v libx264 -preset ultrafast output.mp4 来录制从屏幕坐标 (100,200) 开始,大小为 800x600 的区域。
Linux 录屏命令的灵活性和多样性使其能够满足不同用户的需求,无论是简单的屏幕录制还是复杂的音视频处理,Linux 都提供了相应的工具,通过掌握这些工具的使用方法,用户可以高效地完成屏幕录制任务,提升工作和学习效率。
相关问答 FAQs:

-
问:如何在 Linux 中录制带有系统声音的屏幕?
答: 使用 FFmpeg 可以轻松录制带有系统声音的屏幕,首先确保系统已安装 PulseAudio,然后使用以下命令:ffmpeg -f x11grab -r 25 -s 1920x1080 -i :0.0 -f alsa -i pulse -c:v libx264 -c:a aac output.mp4。-f alsa -i pulse用于捕获系统音频,-c:a aac指定音频编码为 AAC,如果需要调整音频质量,可以添加-b:a 128k参数设置音频比特率为 128kbps。 -
问:如何暂停和继续 FFmpeg 的屏幕录制?
答: FFmpeg 本身不支持直接暂停和继续录制,但可以通过结合kill和ffmpeg命令实现,首先启动录制时使用ffmpeg -f x11grab -r 25 -s 1920x1080 -i :0.0 output.mp4 &并记录进程 ID(PID),暂停时使用kill -STOP PID,继续时使用kill -CONT PID,也可以使用ffmpeg的-segment参数分段录制,然后通过合并文件来实现暂停和继续的效果。
