Lernvideos sinnvoll organisieren

Es gibt, oder es gab, ich weiss es ehrlich nicht genau, daher schreib ich mal in der Gegenwartsform, das Kommandozeilenprogramm youtube-dl oder andere Varianten wie yt-dlp oder ähnliche, mit denen es einfach möglich ist Videos herunter zu laden, um nicht von einer funktionierenden Internetleitung abhängig zu sein. Wer in Deutschland lebt, weiss, was ich meine.

Vor allem bei Lernmaterial ist das super, wenn es offline verfügbar ist und immer wieder angeschaut werden kann, ohne wieder und wieder durch das Streaming CO2 zu erzeugen.

Viele dieser Lernvideos haben Kapitelmarken und auch Untertitel in verschiedenen Sprachen, die natürlich auch im offline Modus sehr hilfreich sind. Und nicht nur als Kapitel, sondern eventuell auch zur Zerteilung in einzelne Videoclips, so dass bei einer Suche direkt auf den entsprechenden Clip zugegriffen werden kann.

Wenn also ein Video legal runtergeladen werden darf, dann helfen folgende Parameter und folgender Workflow bei den entsprechenden Programmen, die ich jetzt einfach mal unter dem Programmnamen DLPGRM zusammenfasse

Verfügbare Formate auslesen

Um erst mal zu sehen, in welchen VIDEO und AUDIO Formaten die Quelle vorliegt, gibt es folgenden Befehl, mit dem eine Tabelle ausgegeben wird.

DLPGRM -F URL-Link

Am Anfang der Tabelle steht in jeder Zeile eine ID und rechts daneben jede Menge weiterer Parameter. Wichtig ist, sich hier die IDs für das gewünschte VIDEO und AUDIO Format zu notieren, denn das wird für den nächsten Schritt gebraucht.

Hinweis: Wenn es einfach nur ein Redebeitrag ist, ohne dass Dinge gezeigt werden, die wichtig sind, wäre es unter Umständen sogar sinnvoll, das als Audiodatei (weiter unten) zu speichern, oder wenigstens als Video mit einer sehr geringen Auflösung. Wenn die Lernvideos nur auf dem Smartphone gespeichert werden sollen, dann sind hohe Auflösungen eh meist sinnlos. Da kann dann schon mal 256×144, 426×240 oder 640×360 genommen werden. Das spart CO2 und zuletzt auch eine Menge Festplattenplatz.

Lernvideo mit Kapitelinformationen speichern

Ist also die ID Nummer für VIDEO und AUDIO ausgesucht, dann kann mit folgendem Befehl das Lernvideo gespeichert werden. Gleichzeitig werden die Kapitel und deutsche & englische Untertitel mit rein gepackt und als Datei kommt eine MP4 Datei heraus, die auf allen Endgeräten abspielbar ist.

DLPGRM -f VIDEO+AUDIO --merge-output mp4 --embed-chapters --sub-langs "de,en" --embed-subs --write-auto-subs --embed-metadata URL-LINK

Soll das Lernvideo als reine Audio Datei, z.B. mp3 gespeichert werden, dann geht das auch mit

DLPGRM -x --audio-format mp3 URL-LINK

Kapitel nachträglich auslesen

Die Kapitel können nachträglich aus der Videodatei mit ffmpeg ausgelesen werden. Genauer gesagt mit dem Tool ffprobe. Dazu muss einfach nur der Befehl

ffprobe -show_chapters VIDEODATEI

eingegeben werden und als Ergebnis kommt eine Textausgabe der Kapitel heraus. Allerdings im sehr ausführlichen ffmpeg Format, aus dem dann die entsprechenden Informationen entnommen werden können. Dieses Format sieht z.B. so aus

[CHAPTER] 
id=0
time_base=1/1000
start=0
start_time=0.000000
end=60000
end_time=60.000000
TAG:title=Einleitung
[/CHAPTER]
[CHAPTER]
id=1
time_base=1/1000
start=60000
start_time=60.000000
end=95000
end_time=95.000000
TAG:title=Kanäle / Tracks umschalten
[/CHAPTER]
[CHAPTER]
id=2
time_base=1/1000
start=95000
start_time=95.000000
end=177000
end_time=177.000000
TAG:title=Parameter ändern (Volume, Pan, Send Effekte/Kanäle) und resetten
[/CHAPTER]
[CHAPTER]
id=3
time_base=1/1000

Kapitel als einzelne Videos speichern

Soll das Lernvideo nun aber in einzelne kleinere und leichter auffindbare Dateien aufgeteilt werden, so würde das auch mit dem Programm gehen, allerdings gibt es da den einen oder anderen unschönen Seiteneffekt, der durch sogenannte fehlende Keyframes (ein komplettes Vollbild) an der richtigen Stelle entsteht, so dass es manchmal beim Beginn der Kapitel aussieht, als würde jemand mit Wasserfarben durchs Bild wischen, oder aber das Lernvideo muss komplett neu codiert werden. Und das kann ganz schön lange dauern.

Es gibt da einen kleinen Trick, der nicht nur schneller, sondern auch Resourcen schonender ist. Das Programm LossLessCut kann diverse Videoformate einfach zerteilen, ohne dass irgendwas neu berechnet werden muss. Und es bietet eine einfache und praktische Lösung zu dem Keyframe Problem an. Nämlich schaut es, wo das Kapitel beginnt und dann „spult“ es so lange zurück, bis es das letzte Keyframe findet und legt den Anfang des Kapitels dorthin.

Dabei handelt es sich dann meist um eine Wiederholung maximal 1-3 Sekunden zum vorherigen Kapitel aber dafür mit einem klaren Bild.

Also wird das Lernvideo in LossLessCut reingeladen und dann wird zuerst gefragt, ob die Segmente oder Chapters auch importiert werden sollen. Auf diese Frage mit Ja antworten. Danach kann gleich rechts unten auf den Export Knopf gedrückt werden und diese Einstellungen sollten übernommen werden.
Wichtig sind: Separate files, mp4, Cut mode=Keyframe cut, preserve all MP4/MOV metadata

Und nach 3 Sekunden liegen alle Kapitel als einzelne Videoclips vor.

Viel Spaß bei der Organisation eurer Lernvideos, die ihr jetzt noch viel effizienter ablegen könnt.