http://www.hgesser.de/

Private Homepage von Hans-Georg Eßer

header

Navigation

Links / Social

Software

Blaue Links: intern
🔗 Rote Links: extern


Anleitung: Screencasts unter Linux (OpenSuse 11.1)

Auf dieser Seite trage ich ein paar Informationen zum Thema Screencasts zusammen, also zur Aufnahme von Live-Videos vom aktuellen Desktop inkl. Sound. Getestet habe ich die Sachen unter OpenSuse 11.1; Videos habe ich anschließend ins Flash-Video-Format konvertiert und in Moodle eingebunden.

Es gibt im Netz schon diverse Anleitungen zu diesem Thema, aber keine hat alle Punkte aufgeführt, auf die ich bei der Einrichtung gestoßen bin. Darum hier die x-te Anleitung zum Thema :)

Software-Ausstattung

Um alles optimal einstellen zu können, habe ich folgende Software benötigt:

  • xvidcap: für die eigentliche Aufnahme; installieren mit zypper install xvidcap
  • ffmpeg: ein Konverter, der mir aus den von xvidcap erzeugten MPEG-Dateien FLV-Dateien (Flash-Format) macht; installieren mit zypper install ffmpeg
  • mp3blaster: aus diesem Paket brauche ich nur das Programm nmixer, siehe unten; installieren mit zypper install mp3blaster
  • krecord: (nur für Vorab-Tests der Mikrofon-Lautstärke), installieren mit zypper install krecord

Setup: Mikrofon-Einrichtung

Ich hatte in meinen Versuchen zunächst das Problem, dass mein externes Mikrofon tot blieb; nach Ändern diverser Mixer-Einstellungen konnte man ganz schwach was hören, aber die Qualität blieb zu schlecht.

Im Mixer nmixer aus dem mp3blaster-Paket fand ich die Einstellung IGain -- die musste ich auf meinem System zu ca. 55 % aufziehen, danach passte die Lautstärke.

Wenn installiert, kann man mit krecord die Lautstärke prüfen; das Programm kann auch einen VU-Meter anzeigen, der darf gerade nicht in den roten Bereich kommen, dann passt's.

Videos aufzeichnen: als root

Ja, man soll ja nicht als root arbeiten... Warum also ausgerechnet die Videos mit Root-Rechten aufzeichnen? In meinen Tests mit xvidcap verursachte das Programm hässliche Quietschgeräusche im Audio-Track. Die waren weg, nachdem ich es mit nice -n -15 laufen ließ -- dazu sind aber eben Root-Rechte nötig. Ich starte xvidcap also wie folgt:

su (root werden)
nice -n -15 xvidcap --cap_geometry 640x480+0x0
Die Option --cap_geometry 640x480+0x0 sorgt dafür, dass der Capture-Bereich (also der Bildschirmbereich, der aufgenommen wird), ein Rechteck links oben in Größe 640x480 ist -- das kann man bei Bedarf anpassen.

Nach einem Klick auf den Aufnahme-Button des xvidcap-Steuerungsfensters startet die Aufnahme, ein Klick auf den Stop-Button beendet sie. Im Test wurde mit jeder neuen Aufnahme die vorherige überschrieben, obwohl ich die Einstellungen so gewählt habe, dass er die Dateinamen hochzählt... Also vor jeder neuen Aufnahme die erzeugte MPEG-Datei sichern!

(Das Bild zeigt die Aufnahme mit einem kleineren Bereich, um hier keinen Riesen-Screenshot einbauen zu müssen. Der Aufnahmebereich ist rot markiert. Und ja: Diesen Screenhot habe ich nachträglich unter Ubuntu gemacht; getestet ist das ganze Prozedere trotzdem nur unter OpenSuse.)

Konvertieren ins FLV-Format

Ich brauche die Videos anschließend im FLV-Format (Flash Video), um sie auf einer Webseite zu integrieren. xvidcap erzeut aber MPEG-Dateien. Zum Konvertieren verwende ich ffmpeg:

ffmpeg -i test-0000.mpeg -sameq out.flv
Mit der Option -sameq sorge ich dafür, dass die Video-Qualität nicht reduziert wird. (Ohne diese Option "verwischt" das Bild in den hinteren Frames, und Text wird unlesbar.)

ffmpeg gibt am Ende eine Fehlermeldung zum Audio-Stream aus, die man ignorieren kann.

Integration der Videos in Moodle

Dieser Block wird wohl nur wenige Anwender interessieren; ich baue meine Videos in Moodle ein, und das ist nicht ganz trivial. Ich will die Videos in Originalgröße (also 640x480 in meinem Fall) anzeigen lassen. Dazu sind einige Schritte nötig:

  • Multimedia-Plugin aktivieren:
    In Moodle auf die Hauptseite gehen, dann Module / Filter / Filteraktivierung aufrufen, dort den Eintrag Multimedia-Plugins aktivieren. Anschließend im neuen Menüpunkt Module / Filter / Multimedia-Plugins prüfen, ob die Option .flv Filter aktivieren an ist.
  • Anzeigegröße korrigieren:
    Moodle's flv-Filter verwendet standardmäßig eine niedrigere Auflösung (für alle Videos) als ich benutzen will -- die Änderung ist nur direkt in der Moduldatei möglich. Die richtige Datei ist .../moodle/filter/mediaplugin/filter.php. Darin gibt es eine Funktion mediaplugin_filter_flv_callback, die angepasst werden muss. Bei mir stehen jetzt die Zeilen
        $width  = empty($link[3]) ? '640' : $link[3];
        $height = empty($link[4]) ? '500' : $link[4];
    
    Zu beachten ist hier noch: Das erzeugt einen Embedded-Player in der Größe 640x500 -- meine Videos sind 640x480 Pixel groß. Die zusätzlichen 20 Pixel Höhe sind nötig, weil der Player auch noch eine kleine Steuerungsleiste (Play, Pause etc.) anzeigt und diese zusätzliche Größe nicht berücksichtigt wird. Trägt man stattdessen 480 ein, wird das Video in der Höhe gestaucht.

Auf einer Moodle-Seite schaltet man nun in den HTML-Modus um und fügt einfach einen Link zur FLV-Datei ein, also

  <a href="/irgendwo/test.flv">Ein Video</a>
Das führt nicht nur zur Verlinkung, sondern dank des Multimedia- Plugins auch zur Anzeige eines Video-Viewers für diese Videodatei. Wer keinen benannten Link erzeugen will, kann auch einfach ein "leeres" A-Tag erzeugen, etwa so:
  <p>
  Betrachten Sie folgendes Video: <br>
  <a href="/irgendwo/test.flv"> </a>
  </p>

Zukunft: Xnest

Ich experimentiere gerade noch mit Xnest, um einen kompletten Desktop (in 640x480) anzeigen zu lassen, den ich dann auf Video aufnehme. Prinzipiell funktioniert das schon, aber das Xnest stürzt während der KDE-Initialisierung (im Xnest) ab. Wenn ich das gelöst habe, vervollständige ich den Eintrag.

Referenzen

[1] xvidcap: http://xvidcap.sourceforge.net/
[2] ffmpeg: http://www.ffmpeg.org/
[3] krecord: http://linux.bytesex.org/misc/krecord.html
[4] Moodle: http://moodle.org/
[5] Wikipedia zu Xnest: http://de.wikipedia.org/wiki/Xnest
[6] Alter LinuxUser-Artikel zu xvidcap: http://www.linux-user.de/ausgabe/2004/07/035-desktopia/


Copyright © 1997-2024 Hans-Georg Eßer; Server: Debian Linux, Apache Web Server, letzte Änderung: Wednesday, 22-Apr-2009 11:13:50 CEST
Theme: Hazard Area 1.6 (modified), created by Bryan Bell, Copyright © 2000-2006 Weblogger.com.