Table of Contents

youtube-dl

Mit Hilfe von youtube-dl lassen sich Videos oder lediglich die Audiospuren von Videos auf Youtube und vielen weiteren Seiten herunterladen. Das Paket befindet sich bei Arch Linux, Ubuntu und vielen weiteren Distributionen bereits in den offiziellen Paketquellen oder lässt sich mittels pip oder einfach mit curl oder wget installieren. Es wird über die Kommandozeile bedient und setzt für die Ausführung Python voraus. Optional wird ffmpeg für die Nachbearbeitung von Videos benötigt.

Qualität und Format von Youtube

Um Videos von Youtube herunterzuladen, reicht die Angabe der Video-ID, die in der URL hinter dem ?v= folgt. Beispielsweise ist die ID für https://www.youtube.com/watch?v=X2DUpDxFJyg X2DUpDxFJyg. Um festzulegen, in welcher Qualität und in welchem Format das Video geladen werden soll, kann mittels

youtube-dl -F X2DUpDxFJyg

eine Liste aller verfügbaren Formate ausgegeben werden. Anschließend kann das entsprechende Format anhand der ausgegebenen Format-Codes mit beispielsweise

youtube-dl -f 22 X2DUpDxFJyg

geladen und gespeichert werden. Um die bestmögliche Qualität zu erhalten, kann mit dem folgenden Befehl die beste Video- und Audio-Spur separat geladen und anschließend automatisch mit ffmpeg in einem Container abgespeichert werden:

youtube-dl -f bestvideo+bestaudio X2DUpDxFJyg

Die temporär gespeicherten separaten Dateien werden danach automatisch gelöscht. Um Dateien nach der Nachbearbeitung zu behalten, anstatt sie zu löschen, kann zusätzlich die Option -k angegeben werden.

Andere Seiten wie Soundcloud verwenden

Soundcloud und andere Seiten werden ebenfalls unterstützt. Dazu reicht es, youtube-dl mit der entsprechenden URL aufzurufen. Es ist auch möglich, die Optionen -F und -f wie oben beschrieben zu verwenden:

youtube-dl -f http_mp3_128_url https://soundcloud.com/bradbreeck/gravity-falls-theme-song?in=bradbreeck/sets/gravity-falls-reel

Speziell für Soundcloud existiert auch das Projekt scdl, welches mehr Optionen für den Umgang mit Soundcloud bietet und automatisch ID3-Tags setzt.

Ausgabedatei festlegen

Anstatt einen generischen Dateinamen zu verwenden, kann mit der Option -o auch ein Dateiname für die Ausgabedatei festgelegt werden:

youtube-dl -f 248 X2DUpDxFJyg -o awesome_opening.webm

Zudem ist es möglich, Templates festzulegen, unter denen die Ausgabedateien abgespeichert werden:

youtube-dl -f 248 X2DUpDxFJyg -o '%(title)s.%(ext)s' --restrict-filenames

Die Option --restrict-filenames gewährleistet dabei, dass seltsame Sonderzeichen nicht verwendet werden, sondern nur gebräuchliche Zeichen.

Eine Übersicht über alle möglichen Template-Optionen kann hier gefunden werden.


guitars

Inspiriert von diesem Musikvideo ist mit Perl auf Basis von youtube-dl und unter Verwendung von mpv das Tool guitars entstanden. Es reicht aus, das Perl-Skript abzuspeichern und anschließend kann mit dem Aufruf des Skripts und optionalen Parametern Gitarren-Sound aus diversen Youtube-Videos abgespielt werden.

Zur optimalen Verwendung wird empfohlen, in der .bashrc oder dem Äquivalent entsprechend der verwendeten Shell einen alias guitars zum Aufruf des Perl-Skripts zu setzen und so durch die Eingabe von guitars oder guitars --hard die Boxen erklingen zu lassen. LOL