Comment puis-je enregistrer un jeu OpenGL dans Ubuntu?

19

Je voudrais créer un court extrait de moi jouant à Minecraft, un jeu OpenGL . Les enregistreurs de screencast habituels n'enregistrent pas correctement OpenGL .

Quel type de logiciel est disponible à cet effet?

Mon expérience avec le logiciel dans la question similaire (mais plus en double) :

  1. kazam : framerate très faible malgré un réglage à 60 FPS, pas de son, la barre de menus de l'unité clignote constamment à travers la fenêtre plein écran.
  2. RecordMyDesktop : le paramètre de fréquence d' images maximale est de 50 FPS, mais la vidéo devient extrêmement rapide si vous n'utilisez pas les 15 FPS par défaut.
  3. xvidcap : non disponible le 12.04
  4. tibesti : non disponible le 12.04
  5. clin d'oeil : ne fonctionne pas
  6. ffmpeg : vidéo de très faible qualité et aucun son avec les paramètres recommandés, mais peut être ajustable (pas de gui malheureusement).
  7. kdenlive : utilise recordmydesktop et le clip enregistré est corrompu
  8. aconv : vidéo accélérée, image souvent cassée, pas de son
Tamás Szelei
la source
Êtes-vous sûr que ces programmes fonctionnent correctement avec un jeu opengl? La dernière fois que j'ai vérifié, ils avaient beaucoup de problèmes avec ça.
Tamás Szelei
Je ne sais pas, c'est un bon point. Vous devriez peut-être éditer votre original sur 'Comment puis-je enregistrer un jeu OpenGL dans Ubuntu'?
Tom Brossman
1
Terminé. En attendant, je vérifie à nouveau tous ces programmes dans le fil que vous avez lié. Jusqu'à présent, pas de chance. La barre de menus clignote à travers la fenêtre plein écran et le framerate est très bas dans la vidéo enregistrée (malgré les paramètres que j'utilise).
Tamás Szelei
4
L'original était une dupe mais maintenant cette question modifiée devrait rester ouverte, en particulier avec toutes les modifications et les efforts déployés pour l'améliorer. Je ne vois aucun moyen d'annuler mon vote serré précédent, je vais donc simplement supprimer mon premier commentaire et voter.
Tom Brossman
1
C'est une blague, n'est-ce pas? cette question n'est pas un doublon - ces applications d'enregistreur de screencast sont limitées aux choses rendues à partir du matériel. opengl dans le rendu gpu nécessite des outils spécialisés, en raison de la sévérité de l'architecture X11. Cette question doit être rouverte
lurscher

Réponses:

9

GLC est bien adapté à cet effet. Malheureusement, il n'est pas emballé dans les archives. Cependant, je l'ai mis (et ses dépendances) dans un PPA:

ppa: george-edison55 / glcLogo Launchpad ( Cliquez ici pour obtenir des instructions sur l'utilisation des AAE. )

Vous pouvez ajouter le PPA à votre système à l'aide des commandes suivantes:

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

Ensuite, vous pouvez installer GLC avec:

sudo apt-get install glc

Une fois l'outil installé, vous pouvez commencer à enregistrer une application en exécutant:

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

Cela démarrera immédiatement l'application. Vous pouvez démarrer et arrêter l'enregistrement dans le jeu en appuyant sur le raccourci clavier Shift+ F8.

Lorsque vous avez terminé, vous vous retrouverez avec un fichier /tmp/capture.glccontenant les données capturées par l'outil. Vous pouvez immédiatement lire l'enregistrement avec:

glc-play /tmp/capture.glc

Si vous souhaitez convertir l'enregistrement en vidéo, vous pouvez le faire avec:

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

Cela créera un fichier MP4 nommé /tmp/capture.aviavec un débit binaire de 3 000 Kbps.


Sources:

Nathan Osman
la source
le son ne semble pas être enregistré par cela. De plus, la sortie vers avi n'est possible qu'avec l'ensemble du glc. ainsi, pour les vidéos divisées, vous devrez redémarrer tout le jeu. A part ça, parfait.
phil294
7

J'utilise SimpleScreenRecorder pour enregistrer mon gameplay Minecraft. Il a fallu quelques ajustements pour que le son fonctionne, mais presque tout ce dont vous avez besoin pour enregistrer Minecraft devrait être sur le site (sous "Enregistrement de l'audio du jeu"). Il a une interface graphique et, malgré son nom, a beaucoup de paramètres que vous pouvez modifier pour obtenir une vidéo adaptée à vos besoins (par exemple, qualité vs taille de fichier). Les instructions d'installation sont ici . Pour Ubuntu, vous devrez ajouter un référentiel 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

Pour enregistrer Minecraft avec elle, faire l' entrée vidéo vous est réglé sur « Record OpenGL », cliquez sur Paramètres OpenGL et mettre la commande Java pour ouvrir votre lance Minecraft dans « Command »: java -jar /path/to/launcher/Minecraft.jar. Assurez-vous que "Démarrer l'application OpenGL automatiquement" est coché. Cela devrait faire que votre lanceur Minecraft vous ouvre lorsque vous passez à la fenêtre d'enregistrement. Connectez-vous, cliquez sur lecture et appuyez sur Ctrl + R (configurable pour utiliser d'autres combinaisons) pour démarrer / arrêter l'enregistrement (vous pouvez également utiliser les boutons).

glc est un autre outil qui fait la même chose, mais je ne l'ai pas encore utilisé et je ne sais pas à quoi il ressemble. N'hésitez pas à l'essayer.

Anomitee
la source
3

Il existe de nombreux programmes de capture d'écran à partir du tampon X, mais c'est très gourmand en processeur et lent. Cependant, j'ai trouvé une option qui capture directement la carte graphique: Yukon

Un autre est glc. glc est un outil de capture ALSA et OpenGL pour Linux. Il se compose d'une bibliothèque générique de capture, de lecture et de traitement vidéo et d'un ensemble d'outils construits autour de cette bibliothèque. glc devrait pouvoir capturer n'importe quelle application qui utilise ALSA pour le son et OpenGL pour le dessin. C'est encore un projet relativement nouveau mais il a déjà une longue liste de fonctionnalités.

krupal6022
la source
1
il y a un suivi pour le Yukon appelé glc: github.com/nullkey/glc
lurscher