Screencast mit Jack
Für Linux gibt es ja so einiges Tools, um einen Screencast zu erstellen. Einen Überblick über die Tools im Allgemeinen kann man sich auf dieser Seite verschaffen. Das beliebteste und einfachste Tool, was man problemlos ohne Jack verwenden kann, scheint momentan RecordMyDesktop zu ein.
In diesem Artikel soll jedoch auf ein spezielles Problem eingegangen werden. Die meisten Programme funktionieren nicht in Verbindung mit dem Soundserver Jack, und zwar selbst dann nicht, wenn die Programme (wie RecordMyDesktop zum Beispiel) eine Jack-Schnittstelle haben. Eine einfache Möglichkeit, einen Screencast in Verbindung mit Jack zu machen, ist, ffmpeg mit jack_capture im Terminal zu kombinieren. jack_capture ist eventuell nicht in den Quellen zu finden und muss als Paket heruntergeladen und der Einfachheit halber mit gdebi installiert werden.
Hier ein Beispiel:
user@debian:~$ ffmpeg -f x11grab -r 10 -s 1280x800 -i :0.0 -sameq test.avi | jack_capture -c 4 -p system* test.wav
Man sieht nun im Terminal einen Aufnahmepegel von allen Kanälen und anderen Angaben. Die Aufnahme startet sofort! Beendet wird die Aufnahme, indem man die Taste q drückt.
Erläuterungen zu den Optionen:
ffmpeg holt sich mit x11grab die Bilddaten mit folgenden Optionen:
- 10 Bildern in der Sekunde (-r 10)
- einer Auflösung von 1280x800 (-s 1280-800). Dies sollte an die eigene Bildschirmauflösung angepasst werden.
- auf dem ersten Bildschirm (:0.0)
- mit der gleichen Qualität, wie man sie sieht, also sehr hoch (-sameq)
- und es wird die datei test.avi in dem Verzeichnis erzeugt, in dem man sich gerade befindet.
jack_capture holt sich die Sounddaten mit folgenden Optionen:
- 4 Kanäle bzw. 2 Stereokanäle (-c 4). Ein Stereokanal z.B. für die Mikrofonaufnahme, ein anderer zum Abspielen von einem Orgelsound von Aeolus.
- Aufnahme von wirklich allem, was man hört (-p system:playback*) und was durch die Soundkarte geht (-p system:capture*) -> (zusammengefasst als -p system*)
- Speichern in die Sounddatei test.wav.
Ein Tipp zur Aufnahme: manchmal ist die Aufnahme per default auf stumm geschaltet, sodass man vor jeder Aufnahme den Lautstärkeregler öffnen muss, die Aufnahme "entmutet" und dieses Fenster während der Aufnahme offen lässt (minimiert geht auch). Das ist jedoch von System zu System verschieden.
Die entstandene Video- (.avi) und Audiodatei (.wav) kann man nun getrennt voneinander bearbeiten, was eine bessere Option darstellt als alles in einer einzigen Datei zu haben, wie bei den meisten Screencastprogrammen. In einem geeigneten Videoeditor (z.B. Openshot oder KDEnlive) kann man dann das Video mit dem Audio verbinden und als eine Datei (z.B .avi) abspeichern. Für die Audiobearbeitung würde ich in diesem Fall Audacity empfehlen.
Weitere Informationen erhält man auf den manpages beider Programme:
user@debian:~$ man jack_capture
user@debian:~$ man ffmpeg
Einen sehr ähnlichen Artikel, der eventuell etwas aktueller ist, kann man hier finden.