Yt-dlp: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
KKeine Bearbeitungszusammenfassung
 
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
{{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.}}
{{SEITENTITEL:yt-dlp}}


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.
yt-dlp ist ein aktiv entwickelter Fork des inzwischen „eingeschlafenen“ Projekts ''youtube-dl'', der es ermöglicht, Videos von YouTube und diversen anderen Videoplattformen herunterzuladen.


{{installation
{{installation|paket=yt-dlp}}
|repo=community
|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. Der Fork ist mittels {{ic|yt-dlp}} aufrufbar, die Befehlssyntax ist größtenteils identisch, siehe auch die vergleichsseite aus den Weblinks.
Nach der Installation ist das Programm mittels {{ic|yt-dlp}} aufrufbar. Die [[Manpage]] bietet eine ausführliche Übersicht und Beschreibung aller möglichen Parameter und Optionen..


== Verwendung ==
== Verwendung ==
youtube-dl akzeptiert sowohl einen kompletten Video-URL, als auch nur die Video-ID, im URL nach dem {{ic|1=v=}} zu finden.
yt-dlp akzeptiert sowohl einen kompletten Video-URL, als auch nur die Video-ID, im URL nach dem {{ic|1=v=}} zu finden. Wenn nur die Video-ID übergeben wird, wird automatisch YouTube als Videoseite angenommen.


{{hc|1=youtube-dl <nowiki>http://www.youtube.com/watch?v=67j45hhhr678</nowiki>|2=
{{hc|1=yt-dlp 67j45hhhr678|2=
[youtube] Setting language
[youtube] Extracting URL: 67j45hhhr678
[youtube] 67j45hhhr678: Downloading video webpage
[youtube] 67j45hhhr678: Downloading webpage
[youtube] 67j45hhhr678: Downloading video info webpage
[youtube] 67j45hhhr678: Downloading ios player API JSON
[youtube] 67j45hhhr678: Extracting video information
[youtube] 67j45hhhr678: Downloading tv player API JSON
[download] Destination: mein tolles video-67j45hhhr678.mp4
[youtube] 67j45hhhr678: Downloading m3u8 information
[download] 100% of 3.69MiB in 00:04}}
[info] 67j45hhhr678: Downloading 1 format(s): 616+251
[hlsnative] Downloading m3u8 manifest
[hlsnative] Total fragments: 158
[download] Destination: Mein tolles Testvideo *testen* [67j45hhhr678].f616.mp4
[download] 100% of 318.58MiB in 00:01:28 at 3.61MiB/s
[download] Destination: Mein tolles Testvideo *testen* [67j45hhhr678].f251.webm
[download] 100% of  12.33MiB in 00:00:02 at 4.70MiB/s
[Merger] Merging formats into "Mein tolles Testvideo *testen* [67j45hhhr678].webm"
Deleting original file Mein tolles Testvideo *testen* [67j45hhhr678].f251.webm (pass -k to keep)
Deleting original file Mein tolles Testvideo *testen* [67j45hhhr678].f616.mp4 (pass -k to keep)}}


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.
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. (Um die Darstellung hier im Wiki nicht unnötig zu verlängern, wurden diverse weitere Formate aus der Ausgabe gelöscht.)


{{hc|youtube-dl -F 67j45hhhr678|
{{hc|1=yt-dlp -F 67j45hhhr678|2=
[youtube] Setting language
[youtube] Extracting URL: 67j45hhhr678
[youtube] 67j45hhhr678: Downloading video webpage
[youtube] 67j45hhhr678: Downloading webpage
[youtube] 67j45hhhr678: Downloading video info webpage
[youtube] 67j45hhhr678: Downloading ios player API JSON
[youtube] 67j45hhhr678: Extracting video information
[youtube] 67j45hhhr678: Downloading tv player API JSON
Available formats:
[youtube] 67j45hhhr678: Downloading m3u8 information
22 : mp4 [720x1280]
[info] Available formats for 67j45hhhr678:
18 : mp4 [360x640]
ID      EXT  RESOLUTION FPS CH │  FILESIZE │ VCODEC        MORE INFO
43 : webm [360x640]
───────────────────────────────────────────────────────────────────────────────────
5 : flv [240x400]
140    m4a  audio only      2 │  13.71MiB │ audio only    [de] medium, m4a_dash
36 : 3gp [240x320]
251    webm  audio only      2 │  12.33MiB │ audio only    [de] medium, webm_dash
17 : 3gp [144x176]
135     mp4   854x480    30    │  31.84MiB │ avc1.4d401f  480p, mp4_dash
137 : mp4 [1080p] (DASH Video)
136    mp4   1280x720    30    │  59.62MiB │ avc1.4d401f  720p, mp4_dash
136 : mp4 [720p] (DASH Video)
137    mp4   1920x1080  30    │  224.00MiB │ avc1.640028  1080p, mp4_dash
135 : mp4 [480p] (DASH Video)
616    mp4   1920x1080  30    │ ~605.44MiB │ vp09.00.40.08 Premium}}
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.
Es wird automatisch eine kombination aus der besten Videoqualität und der besten Audioqualität heruntergeladen, im Beispiel also 251+616. Wenn einem eine kleinere Version reicht, kann man die entsprechende Qualitäts-ID beim Aufruf übergeben.


{{hc|youtube-dl -f 43 67j45hhhr678|
{{hc|1=yt-dlp -f 140+135 67j45hhhr678|2=
[youtube] Setting language
[youtube] Extracting URL: 67j45hhhr678
[youtube] 67j45hhhr678: Downloading video webpage
[youtube] 67j45hhhr678: Downloading webpage
[youtube] 67j45hhhr678: Downloading video info webpage
[youtube] 67j45hhhr678: Downloading ios player API JSON
[youtube] 67j45hhhr678: Extracting video information
[youtube] 67j45hhhr678: Downloading tv player API JSON
[download] Destination: mein tolles video-67j45hhhr678.webm
[youtube] 67j45hhhr678: Downloading m3u8 information
[download] 100% of 1.33MiB in 00:01}}
[info] 67j45hhhr678: Downloading 1 format(s): 140+135
[download] Destination: Mein tolles Testvideo *testen* [67j45hhhr678].f140.m4a
[download] 100% of  13.71MiB in 00:00:02 at 5.86MiB/s
[download] Destination: Mein tolles Testvideo *testen* [67j45hhhr678].f135.mp4
[download] 100% of   31.84MiB in 00:00:05 at 5.40MiB/s
[Merger] Merging formats into "Mein tolles Testvideo *testen* [67j45hhhr678].mp4"
Deleting original file Mein tolles Testvideo *testen* [67j45hhhr678].f135.mp4 (pass -k to keep)
Deleting original file  Mein tolles Testvideo *testen* [67j45hhhr678].f140.m4a (pass -k to keep)}}


Damit wurde die webm-Variante des Videos heruntergeladen.
Damit wurde die Kombination aus M4A-Audio und MP4-Video in 854x480 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.''
''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 ===
=== 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.
Wenn man einen kompletten URL angibt, versucht yt-dlp entweder durch den spezifischen Extraktor für diese Seite, oder durch einen generischen Extraktor, das Video zu extrahieren.


{{hc|1=youtube-dl -F "<nowiki>http://www.arte.tv/guide/de/048963-321/sendung?autoplay=1</nowiki>"|2=
{{hc|1=yt-dlp -F "<nowiki>https://www.arte.tv/de/videos/123456-001-A/sendungs-id-1-2/</nowiki>"|2=
[arte.tv:+7] 048963-321: Downloading webpage
[ArteTV] Extracting URL: <nowiki>https://www.arte.tv/de/videos/123456-001-A/sendungs-id-1-2/</nowiki>
[arte.tv:+7] 048963-321: Downloading info json
[ArteTV] 123456-001-A: Downloading JSON metadata
[arte.tv:+7] 048963-321: Extracting information
[ArteTV] 123456-001-A: Downloading m3u8 information
[info] Available formats for 048963-321_PLUS7-D:
[info] Available formats for 123456-001-A:
format code        extension resolution  note
ID                    EXT RESOLUTION FPS │  FILESIZE │ VCODEC        MORE INFO
200-300-VA-STMA    flv      320x200    UT Hörgeschädigte (worst)
────────────────────────────────────────────────────────────────────────────────────────
200-300-VA         flv      320x200    Dt. Version
VA-STA-audio_0-Deutsch mp4 audio only     │            │ audio only    [de] Deutsch [DE]
360-1500-VA-STMA    mp4       640x360     UT Hörgeschädigte
VA-STA-1150            mp4 768x432     25 │ ~103.41MiB │ avc1.4d401e  Deutsch [DE]
360-1500-VA        mp4       640x360     Dt. Version
VA-STA-1964            mp4 1280x720    25 │ ~176.60MiB │ avc1.4d401f  Deutsch [DE]
406-800-VA-STMA    flv      720x406    UT Hörgeschädigte
VA-STA-2048            mp4 1920x1080  25 │ ~184.11MiB │ hev1.2.4.L123 Deutsch [DE]}}
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.)
Auch Videos aus der arte-Mediathek „ArteTV“ können durch yt-dlp heruntergeladen werden. Im Beispiel werden die verfügbaren Qualitäten aufgelistet. (Auch hier wieder anhand einer fiktiven Video-ID und zur Anzeige im Wiki gekürzt.)


Weitere unterstützte Seiten können auf der offiziellen Homepage eingesehen werden, oder direkt mit  
Weitere unterstützte Seiten können auf der offiziellen Homepage eingesehen werden, oder direkt mit {{ic|yt-dlp --list-extractors}} gelistet werden.
youtube-dl --list-extractors  
gelistet werden.


=== Tonspur extrahieren und umwandeln ===
=== Tonspur extrahieren und umwandeln ===
Nur die Tonspur eines Videos runter laden und in das Audioformat seiner Wahl umwandeln,
Nur die Tonspur eines Videos runterzuladen und in ein bestimmtes Audioformat zu konvertieren funktioniert ebenfalls sehr komfortabel. Folgendes ist hierzu verfügbar:
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:
* Ein generisches ''best'' als Standard, basierend auf allen Verfügbaren Formaten
youtube-dl -x --audio-format mp3 --audio-quality 5 "URL"
* Die Formate aac, alac, flac, m4a, mp3, opus, vorbis, und wav als Zielformate
* Die Qualitätsstufen 0 (beste Qualität) bis 10 (schlechteste Qualität) oder VBR für die Variable Bitrate als Zielqualität
 
{{hc|1=youtube-dl -x --audio-format mp3 --audio-quality 5 "67j45hhhr678"|2=
[youtube] Extracting URL: 67j45hhhr678
[youtube] 67j45hhhr678: Downloading webpage
[youtube] 67j45hhhr678: Downloading ios player API JSON
[youtube] 67j45hhhr678: Downloading tv player API JSON
[youtube] 67j45hhhr678: Downloading m3u8 information
[info] 67j45hhhr678: Downloading 1 format(s): 251
[download] Destination: Mein tolles Testvideo *testen*[67j45hhhr678].webm
[download] 100% of  12.33MiB in 00:00:02 at 5.82MiB/s
[ExtractAudio] Destination: Mein tolles Testvideo *testen* [67j45hhhr678].ogg
Deleting original file Mein tolles Testvideo *testen* [67j45hhhr678].webm (pass -k to keep)}}
 
Damit die Audioextraktion funktioniert muss das Paket {{paket|ffmpeg}} installiert sein.
 
== Konfiguration ==
Die konfiguration von yt-dlp kann entweder direkt an der Befehlszeile durch Parameter erfolgen, oder über die Konfigurationsdatei unter {{ic|~/.config/yt-dlp/config}}. Alternativ kann mit {{ic|--config-location}} bei jedem Aufruf die zu verwendende Konfigurationsdatei bestimmt werden.
 
Die Datei beinhaltet einfach zeilenweise die Befehlszeilenparameter, so wie auch an der Befehlszeile angegeben.
 
{{hc|1=~/.config/yt-dlp/config|2=
--playlist-reverse
--ignore-errors
--embed-metadata
--extractor-retries 10
}}
 
mittels {{ic|--ignore-config}} beim Aufruf kann man die Standardkonfigurationsdatei ignorieren.
 
=== Ersetzung von Zeichen unterdrücken ===
Standardmäßig werden durch yt-dlp einige Zeichen durch Ersatzzeichen ersetzt, die bei Verwendung veralteter Dateisysteme oder beim Datenaustausch mit Windows zu Problemen führen können. Wenn man beide Probleme nicht hat, und man die Videotitel in den Dateien möglichst originalgetreu behalten möchte, kann man {{ic|--no-windows-filenames}} verwenden
 
{{hc|1=yt-dlp 67j45hhhr678|2=
[...]
[Merger] Merging formats into "Mein tolles Testvideo *testen* [67j45hhhr678].webm"
}}
 
Der obige Aufruf ersetzt die normalen Sternchen ({{ic|*}}) durch die Fullwidth-Zeichen {{ic|*}}. Mittels des Parameters wird dies nicht durchgeführt
 
{{hc|1=yt-dlp --no-windows-filenames 67j45hhhr678|2=
[...]
[Merger] Merging formats into "Mein tolles Testvideo *testen* [67j45hhhr678].webm"
}}
 
Dies betrifft auch diverse weitere Zeichen wie zum Beispiel das Fragezeichen (wird zu {{ic|?}}), die Pipe (wird zu {{ic||}}), oder z.B. auch die Doppelpunkte (werden zu {{ic|:}}).
 
=== Browser-Cookies ===
yt-dlp kann die Cookies verschiedener Browser-Typen verwenden, um Videos herunterzuladen (wenn diese zum Beispiel hinter einem Login verborgen sind, oder der Zugriff an andere Bedingungen geknüpft sind, die per Cookie erfasst werden).
 
* Cookie-Datei im Netscape-Stil: {{ic|--cookies /pfad/zur/datei}}
* Aus [[Firefox]]-Profilen
* [[Chromium]](-basierend): {{ic|chromium}}, {{ic|brave}}, {{ic|opera}}, {{ic|vivaldi}}, sowie einige weitere
* Keyring zum Entschlüsseln der Cookies in Chromium(-basierenden) u.A.: {{ic|basictext}}, {{ic|gnomekeyring}}, {{ic|kwallet}}
* Optional kann der Containername angegeben werden (bei Firefox immer {{ic|none}})
 
Beispiele
 
* Firefox-Cookies vom Standardprofil: {{ic|--cookies-from-browser firefox }}
* Chromium-Profil ''private'' aus Container ''foo'':  {{ic|--cookies-from-browser chromium:private::foo }}
* Vivaldi-Standardprofil mit kwallet-Keyring:  {{ic|--cookies-from-browser vivaldi+kwallet }}
 
Alle Angaben bis auf den Browsernamen sind optional.


== Siehe auch ==
== Siehe auch ==
Zeile 100: Zeile 158:


== Weblinks ==
== Weblinks ==
* [http://youtube-dl.org/ Offizielle Website] {{sprache|en}}
* [https://github.com/yt-dlp/yt-dlp Offizielles Git-Repo & Wiki] {{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}}
* {{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:yt-dlp]]
[[en:Youtube-dl]]
[[es:Youtube-dl]]
[[es:Youtube-dl]]
[[ja:Youtube-dl]]

Aktuelle Version vom 20. Januar 2025, 15:37 Uhr


yt-dlp ist ein aktiv entwickelter Fork des inzwischen „eingeschlafenen“ Projekts youtube-dl, der es ermöglicht, Videos von YouTube und diversen anderen Videoplattformen herunterzuladen.

Installation

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

pacman -S yt-dlp

Nach der Installation ist das Programm mittels yt-dlp aufrufbar. Die Manpage bietet eine ausführliche Übersicht und Beschreibung aller möglichen Parameter und Optionen..

Verwendung

yt-dlp akzeptiert sowohl einen kompletten Video-URL, als auch nur die Video-ID, im URL nach dem v= zu finden. Wenn nur die Video-ID übergeben wird, wird automatisch YouTube als Videoseite angenommen.

yt-dlp 67j45hhhr678
[youtube] Extracting URL: 67j45hhhr678
[youtube] 67j45hhhr678: Downloading webpage
[youtube] 67j45hhhr678: Downloading ios player API JSON
[youtube] 67j45hhhr678: Downloading tv player API JSON
[youtube] 67j45hhhr678: Downloading m3u8 information
[info] 67j45hhhr678: Downloading 1 format(s): 616+251
[hlsnative] Downloading m3u8 manifest
[hlsnative] Total fragments: 158
[download] Destination: Mein tolles Testvideo *testen* [67j45hhhr678].f616.mp4
[download] 100% of  318.58MiB in 00:01:28 at 3.61MiB/s
[download] Destination: Mein tolles Testvideo *testen* [67j45hhhr678].f251.webm
[download] 100% of   12.33MiB in 00:00:02 at 4.70MiB/s
[Merger] Merging formats into "Mein tolles Testvideo *testen* [67j45hhhr678].webm"
Deleting original file Mein tolles Testvideo *testen* [67j45hhhr678].f251.webm (pass -k to keep)
Deleting original file Mein tolles Testvideo *testen* [67j45hhhr678].f616.mp4 (pass -k to keep)

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. (Um die Darstellung hier im Wiki nicht unnötig zu verlängern, wurden diverse weitere Formate aus der Ausgabe gelöscht.)

yt-dlp -F 67j45hhhr678
[youtube] Extracting URL: 67j45hhhr678
[youtube] 67j45hhhr678: Downloading webpage
[youtube] 67j45hhhr678: Downloading ios player API JSON
[youtube] 67j45hhhr678: Downloading tv player API JSON
[youtube] 67j45hhhr678: Downloading m3u8 information
[info] Available formats for 67j45hhhr678:
ID      EXT   RESOLUTION FPS CH │   FILESIZE │ VCODEC        MORE INFO
───────────────────────────────────────────────────────────────────────────────────
140     m4a   audio only      2 │   13.71MiB │ audio only    [de] medium, m4a_dash
251     webm  audio only      2 │   12.33MiB │ audio only    [de] medium, webm_dash
135     mp4   854x480     30    │   31.84MiB │ avc1.4d401f   480p, mp4_dash
136     mp4   1280x720    30    │   59.62MiB │ avc1.4d401f   720p, mp4_dash
137     mp4   1920x1080   30    │  224.00MiB │ avc1.640028   1080p, mp4_dash
616     mp4   1920x1080   30    │ ~605.44MiB │ vp09.00.40.08 Premium

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

yt-dlp -f 140+135 67j45hhhr678
[youtube] Extracting URL: 67j45hhhr678
[youtube] 67j45hhhr678: Downloading webpage
[youtube] 67j45hhhr678: Downloading ios player API JSON
[youtube] 67j45hhhr678: Downloading tv player API JSON
[youtube] 67j45hhhr678: Downloading m3u8 information
[info] 67j45hhhr678: Downloading 1 format(s): 140+135
[download] Destination: Mein tolles Testvideo *testen* [67j45hhhr678].f140.m4a
[download] 100% of   13.71MiB in 00:00:02 at 5.86MiB/s
[download] Destination: Mein tolles Testvideo *testen* [67j45hhhr678].f135.mp4
[download] 100% of   31.84MiB in 00:00:05 at 5.40MiB/s
[Merger] Merging formats into "Mein tolles Testvideo *testen* [67j45hhhr678].mp4"
Deleting original file Mein tolles Testvideo *testen* [67j45hhhr678].f135.mp4 (pass -k to keep)
Deleting original file  Mein tolles Testvideo *testen* [67j45hhhr678].f140.m4a (pass -k to keep)

Damit wurde die Kombination aus M4A-Audio und MP4-Video in 854x480 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

Wenn man einen kompletten URL angibt, versucht yt-dlp entweder durch den spezifischen Extraktor für diese Seite, oder durch einen generischen Extraktor, das Video zu extrahieren.

yt-dlp -F "https://www.arte.tv/de/videos/123456-001-A/sendungs-id-1-2/"
[ArteTV] Extracting URL: https://www.arte.tv/de/videos/123456-001-A/sendungs-id-1-2/
[ArteTV] 123456-001-A: Downloading JSON metadata
[ArteTV] 123456-001-A: Downloading m3u8 information
[info] Available formats for 123456-001-A:
ID                     EXT RESOLUTION FPS │   FILESIZE │ VCODEC        MORE INFO
────────────────────────────────────────────────────────────────────────────────────────
VA-STA-audio_0-Deutsch mp4 audio only     │            │ audio only    [de] Deutsch [DE]
VA-STA-1150            mp4 768x432     25 │ ~103.41MiB │ avc1.4d401e   Deutsch [DE]
VA-STA-1964            mp4 1280x720    25 │ ~176.60MiB │ avc1.4d401f   Deutsch [DE]
VA-STA-2048            mp4 1920x1080   25 │ ~184.11MiB │ hev1.2.4.L123 Deutsch [DE]

Auch Videos aus der arte-Mediathek „ArteTV“ können durch yt-dlp heruntergeladen werden. Im Beispiel werden die verfügbaren Qualitäten aufgelistet. (Auch hier wieder anhand einer fiktiven Video-ID und zur Anzeige im Wiki gekürzt.)

Weitere unterstützte Seiten können auf der offiziellen Homepage eingesehen werden, oder direkt mit yt-dlp --list-extractors gelistet werden.

Tonspur extrahieren und umwandeln

Nur die Tonspur eines Videos runterzuladen und in ein bestimmtes Audioformat zu konvertieren funktioniert ebenfalls sehr komfortabel. Folgendes ist hierzu verfügbar:

  • Ein generisches best als Standard, basierend auf allen Verfügbaren Formaten
  • Die Formate aac, alac, flac, m4a, mp3, opus, vorbis, und wav als Zielformate
  • Die Qualitätsstufen 0 (beste Qualität) bis 10 (schlechteste Qualität) oder VBR für die Variable Bitrate als Zielqualität
youtube-dl -x --audio-format mp3 --audio-quality 5 "67j45hhhr678"
[youtube] Extracting URL: 67j45hhhr678
[youtube] 67j45hhhr678: Downloading webpage
[youtube] 67j45hhhr678: Downloading ios player API JSON
[youtube] 67j45hhhr678: Downloading tv player API JSON
[youtube] 67j45hhhr678: Downloading m3u8 information
[info] 67j45hhhr678: Downloading 1 format(s): 251
[download] Destination: Mein tolles Testvideo *testen*[67j45hhhr678].webm
[download] 100% of   12.33MiB in 00:00:02 at 5.82MiB/s
[ExtractAudio] Destination: Mein tolles Testvideo *testen* [67j45hhhr678].ogg
Deleting original file Mein tolles Testvideo *testen* [67j45hhhr678].webm (pass -k to keep)

Damit die Audioextraktion funktioniert muss das Paket ffmpeg installiert sein.

Konfiguration

Die konfiguration von yt-dlp kann entweder direkt an der Befehlszeile durch Parameter erfolgen, oder über die Konfigurationsdatei unter ~/.config/yt-dlp/config. Alternativ kann mit --config-location bei jedem Aufruf die zu verwendende Konfigurationsdatei bestimmt werden.

Die Datei beinhaltet einfach zeilenweise die Befehlszeilenparameter, so wie auch an der Befehlszeile angegeben.

~/.config/yt-dlp/config
--playlist-reverse
--ignore-errors
--embed-metadata
--extractor-retries 10

mittels --ignore-config beim Aufruf kann man die Standardkonfigurationsdatei ignorieren.

Ersetzung von Zeichen unterdrücken

Standardmäßig werden durch yt-dlp einige Zeichen durch Ersatzzeichen ersetzt, die bei Verwendung veralteter Dateisysteme oder beim Datenaustausch mit Windows zu Problemen führen können. Wenn man beide Probleme nicht hat, und man die Videotitel in den Dateien möglichst originalgetreu behalten möchte, kann man --no-windows-filenames verwenden

yt-dlp 67j45hhhr678
[...]
[Merger] Merging formats into "Mein tolles Testvideo *testen* [67j45hhhr678].webm"

Der obige Aufruf ersetzt die normalen Sternchen (*) durch die Fullwidth-Zeichen . Mittels des Parameters wird dies nicht durchgeführt

yt-dlp --no-windows-filenames 67j45hhhr678
[...]
[Merger] Merging formats into "Mein tolles Testvideo *testen* [67j45hhhr678].webm"

Dies betrifft auch diverse weitere Zeichen wie zum Beispiel das Fragezeichen (wird zu ), die Pipe (wird zu ), oder z.B. auch die Doppelpunkte (werden zu ).

Browser-Cookies

yt-dlp kann die Cookies verschiedener Browser-Typen verwenden, um Videos herunterzuladen (wenn diese zum Beispiel hinter einem Login verborgen sind, oder der Zugriff an andere Bedingungen geknüpft sind, die per Cookie erfasst werden).

  • Cookie-Datei im Netscape-Stil: --cookies /pfad/zur/datei
  • Aus Firefox-Profilen
  • Chromium(-basierend): chromium, brave, opera, vivaldi, sowie einige weitere
  • Keyring zum Entschlüsseln der Cookies in Chromium(-basierenden) u.A.: basictext, gnomekeyring, kwallet
  • Optional kann der Containername angegeben werden (bei Firefox immer none)

Beispiele

  • Firefox-Cookies vom Standardprofil: --cookies-from-browser firefox
  • Chromium-Profil private aus Container foo: --cookies-from-browser chromium:private::foo
  • Vivaldi-Standardprofil mit kwallet-Keyring: --cookies-from-browser vivaldi+kwallet

Alle Angaben bis auf den Browsernamen sind optional.

Siehe auch

Weblinks