I would like to create a short clip of me playing Minecraft, an OpenGL game. The usual screencast recorders do not properly record OpenGL.
What kind of software is available for this purpose?
My experience with the software in the similar (but no longer duplicate) question:
- kazam: very low framerate despite setting to 60 FPS, no sound, unity menubar constantly flashing through the fullscreen window.
- RecordMyDesktop: max framerate setting is 50 FPS, but the video becomes extremely fast if not using the default 15 FPS.
- xvidcap: not available on 12.04
- tibesti: not available on 12.04
- wink: does not run
- ffmpeg: very low quality video and no sound with the recommended settings, might be tunable though (no gui unfortunately).
- kdenlive: uses recordmydesktop, and the recorded clip becomes corrupted
- aconv: video sped up, often broken image, no sound
GLC is well-suited for this purpose. Unfortunately it is not packaged in the archives. However, I have put it (and its dependencies) in a PPA:
You can add the PPA to your system using the following commands:
Then you can install GLC with:
Once the tool is installed, you can begin recording an application by running:
This will immediately start the application. You can start and stop the recording in-game by pressing the keyboard shortcut Shift + F8.
When you are done, you will end up with a file
/tmp/capture.glc
that contains the data captured by the tool. You can immediately playback the recording with:If you wish to convert the recording to a video, you can do so with:
This will create an MP4 file named
/tmp/capture.avi
with a bitrate of 3,000 Kbps.Sources:
I'm using SimpleScreenRecorder to record my Minecraft gameplay. It required a few tweaks to get the sound working but nearly everything you need for recording Minecraft should be in the site (under "Recording game audio"). It has a GUI and, despite the name, has quite a lot of settings that you can tweak to get a video to suit your needs (e.g. quality vs file size). Install instructions are here. For Ubuntu, you'll need to add a ppa repository:
To record Minecraft with it, make sure video input is set to "Record OpenGL", click OpenGL settings and put the Java command to open your Minecraft launcher in "Command":
java -jar /path/to/launcher/Minecraft.jar
. Make sure "Start the OpenGL application automatically" is checked.This should make your Minecraft launcher open you when continue to the recording window. Just log in, click play and press Ctrl + R (configurable to use other combinations) to start/stop recording (alternatively, you can use the buttons).glc is another tool that does the same thing, but I haven't used it yet and don't know what it's like. Feel free to try it though.
There are plenty of programs that screen capture from the X buffer, but that is very processor-intensive and slow. However, I did find one option that actually captures directly from the graphics card: Yukon
Another one is glc. glc is an ALSA & OpenGL capture tool for Linux. It consists of a generic video capture, playback and processing library and a set of tools built around that library. glc should be able to capture any application that uses ALSA for sound and OpenGL for drawing. It is still a relatively new project but already has a long list of features.