如何在Ubuntu中录制OpenGL游戏?


19

我想创建一个播放Minecraft(OpenGL游戏)的简短片段。通常的截屏录像机无法正确记录OpenGL

哪种软件可用于此目的?

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

  1. kazam:尽管设置为60 FPS,帧率仍然很低,没有声音,统一的菜单栏会在全屏窗口中不断闪烁。
  2. RecordMyDesktop:最大帧速率设置为50 FPS,但是如果不使用默认的15 FPS,视频将变得非常快。
  3. xvidcap:在12.04上不可用
  4. tibesti:不适用于12.04
  5. 眨眼:不运行
  6. ffmpeg:质量很低的视频,建议的设置没有声音,但是可能是可调的(不幸的是没有gui)。
  7. kdenlive:使用recordmydesktop,并且录制的剪辑损坏
  8. aconv:视频加速,图像经常损坏,没有声音

您确定这些程序可以在opengl游戏中正常工作吗?上次我检查他们的问题很多。
陶Szelei

不知道,那是一个好点。您应该将原件编辑为“如何在Ubuntu中录制OpenGL游戏”?
汤姆·布鲁斯曼

1
做完了 同时,我正在检查您再次链接的线程中的所有那些程序。到目前为止,还没有运气。菜单栏在全屏窗口中闪烁,并且录制的视频的帧率非常低(尽管使用了我的设置)。
陶Szelei

4
原来是一个骗子,但现在这个已编辑的问题应该保持开放,尤其是在进行了所有修改和改进工作之后。我看不到取消我之前的结束投票的方法,因此,我只删除我的第一条评论并投票。
汤姆·布鲁斯曼

1
这是一个玩笑,对吧?这个问题不是重复的-这些截屏录像机应用程序仅限于从硬件渲染的内容。由于X11架构的严重缺陷,gpu渲染中的opengl需要专用工具。这个问题必须重新开始
lurscher 2012年

Answers:


9

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

ppa:george-edison55 / glc启动板徽标有关使用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 <application>

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

完成后,您将得到一个/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.avi3,000 Kbps的比特率命名的MP4文件。


资料来源:


声音似乎未由此录制。而且,只有整个glc才能输出到avi。因此,对于分割视频,您必须重新启动整个游戏。除此之外,完美无缺。
phil294

7

我正在使用SimpleScreenRecorder记录我的Minecraft游戏玩法。需要进行一些调整才能使声音正常工作,但是录制Minecraft所需的几乎所有内容都应该在该站点中(在“录制游戏音频”下)。它有一个GUI,尽管有它的名字,却有很多设置,您可以调整这些设置以获取适合您需要的视频(例如质量与文件大小)。安装说明在这里。对于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设置,然后在“ Command”中通过Java命令打开Minecraft启动器: java -jar /path/to/launcher/Minecraft.jar。确保选中“自动启动OpenGL应用程序”。这将使您的Minecraft启动器在继续进入录制窗口时打开。只需登录,单击播放,然后按Ctrl + R(可配置为使用其他组合)即可开始/停止录制(或者,您可以使用按钮)。

glc是另一个执行相同功能的工具,但是我还没有使用过它,也不知道它是什么样的。随时尝试。


3

有很多程序可以从X缓冲区进行屏幕捕获,但这非常耗费处理器并且速度很慢。但是,我确实找到了一个实际上可以直接从图形卡捕获的选项:Yukon

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


1
Yukon有一个名为glc的后续活动:github.com/nullkey/glc
lurscher 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.