当前位置: 首页>>技术教程>>正文


如何在 Ubuntu 中录制 OpenGL 游戏?

, , , ,

问题描述

我想制作一个我玩 Minecraft(一种 OpenGL 游戏)的短片。常用的截屏录像机无法正确录制 OpenGL。

什么样的软件可用于此目的?

我对 similar (but no longer duplicate) question 中软件的体验:

  1. kazam:尽管设置为 60 FPS,但帧率非常低,没有声音,unity 菜单栏在全屏窗口中不断闪烁。

  2. RecordMyDesktop:最大帧率设置为 50 FPS,但如果不使用默认的 15 FPS,视频会变得非常快。

  3. xvidcap:在 12.04 上不可用

  4. tibesti:在 12.04 上不可用

  5. 眨眼:不跑

  6. ffmpeg:非常低质量的视频,并且在推荐设置下没有声音,但可能是可调的(不幸的是没有 gui)。

  7. kdenlive:使用 recordmydesktop,录制的剪辑损坏

  8. aconv:视频加速,图像经常损坏,没有声音

最佳答案

为此,GLC 为 well-suited。不幸的是,它没有打包在档案中。但是,我已将它(及其依赖项)放在 PPA 中:

\\n

ppa:george-edison55/glc Launchpad logo (Click here for instructions on using PPAs.)

\\n

您可以使用以下命令将 PPA 添加到系统中:

sudo apt-add-repository ppa:george-edison55/glc
sudo apt-get update

然后你可以安装 GLC:

sudo apt-get install glc

安装该工具后,您可以通过运行以下命令开始录制应用程序:

glc-capture -o /tmp/capture.glc <application>

这将立即启动应用程序。您可以通过按键盘快捷键 Shift + F8 来开始和停止录制 in-game。

完成后,您将得到一个文件 /tmp/capture.glc,其中包含该工具捕获的数据。您可以立即播放录音:

glc-play /tmp/capture.glc

如果你想将录音转换成视频,你可以这样做:

glc-play /tmp/capture.glc -y 1 -o - | mencoder -demuxer y4m - \
    -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=3000 -o /tmp/capture.avi

这将创建一个名为 /tmp/capture.avi 的 MP4 文件,比特率为 3,000 Kbps。


资料来源:

次佳答案

我正在使用 SimpleScreenRecorder 来记录我的 Minecraft 游戏。它需要一些调整才能使声音正常工作,但录制 Minecraft 所需的几乎所有内容都应该在站点中(在“录制游戏音频”下)。它有一个 GUI,尽管有这个名字,但它有很多设置,您可以调整这些设置以获得适合您需要的视频(例如质量与文件大小)。安装说明是 here 。对于 Ubuntu,您需要添加一个 ppa 存储库:

sudo add-apt-repository ppa:maarten-baert/simplescreenrecorder
sudo apt-get update
sudo apt-get install simplescreenrecorder
# if you want to record 32-bit OpenGL applications on a 64-bit system:
sudo apt-get install simplescreenrecorder-lib:i386

要用它录制 Minecraft,请确保视频输入设置为 “Record OpenGL”,单击 OpenGL 设置并将 Java 命令放入 “Command”:\n java -jar /path/to/launcher/Minecraft.jar 以打开您的 Minecraft 启动器。确保选中“自动启动 OpenGL 应用程序”。这应该会让您的 Minecraft 启动器在继续录制窗口时打开您。只需登录,单击播放并按 Ctrl + R(可配置为使用其他组合)开始/停止录制(或者,您可以使用按钮)。

glc 是另一个做同样事情的工具,但我还没有使用它,不知道它是什么样的。不过请随意尝试。

第三种答案

有很多程序可以从 X 缓冲区捕获屏幕,但速度非常 processor-intensive 且速度很慢。但是,我确实找到了一个实际上直接从显卡捕获的选项:Yukon

另一个是glc。 glc 是一个 ALSA &用于 Linux 的 OpenGL 捕获工具。它由一个通用的视频捕获、回放和处理库以及围绕该库构建的一组工具组成。 glc 应该能够捕获任何使用 ALSA 进行声音和 OpenGL 进行绘图的应用程序。它仍然是一个相对较新的项目,但已经拥有一长串功能。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/13677.html,未经允许,请勿转载。