Youtube-dl: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
K (→‎Script für DASH-Videos: Anpassung auf neue ID bei DASH-Audio)
K (Verschiebung community -> extra)
 
(10 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{SEITENTITEL:youtube-dl}}
{{SEITENTITEL:youtube-dl}}{{Hinweis|Die Entwicklung von youtube-dl scheint seit einiger Zeit „eingeschlafen“ zu sein. Ein aktiv entwickelter Fork ist [https://github.com/yt-dlp/yt-dlp yt-dlp] {{sprache|en}}. Der Fork ist weitestgehend kompatibel.}}
 
Will man YouTube-Videos herunterladen, weil man sie entweder in einem Desktop-Videoplayer gucken möchte, später ohne Internetverbindung zum Beispiel auf dem Fernseher sehen möchte, oder weil man die Videos gern archivieren möchte, bevor sie auf YouTube gesperrt werden, kann man youtube-dl verwenden.
Will man YouTube-Videos herunterladen, weil man sie entweder in einem Desktop-Videoplayer gucken möchte, später ohne Internetverbindung zum Beispiel auf dem Fernseher sehen möchte, oder weil man die Videos gern archivieren möchte, bevor sie auf YouTube gesperrt werden, kann man youtube-dl verwenden.


{{installation|repo=community|paket=youtube-dl}}
{{installation
|repo=extra
|paket=youtube-dl
|zusatz=yt-dlp
|zusatzinfo=... oder der aktiv entwickelte Fork}}


Nach der Installation ist das Programm mittels {{ic|youtube-dl}} aufrufbar. Die [[Manpage]] bietet eine ausführliche Übersicht und Beschreibung aller möglichen Parameter und Optionen.
Nach der Installation ist das Programm mittels {{ic|youtube-dl}} aufrufbar. Die [[Manpage]] bietet eine ausführliche Übersicht und Beschreibung aller möglichen Parameter und Optionen. Der Fork ist mittels {{ic|yt-dlp}} aufrufbar, die Befehlssyntax ist größtenteils identisch, siehe auch die vergleichsseite aus den Weblinks.


== Verwendung ==
== Verwendung ==
Zeile 17: Zeile 22:
[download] 100% of 3.69MiB in 00:04}}
[download] 100% of 3.69MiB in 00:04}}


Wenn nicht näher spezifiziert, wird das qualitativ beste, herkömmliche Video heruntergeladen, und unter dem Videotitel mit angehängter ID gespeichert. Will man eine andere Qualität des Videos herunterladen, kann man sich zuvor die verfügbaren Formate anzeigen lassen.
Wenn nicht näher spezifiziert, wird das qualitativ beste Video, oder die qualitativ beste DASH-Kombination heruntergeladen, und unter dem Videotitel mit angehängter ID gespeichert. Will man eine andere Qualität des Videos herunterladen, kann man sich zuvor die verfügbaren Formate anzeigen lassen.


{{hc|youtube-dl -F 67j45hhhr678|
{{hc|youtube-dl -F 67j45hhhr678|
Zeile 41: Zeile 46:
139 : m4a [48k] (DASH Audio)}}
139 : m4a [48k] (DASH Audio)}}


Das höchstqualitative normale Video hat die Qualitäts-ID {{ic|22}} (zu den {{ic|DASH}}-Formaten siehe nächster Abschnitt), dies wird automatisch heruntergeladen. Wenn einem eine kleinere Version reicht, kann man die entsprechende Qualitäts-ID beim Aufruf übergeben.
Es wird automatisch eine kombination aus der besten Videoqualität und der besten Audioqualität heruntergeladen, im Beispiel also 137+139. Wenn einem eine kleinere Version reicht, kann man die entsprechende Qualitäts-ID beim Aufruf übergeben.


{{hc|youtube-dl -f 43 67j45hhhr678|
{{hc|youtube-dl -f 43 67j45hhhr678|
Zeile 48: Zeile 53:
[youtube] 67j45hhhr678: Downloading video info webpage
[youtube] 67j45hhhr678: Downloading video info webpage
[youtube] 67j45hhhr678: Extracting video information
[youtube] 67j45hhhr678: Extracting video information
[download] Destination: mein tolles video-67j45hhhr678.mp4
[download] Destination: mein tolles video-67j45hhhr678.webm
[download] 100% of 1.33MiB in 00:01}}
[download] 100% of 1.33MiB in 00:01}}


Zeile 54: Zeile 59:


''In den Beispielen wurde eine zum Zeitpunkt des erstellens nicht existierende Video-ID verwendet. Sollte sich das inzwischen geändert haben, so ist dies nicht beabsichtigt, und sollte einfach kurz im Artikel geändert werden.''
''In den Beispielen wurde eine zum Zeitpunkt des erstellens nicht existierende Video-ID verwendet. Sollte sich das inzwischen geändert haben, so ist dies nicht beabsichtigt, und sollte einfach kurz im Artikel geändert werden.''
=== Script für DASH-Videos  ===
Auf YouTube wurde vor einiger Zeit endgültig auf das DASH-System umgestellt, um HD-Videos größer als 720p (1080p, 2K, 4K) auszuliefern. Dies funktioniert derart, dass Audio- und Videodaten als getrennte Streams bereitgestellt werden, und lediglich nur ein paar Sekunden vorgepuffert werden.
Dies verhindert nicht nur unnötigen Traffic, falls jemand das Video nicht vollständig guckt, sondern auch, dass 1080p-Videos ohne weiteres heruntergeladen werden können. Mittels folgender Funktion (zum Beispiel in der [[bashrc]]) kann man die nötigen Schritte automatisieren.
function 1080p-dl () {
    _filename=$(youtube-dl --get-filename ${1});
    youtube-dl -o 'a.m4a' -f 140 "${1}";
    youtube-dl -o 'v.mp4' -f 137 "${1}";
    ffmpeg -i "v.mp4" -i "a.m4a" \
        -c:v copy -c:a copy \
        "${_filename}" \
        && rm a.m4a v.mp4
}
Als ersten und einzigen Parameter braucht die Funktion lediglich die YouTube-Video-ID ({{ic|1=v=…}}), und lädt danach das Audio, und dann das 1080p-Video herunter, kombiniert beides mit dem richtigen Dateinamen, und löscht die dann überflüssig gewordenen Daten hinterher, so dass nur noch die kombinierte Datei übrig bleibt. Da als Audio- und Video-Codec {{ic|copy}} verwendet wird, kommt es zudem zu keinem Qualitätsverlust.


=== Andere Videoanbieter ===
=== Andere Videoanbieter ===
Zeile 94: Zeile 82:
Auch Videos aus der arte-Mediathek „ARTE+7“ können durch youtube-dl heruntergeladen werden. Im Beispiel werden die verfügbaren Qualitäten aufgelistet. (Auch hier wieder anhand einer fiktiven Video-ID.)
Auch Videos aus der arte-Mediathek „ARTE+7“ können durch youtube-dl heruntergeladen werden. Im Beispiel werden die verfügbaren Qualitäten aufgelistet. (Auch hier wieder anhand einer fiktiven Video-ID.)


Weitere unterstützte Seiten können auf der offiziellen Homepage eingesehen werden.
Weitere unterstützte Seiten können auf der offiziellen Homepage eingesehen werden, oder direkt mit
youtube-dl --list-extractors
gelistet werden.
 
=== Tonspur extrahieren und umwandeln ===
Nur die Tonspur eines Videos runter laden und in das Audioformat seiner Wahl umwandeln,
funktioniert ebenfalls sehr komfortabel mit der Anweisung:
-x = extract-audio
Folgende Audio-Codecs (Formate) stehen zur Verfügung:
* aac, vorbis, mp3, m4a, opus, wav in den Qualitätsstufen 0 (sehr gut) - 9 (schlecht). Standard ist Stufe 5 = 128K.
 
*Beispiel:
youtube-dl -x --audio-format mp3 --audio-quality 5 "URL"


== Siehe auch ==
== Siehe auch ==
Zeile 102: Zeile 102:
* [http://youtube-dl.org/ Offizielle Website] {{sprache|en}}
* [http://youtube-dl.org/ Offizielle Website] {{sprache|en}}
* [http://rg3.github.io/youtube-dl/documentation.html Online-Dokumentation] {{sprache|en}}
* [http://rg3.github.io/youtube-dl/documentation.html Online-Dokumentation] {{sprache|en}}
* {{wikipedia|Dynamic_Adaptive_Streaming_over_HTTP|Beschreibung von DASH}} {{sprache|de}}
* [https://github.com/yt-dlp/yt-dlp#differences-in-default-behavior Unterschiede zwischen youtube-dl und yt-dlp] {{sprache|en}}
* [https://github.com/ytdl-org/youtube-dl/issues/29965 Diskussion/Issue zum Status von youtube-dl] {{sprache|en}}


[[Kategorie: Internet]]
[[Kategorie: Internet]]
[[Kategorie: Multimedia]]
[[Kategorie: Multimedia]]
[[en:Youtube-dl]]
[[es:Youtube-dl]]
[[ja:Youtube-dl]]

Aktuelle Version vom 24. Mai 2023, 18:20 Uhr

Hinweis: Die Entwicklung von youtube-dl scheint seit einiger Zeit „eingeschlafen“ zu sein. Ein aktiv entwickelter Fork ist yt-dlp . Der Fork ist weitestgehend kompatibel.

Will man YouTube-Videos herunterladen, weil man sie entweder in einem Desktop-Videoplayer gucken möchte, später ohne Internetverbindung zum Beispiel auf dem Fernseher sehen möchte, oder weil man die Videos gern archivieren möchte, bevor sie auf YouTube gesperrt werden, kann man youtube-dl verwenden.

Installation

Das Programm ist als youtube-dl in extra verfügbar, und kann von dort mittels Pacman installiert werden.

# Das Programm an sich
pacman -S youtube-dl

# ... oder der aktiv entwickelte Fork
pacman -S yt-dlp

Nach der Installation ist das Programm mittels youtube-dl aufrufbar. Die Manpage bietet eine ausführliche Übersicht und Beschreibung aller möglichen Parameter und Optionen. Der Fork ist mittels yt-dlp aufrufbar, die Befehlssyntax ist größtenteils identisch, siehe auch die vergleichsseite aus den Weblinks.

Verwendung

youtube-dl akzeptiert sowohl einen kompletten Video-URL, als auch nur die Video-ID, im URL nach dem v= zu finden.

youtube-dl http://www.youtube.com/watch?v=67j45hhhr678
[youtube] Setting language
[youtube] 67j45hhhr678: Downloading video webpage
[youtube] 67j45hhhr678: Downloading video info webpage
[youtube] 67j45hhhr678: Extracting video information
[download] Destination: mein tolles video-67j45hhhr678.mp4
[download] 100% of 3.69MiB in 00:04

Wenn nicht näher spezifiziert, wird das qualitativ beste Video, oder die qualitativ beste DASH-Kombination heruntergeladen, und unter dem Videotitel mit angehängter ID gespeichert. Will man eine andere Qualität des Videos herunterladen, kann man sich zuvor die verfügbaren Formate anzeigen lassen.

youtube-dl -F 67j45hhhr678
[youtube] Setting language
[youtube] 67j45hhhr678: Downloading video webpage
[youtube] 67j45hhhr678: Downloading video info webpage
[youtube] 67j45hhhr678: Extracting video information
Available formats:
22	:	mp4	[720x1280]
18	:	mp4	[360x640]
43	:	webm	[360x640]
5	:	flv	[240x400]
36	:	3gp	[240x320]
17	:	3gp	[144x176]
137	:	mp4	[1080p] (DASH Video)
136	:	mp4	[720p] (DASH Video)
135	:	mp4	[480p] (DASH Video)
134	:	mp4	[360p] (DASH Video)
133	:	mp4	[240p] (DASH Video)
160	:	mp4	[192p] (DASH Video)
141	:	m4a	[256k] (DASH Audio)
140	:	m4a	[128k] (DASH Audio)
139	:	m4a	[48k] (DASH Audio)

Es wird automatisch eine kombination aus der besten Videoqualität und der besten Audioqualität heruntergeladen, im Beispiel also 137+139. Wenn einem eine kleinere Version reicht, kann man die entsprechende Qualitäts-ID beim Aufruf übergeben.

youtube-dl -f 43 67j45hhhr678
[youtube] Setting language
[youtube] 67j45hhhr678: Downloading video webpage
[youtube] 67j45hhhr678: Downloading video info webpage
[youtube] 67j45hhhr678: Extracting video information
[download] Destination: mein tolles video-67j45hhhr678.webm
[download] 100% of 1.33MiB in 00:01

Damit wurde die webm-Variante des Videos heruntergeladen.

In den Beispielen wurde eine zum Zeitpunkt des erstellens nicht existierende Video-ID verwendet. Sollte sich das inzwischen geändert haben, so ist dies nicht beabsichtigt, und sollte einfach kurz im Artikel geändert werden.

Andere Videoanbieter

Anders als der Name vermuten lässt, beherrscht youtube-dl auch das Herunterladen von Videos aus anderen Quellen. Darunter andere Videoplattformen wie zum Beispiel myvideo.de, vimeo, blip.tv, metacafe.com oder Dailymotion. Zusätzlich erkennt youtube-dl Videoeinbettungen mancher offiziell nicht unterstützter Seiten automatisch.

youtube-dl -F "http://www.arte.tv/guide/de/048963-321/sendung?autoplay=1"
[arte.tv:+7] 048963-321: Downloading webpage
[arte.tv:+7] 048963-321: Downloading info json
[arte.tv:+7] 048963-321: Extracting information
[info] Available formats for 048963-321_PLUS7-D:
format code         extension resolution  note
200-300-VA-STMA     flv       320x200     UT Hörgeschädigte (worst)
200-300-VA          flv       320x200     Dt. Version
360-1500-VA-STMA    mp4       640x360     UT Hörgeschädigte
360-1500-VA         mp4       640x360     Dt. Version
406-800-VA-STMA     flv       720x406     UT Hörgeschädigte
406-800-VA          flv       720x406     Dt. Version
406-1500-VA-STMA    flv       720x406     UT Hörgeschädigte
406-1500-VA         flv       720x406     Dt. Version
720-2200-VA-STMA    flv       1280x720    UT Hörgeschädigte
720-2200-VA         flv       1280x720    Dt. Version (best)

Auch Videos aus der arte-Mediathek „ARTE+7“ können durch youtube-dl heruntergeladen werden. Im Beispiel werden die verfügbaren Qualitäten aufgelistet. (Auch hier wieder anhand einer fiktiven Video-ID.)

Weitere unterstützte Seiten können auf der offiziellen Homepage eingesehen werden, oder direkt mit

youtube-dl --list-extractors 

gelistet werden.

Tonspur extrahieren und umwandeln

Nur die Tonspur eines Videos runter laden und in das Audioformat seiner Wahl umwandeln, funktioniert ebenfalls sehr komfortabel mit der Anweisung:

-x = extract-audio 

Folgende Audio-Codecs (Formate) stehen zur Verfügung:

  • aac, vorbis, mp3, m4a, opus, wav in den Qualitätsstufen 0 (sehr gut) - 9 (schlecht). Standard ist Stufe 5 = 128K.
  • Beispiel:
youtube-dl -x --audio-format mp3 --audio-quality 5 "URL"

Siehe auch

Weblinks