Aufnehmen unter Ubuntu

  • Hallo liebe Besucher/Mitglieder des [lexicon]Let's Play[/lexicon] Forums.


    Heute möchte ich euch zeigen wie man unter Ubuntu richtig aufnimmt, da ich noch nichts Ähnliches hier entdeckt habe.


    [tabmenu]
    [tab=RecordMyDesktop]


    recordmyDesktop



    Ich benutze für meine Aufnahmen die Software "recordmyDesktop" welche kostenlos und direkt über APT verfügbar ist.
    Installieren könnt ihr sie mit dem folgenden Konsolenbefehl:


    Code
    sudo apt-get install recordmydesktop


    Anschließend könnt ihr das Programm starten, woraufhin folgendes Fenster erscheint:



    Ihr könnt jetzt bereits aufnehmen, allerdings sind die Einstellungen noch nicht perfekt. Diese solltet ihr noch anpassen. (Siehe dazu die Tabs zum Tutorial)


    [tab=Einstellungen zur Aufnahme]


    Die Videoeinstellungen


    Wenn ihr im Hauptfenster auf "Erweitert" klickt, so erscheint ein Fenster mit mehreren Tabs.
    Zunächst solltet ihr auf den Tab "Leistung" wechseln und dort die Framerate einstellen. (Ich benutze 30 fp/s)



    Die weiteren Einstellungen hier solltet ihr je nach Leistung eures PC's einstellen.
    Bei einem starken Prozessor könnt ihr z. B. während der Aufnahme encodieren um Zeit zu sparen.


    Im Anschluss könnt ihr auf den Tab Audio wechseln.



    Stellt hier die Kanalanzahl auf 2, die Frequenz auf 48000 und gibt als Gerät "pulse" ein.
    Im Normalfall müsst ihr allerdings noch den Pulse-Audio-Server entsprechend konfigurieren.



    Zunächst solltet ihr aber zum Tab "Misc" wechseln. Hier gibt es noch ein paar Einstellungen, wenn ihr Spiele aufnehmen möchtet.
    Entfernt hierfür die Haken bei "Fensterdekorationen einschließen" und "Aufnahmebereich zurücksetzen", das sorgt dafür, dass ihr nur noch den Fensterinhalt aufnimmt und damit die Auflösung kein seltsames Format annimmt.


    [tab=Die richtigen Audioeinstellungen]


    Die Audioeinstellungen


    Um recordmyDesktop für mehrere Quellen zu nutzen, sprich Game-Sound und Mikrofon, so muss noch der Pulse-Audio-Server richtig konfiguriert werden.
    Dafür muss zuvor das Programm "pavucontrol" installiert sein:


    Code
    sudo apt-get install pavucontrol


    Das könnt ihr jetzt über das Terminal, oder im Unity-Menü starten, worauf das folgende Fenster erscheint:


    Hier wurde bereits bewusst der Tab "Konfiguration" gewählt, da ihr die Profile am Besten direkt anpasst, um mögliche Fehlerquellen bereits jetzt auszuschließen.


    Unter Eingabegeräte könnt ihr noch das Mikrofon einstellen, falls ihr das noch nicht getan habt.
    Der wichtigste Teil folgt allerdings jetzt, denn momentan könnt ihr nur eine Quelle aufnehmen.


    Gebt in das Terminal folgende Befehle ein:


    Code
    pactl load-module module-null-sink sink_name=mixpactl load-module module-loopback sink=mixpactl load-module module-loopback sink=mix




    Hinweis: Die Befehle werden nach dem Herunterfahren des PC's zurückgesetzt, weshalb man ein Script schreiben sollte welches am Besten automatisch startet.
    Musterscript: Download (Muss nach Neustart ausgeführt werden, wenn ihr aufnehmen möchtet!)


    Wechselt anschließend bei pavucontrol zum Tab "Aufnahme" und wählt dort bei der Option "Anzeigen" "Alle Streams" aus.



    Ordnet den Loopbacks nun einmal eurer Mikrofon, und einmal eure Standard-Soundausgabe zu. Die Lautstärke könnt ihr noch anpassen, je nachdem wie gut man eure Stimme, bzw. den Sound des Spiels hören soll.
    Ihr habt nun zwei Audioquellen auf einen NULL-Punkt geleitet, welcher die Audio-Informationen enthält, wie sie später aufgenommen werden sollen. Aber nun muss dieser NULL-Punkt von recordmyDesktop akzeptiert werden.


    Dazu startet ihr kurzzeitig die Aufnahme über recordmyDesktop. Daraufhin erscheint unter pavucontrol der Punkt ALSA-plugin (recordmyDesktop). (Vorsicht: Eventuell müsst ihr erst herunterscrollen!)


    Hier könnt ihr jetzt den NULL-Punkt dem ALSA-Plugin zuordnen und die Einstellung wird dauerhaft gespeichert. In Zukunft braucht ihr nur noch recordmyDesktop starten und könnt damit 2 Audioquellen parallel aufnehmen.


    Glückwunsch, ihr habt eure Software erfolgreich für Let's Plays eingerichtet! ;)


    Tipp zum Schluss: "recordmyDesktop" nutzt das relativ untypische Format ".ogv". Allerdings lässt es sich mit dem kostenlosen Editor "PiTiVi" sehr einfach in ein anderes Format umwandeln.
    Eventuell werde ich dazu noch ein Tutorial schreiben.
    [/tabmenu]

  • leider lässt sich das Programm nicht auf ein Fenster fixieren.
    Ich habe damitt selbst mal ein paar Testaufnahmen gemaqcht, aber zum Aufnehmen muss ich auf win wechseln, finde ich eig. sehr schade!!

  • ups, hab ich doch glatt die ganze Zeit einen Knopf vergessen :D
    wie siehts denn mit Aufnsahmen aus, wenn ich das Siel im Vollbild habe?

  • Zitat

    Gebt in das Terminal folgende Befehle ein:


    Code
    pactl load-module module-null-sink sink_name=mix
    pactl load-module module-loopback sink=mix
    pactl load-module module-loopback sink=mix


    Hinweis: Die Befehle werden nach dem Herunterfahren des PC's zurückgesetzt, weshalb man ein Script schreiben sollte welches am Besten automatisch startet.


    Das ist nicht einmal nötig. Man kann die drei Zeilen (ohne das pactl natürlich) auch einfach in die /etc/pulse/default.pa eintragen, dann gelten die nebenbei auch für alle Nutzer, nachdem man einmal den pulseaudio-Service neu gestartet hat. (Warum die letzte eigentlich zwei mal?)


    Ich habe das ganze auch schon einmal ausprobiert gehabt, leider ist recordMyDesktop (zumindest bei mir?) schlichtweg zu langsam für durchschnittliche OpenGL-Anwendungen, selbst der KDE-Desktop ist mit aktivierten Desktop-Effekten zu viel für das Programm. Außerdem gibt es Probleme mit Vollbildfenstern. Ich bin allerdings vor kurzem über GLC gestolpert, habe es aber noch nicht ausprobiert. Klingt aber deutlich vielversprechender als diese Frickelei mit PulseAudio.

  • @mysteryworldlp: Bisher habe ich gute Erfahrungen mit dem Vollbildmodus gemacht, allerdings habe ich auch keine aufwändigeren 3D Spiele getestet.


    VikingGe: Danke für den Tipp mit der default.pa, das spart in Zukunft ein wenig Arbeit. (Man braucht übrigens die zwei Module, damit beide Kanäle gemixt werden können)
    Wie bereits erwähnt macht das Programm bei mir zur Zeit keine Fehler, aber GLC scheint auch recht interessant zu sein (Werde ich mir eventuell auch noch anschauen).

  • So, ich habe jetzt einfach mal ein kleines Testvideo erstellt. Ich hab einfach ein bisschen was dazu gequasselt, keinen Sound aufgenommen, war zu faul, das zu konfigurieren, aber es ging mir nur mal darum, zu testen, ob sich da was gebessert hat seit meinem letzten Versuch.
    Was auffällt:
    - Während der Aufnahme läuft alles butterweich - im Video sieht es leider oftmals anders aus. (Mit eingestellten 30fps).
    - Es gibt einige Repaint-Fehler, wo im Video Bildschirminhalte schlichtweg nicht aktualisiert werden. Passiert interessanterweise unabhängig von der Vollbild pro Frame-Funktion.
    - Es fehlen acht Pixel in der Höhe (1920x1072). Irgendwie scheinen nur 16-Pixel-Boundaries vernünftig zu funktionieren.
    - Die ogv-Datei, die das Programm ausspuckt, ist fehlerhaft. Es kommen Meldungen über falsche Keyframes, wenn man es abspielt, und Youtube zerschießt einem das Video dann komplett, musste also erstmal neu codiert werden. Und das, wo die Qualität nach dem Encoding ohnehin schon leidet, Theora ist eben nicht der Hammer.

  • Ich verwende libav/ ffmpeg und nehme in Xvid auf :cursing:


    Code
    avconv -f x11grab -r 25 -s 1040x800 -i :0.0 -vcodec libxvid -qscale:v 3 -aspect 1.333333333333333 out.avi


    GLC (nie getestet) scheint etwas wie Yukon mit Seom backend (getestet) zu sein. Das läuft bei OGL Anwendungen wie eine Eins, frisst aber auch knapp 1 GB für eine Minute. :(

  • Danke für das Tutorial, besonders für den Soundteil.



    Tipp zum Schluss: "recordmyDesktop" nutzt das relativ untypische Format ".ogv". Allerdings lässt es sich mit dem kostenlosen Editor "PiTiVi" sehr einfach in ein anderes Format umwandeln.
    Eventuell werde ich dazu noch ein Tutorial schreiben.


    Zum konvertieren nehm ich folgendes bash-Skript:



    Ansonsten habe ich noch das Problem, dass recordmydesktop ja nicht während der Aufnahme codiert, sondern direkt danach -_-. Als Konsequenz hab ich dann öfter mal 6 Instanzen von dem Teil am laufen, die alle im Hintergrund codieren. Das überlastet dann meinen Rechner und ich kann nichtmehr aufnehmen. Wenn es da nen vernünftigen Umgang dazu gibt, bitte ich darum den im Tutorial aufzunehmen.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!