Vorträge/Recording-Workflow/alt2020

Aus Stratum 0
Wechseln zu:Navigation, Suche

Es folgt der erneuerte Workflow anlässlich der wiederaufgenommenen Vorträge, den Sintox auf Basis des Templates von Daniel Bohrer erstellt hat (der Linux-bezogene Workflow entstammt ausschließlich der Feder von Daniel Bohrer). Zu unterscheiden ist hier einmal, ob nur der Bildschirm mit den Folien aufgenommen werden soll (Screen Capture, z.B. mit Open Broadcaster Software), oder die phyische Projektion des Beamers (z.B. mittels Camcorder oder Smartphone).

Aufnehmen

Mit Open Broadcaster Software (Windows)

Videoaufnahme

Zur Aufnahme der Präsentation (egal ob von PDF-Dateien oder von Präsentations-Dateien) wird die Open-Source-Software "Open Broadcaster Software" (OBS) empfohlen: https://obsproject.com/

Nach Installation und Starten von OBS

  1. Rechtsklick in das Feld "Szenen" im Hauptfenster und "Szene hinzufügen" wählen. Diese wird z.B. "Vorträge Recording" oder Ähnliches genannt.
  2. Rechtsklick in das Feld "Quellen" solange die zuvor erstellte Szene ausgewählt ist. Da für eine Präsentation nur eine Quelle nötig ist, sollte "Hinzufügen" -> "Monitoraufnahme" gewählt werden.
  3. Nach Auswahl von "Monitoraufnahme" öffnet sich das Einstellungsfenster. Man wählt den entsprechenden Monitor (im Space dürfte es sowieso nur der Beamer sein) und belässt die restlichen Einstellungen auf Standard. Mit dem Klick auf OK kommt man wieder in das Haupt-Fenster.
  4. Man klickt auf den "Einstellungen"-Button und wählt unter "Broadcast Einstellungen" den Modus "Nur Dateiausgabe" und einen dazugehörigen Dateipfad. Außerdem sollten Hotkeys für Start und Stop der Aufnahme zugewiesen werden.

Startet man nun eine Präsentation (PDF oder Präsentation in LibreOffice Impress, Powerpoint etc.), kann über die zugewiesenen Hotkeys die Aufnahme gestartet werden.

Ton-Aufnahme

Um die Stimme des jeweiligen Vortragenden in die Video-Spur schneiden zu können, gibt es mehrere Methoden der Sound-Aufnahme:

  1. Man kann die interne Audio-Aufnahme-Funktion von OBS nutzen. Um diese zu aktivieren: Im OBS-Haupt-Fenster auf den "Einstellungen"-Button klicken und im folgenden Menü unter "Audio" sowohl das Desktop Audiogerät (für den Fall, dass man z.B. ein Video mit Ton zeigen möchte) auswählen, welches meist die interne Soundkarte des Computers ist, als auch das Mic./AUX-Audiogerät, z.B. das USB-Space-Mikro von Samson, auswählen.
  2. Mit der Open-Source-Software "Audacity", runterladbar unter http://audacity.sourceforge.net/ kann die Tonspur außerhalb von OBS aufgenommen werden und im Schnitt hinzugefügt werden. Dazu nach Download, Installation und Start der Anwendung zunächst unter "Bearbeiten" -> "Einstellungen..." -> "Geräte" das verwendete Mikrofon anpassen (z.B. das Space-Mic von Samson).

Mit Spacekiste (Open Broadcaster Software)

Sollte das individuelle Einrichten der Software für das Recording auf den einzelnen Rechnern zu viele Umstände machen, habe ich auf der Spacekiste ebenfalls Open Broadcaster Software (Windows) installiert und vorkonfiguriert:

Vorkonfiguration

  • Aufnahme-Art: Der vorkonfigurierte Aufnahme-Modus ist die Aufnahme des gesamten Monitors. Dadurch kann jede Art der Präsentation die auf der Spacekiste läuft problemlos aufgenommen werden ohne erst ein Fenster für die Aufnahme auswählen zu müssen. Gegebenenfalls muss, wenn der Beamer angeschlossen wurde, nach einem Doppelklick auf "Monitoraufnahme" im OBS-Fenster noch der Beamer-Monitor als Recording-Monitor ausgewählt werden.
  • Audio-Aufnahme: Der OBS-Client der Spacekiste wurde auf die Verwendung und Aufnahme des von Sintox zur Verfügung gestellten Mikrofons "Rode Videomic" eingestellt. Nach dem Start der Aufnahme werden Monitor und Audio gleichzeitig aufgenommen. Der Vortragende sollte sich das Mikrofon in etwa 10 cm Entfernung vor das Gesicht halten (als würde er interviewt werden), um den optimalen Ton zu erhalten.
  • Aufnahme-Hotkeys: Die (+)-Taste auf dem Nummernblock startet die Aufnahme, während die (-)-Taste auf dem Nummernblock die Aufnahme beendet.
  • Speicherort: Die Videos werden auf der Data-Festplatte im Ordner "Vortraege Recording" gespeichert.

Workflow

  1. Rode Videomic mit Verlängerungskabel an den Mikrofon-Anschluss an der Rückseite der Spacekiste anschließen
  2. Open Broadcaster Software vom Desktop der Spacekiste aus starten
  3. Szene "Stratum0 Recording" und darin die Quelle "Monitoraufnahme" im OBS-Fenster auswählen
  4. Doppelklick auf "Monitoraufnahme" und sicherstellen, dass der richtige Monitor ausgewählt ist
  5. Unter "Einstellungen" -> "Video" kontrollieren, ob die korrekte maximale Auflösung bzw. die native Auflösung des aufgenommenen Monitors eingestellt ist
  6. Unter "Einstellungen" -> "Audio" kontrollieren, ob unter "Mic./Aux Audiogerät" das Mikrofon ausgewählt ist
  7. Präsentation, PDF oder sonstiges Material für den Vortrag auf dem Recording-Monitor öffnen und auf Fullscreen/"Ready-to-Go" schalten
  8. Der Vortragende/die Vortragende nimmt das Mikrofon in die Hand und drückt entweder selbst die (+)-Taste auf dem Nummernblock bzw. jemand anderes drückt die Taste und der Vortrag kann beginnen.
  9. Nach dem Vortrag die Aufnahme durch Betätigen der (-)-Taste auf dem Nummernblock beenden

Achtung! Sollte der Vortrag auf einem anderen Rechner stattfinden (z.B. ein Terminal-Recording auf einem Linux-Rechner) soll bitte trotzdem gleichzeitig die Open Broadcaster Aufnahme gestartet werden, damit die Ton-Spur der OBS-Aufnahme über die Monitor-Aufnahme des anderen Rechners geschnitten werden kann.

Linux mit DV-Camcorder

Mit Neos DV-Camcorder auf der Spacekiste über Firewire. Wenn die Kamera eingesteckt wird, sollte sie sich als /dev/fw1 melden, die GUID kann man aus dem Kernel-Log (dmesg, /var/log/kern.log) entnehmen. Aufnehmen geht ganz einfach dann mit dvgrab:

dvgrab -noavc -fraw dateinamenspräfix

dvgrab splittet dann den Stream in Dateien mit bis zu 1 GB, das Präfix bestimmt, wie die Dateien heißen. Es empfiehlt sich also etwas im Format talks-YYYY-MM-DD zu nehmen.

Falls sich dvgrab beschwert, dass es nicht weiß, welches Device es nehmen soll, kann mit dem Parameter -guid die GUID der Kamera direkt angegeben werden.

Zum Justieren der Kamera (ich stelle sie meist auf den Stapel mit Filamentrollen) kann man einfach folgenden Befehl benutzen:

dvgrab -noavc -fraw - | mplayer -

Zum Beenden der Aufnahme einfach dvgrab mit Ctrl-C beenden.

Smartphone

Daniel Bohrer benutzt sein Galaxy Nexus mit Android zum Aufnehmen der Beamer-Projektion. Die Kamera kann natives 1080p, der Sound ist mittelmäßig, aber meist noch gut zu verstehen, wenn die präsentierende Entität direkt vor dem Smartphone auf dem Sofa sitzt.

Die Stock-Kamera-App hat einen unschönen Bug (oder Feature?) und versucht bei dunklen Szenen öfters mal zu refokussieren. Das schlägt sich dann mehrmals pro Minute in temporär unscharfem Bild nieder. Mit alternativen Kamera-Apps, wie z.B. Open Camera (FDroid, Play Store), lässt sich das Fokusverhalten auf »Manuell« umstellen, sodass das nicht mehr passiert.

Zu beachten ist, dass ausreichend Speicherplatz auf dem Smartphone vorhanden sein muss. Eine Stunde in 1080p führt etwa zu 4 GB an Daten. Falls der Speicher während der Aufnahme voll läuft, kann die entsprechende Datei nicht mehr so einfach gelesen werden (bei MP4 stehen Metainformationen über verwendeten Codec, etc., am Ende der Datei und das fehlt dann…) Abhilfe kann manchmal untrunc schaffen.

Open Camera hat zwar auch eine Option, um nach einer bestimmten Zeit eine neue Datei anzufangen und die Aufnahme fortzusetzen, dabei entstehen aber unschöne Pausen (in denen anscheinend die Datei auf das Speichermedium geschrieben wird). Es empfiehlt sich hier, nach jedem Talk einmal kurz manuell eine neue Aufnahme zu starten.

Schneiden

Windows

Unter Windows gibt es verschiedene Schnittprogramme, sowohl kostenpflichtig (z.B. Adobe Premiere) oder auch kostenlos (z.B. Jahshaka). Je nach persönlichen Präferenzen sollte ein solches Programm ausgewählt werden und im Programm Video- und Ton-Spur übereinander gelegt werden.

Linux

Bei Daniel Bohrer passiert das alles mit OpenShot, siehe Abschnitt #Nachbearbeitung.

Audionachbearbeitung

Bei schlechten Tonverhältnissen (z.B. Aufnahme vom Smartphone) kann die Dynamik durch Kompression verbessert werden. In Audacity geht das mit dem Compressor-Filter. Beispielhafte Einstellungen:

  • Threshold: -34 dB
  • Noise Floor: -40 dB
  • Noise Ratio: 10:1
  • Attack Time: 0.1 s
  • Release Time: 1 s

In Audacity können auch mehrere Aufnahmen übereinander gelegt werden, so kann ein guter Mittelweg zwischen Speaker-Mikrofon und Raumschall (z.B. für Fragen) gefunden werden.

Nachbearbeitung

Die folgenden Schritte der Nachbearbeitung können sowohl bei Linux- als auch bei Windows-Schnittprogrammen durchgeführt werden. Daniel Bohrer benutzt dafür OpenShot.

Nachdem Schneiden fügt man mit seinem Schneideprogramm folgende Title- und End-Screens hinzu. In diese Templates sollten sowohl das Vortrags-Thema als auch der Name des Vortragenden eingefügt werden. Dies ist mit verbreiteten Bildbearbeitungsprogrammen wie Gimp oder Photoshop möglich.

Zusätzlich füge ich Überblendungen zwischen dem Title Screen und dem Vortrag sowie dem Vortrag und dem End Screen hinzu (in OpenShot: Rechtsklick auf die entsprechenden Abschnitte in der Timeline, im Untermenü „Fade“).

Rendering

OpenShot

OpenShot bietet vorkonfigurierte Youtube-Profile an („File“ → „Export Video“, Profile: „Web“, Target: „YouTube-HD“, Video Profile: „HD 720p 25 fps“, Quality: „High“).

melt

Weil H.264-Rendering auf Daniel Bohrers Laptop so lange dauert, wird das über Nacht gemacht. Schön wär es, wenn der Rechner danach von selbst schlafen gehen würde. Mit grafischen Programmen wie OpenShot ist das nicht so einfach machbar.

OpenShot kann Projekte aber als XML-Dateien exportieren, die mit dem Konsolen-Tool melt gerendert werden können. Alle Überblendungen, Schnitte, etc. sind dabei in der XML-Datei vorhanden und werden von melt anhand der Quelldateien in eine fertige Video-Datei umgesetzt. Eine typischer Aufruf sieht dann wie folgt aus:

time melt kasa-blind-sql-inject.mlt -progress -consumer avformat:kasa-blind-sql-inject.mp4  properties=melt-avformat-youtube.preset; sudo pm-suspend

Das Preset unter melt-avformat-youtube.preset legt die Parameter für den Export fest:

mlt_profile=atsc_720p_25
f=mp4
acodec=aac
ab=192k
ar=48000
channels=2
vcodec=libx264
vb=8M
pix_fmt=yuv420p
meta.preset.note=preset for Stratum 0 talk recordings, encoded for fast upload to YouTube

(Eine Unschönheit dabei: referenzierten Quelldateien werden in der XML-Datei mit absoluten Pfaden referenziert. Für Archivierung bietet sich einmal Suchen & Ersetzen im Texteditor an, melt kann nämlich auch mit relativen Pfaden arbeiten.)

Die Recodierung auf eine möglichst kleine Dateigröße lasse ich dann in beiden Fällen einfach YouTube machen… :P

Hochladen

…auf das stratum0-YouTube-Profil. Daniel Bohrer hat die Zugangsdaten dafür.

Nachdem YouTube das Video vollständig gerendert hat, lade ich es nochmal herunter und mirrore es auf meinem Server unter [1].