如何在Ubuntu中录制OpenGL游戏?

我想创建一个关于我玩Minecraft 游戏的简短片段。 通常的截屏录像机不能正确记录OpenGL

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

我在类似(但不再重复)的问题中使用该软件的经验:

  1. kazam :帧速率非常低,尽管设置为60 FPS,没有声音,统一菜单栏不断闪烁通过全屏窗口。
  2. RecordMyDesktop :最大帧速率设置为50 FPS,但如果不使用默认的15 FPS,video将变得非常快。
  3. xvidcap :12.04不可用
  4. tibesti :12.04不可用
  5. 眨眼 :没跑
  6. ffmpeg :非常低质量的video,没有推荐设置的声音,虽然可能是可调的(不幸的是没有gui)。
  7. kdenlive :使用recordmydesktop,录制的剪辑被破坏
  8. aconv :video加速,经常破碎的图像,没有声音

GLC非常适合此目的。 不幸的是,它没有打包在档案中。 但是,我已将它(及其依赖项)放在PPA中:

PPA:乔治edison55 / GLC Launchpad徽标 ( 单击此处获取有关使用PPA的说明。 )

您可以使用以下命令将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  

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

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

 glc-play /tmp/capture.glc 

如果您希望将录制内容转换为video,可以执行以下操作:

 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,尽管有名称,但有很多设置可以调整以获得满足您需求的video(例如质量与文件大小)。 安装说明在这里 。 对于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,请确保将video输入设置为“Record OpenGL”,单击OpenGL设置并使用Java命令在“Command”中打开Minecraft启动器: java -jar /path/to/launcher/Minecraft.jar 。 确保选中“自动启动OpenGL应用程序”。这样可以让您的Minecraft启动器在继续录制窗口时打开。 只需登录,单击播放并按Ctrl + R(可配置为使用其他组合)开始/停止录制(或者,您可以使用按钮)。

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

有很多程序可以从X缓冲区中屏幕捕获,但这是非常耗费处理器和缓慢的。 但是,我确实找到了一个直接从显卡中捕获的选项:Yukon

另一个是glc。 glc是用于Linux的ALSA和OpenGL捕获工具。 它包括一个通用的video捕获,回放和处理库以及围绕该库构建的一组工具。 glc应该能够捕获任何使用ALSA进行声音和OpenGL绘制的应用程序。 它仍然是一个相对较新的项目,但已经有很多function。