Zum Inhalt springen

yt-dlp

Aus Foxwiki

yt-dlp - YouTube download

Beschreibung

Installation

sudo apt install ffmpeg yt-dlp

Optionale Programme

Das oben genannte ffmpeg und yt-dlp reichen aus, um mit der Standard-Koniguration von yt-dlp (also ohne die Angabe von irgendwelchen Optionen) Dateien von YouTube herunterladen zu können

  • Für bestimmte `yt-dlp`-Optionen – wie z.B.das Einbetten von Vorschaubildern und/oder das Verwenden eines externen Download-Managers – und/oder Plattformen werden jedoch die folgenden Programme bzw. Pakete benötigt

Für Videos, welche über das [wikipedia:Real Time Messaging Protocol:RTMP]-Protokoll gestreamt werden, muss RTMPDump installiert werden[1]

rtmpdump, universe

Für Videos, welche über die beiden Protokolle [wikipedia:MMS-Protokoll:MMS] und [wikipedia:Real-Time_Streaming_Protocol:RTSP] gestreamt werden, muss [:MPlayer:] oder / und [:mpv:] über das bzw. die folgende(n) Paket(e) installiert werden

mplayer, universe, MPlayer für die Bedienung nur per Kommandozeile

mpv, universe

Falls yt-dlp anstelle des eigenen Downloaders (temporär) den externen Download-Manager [:aria2:] verwenden soll, muss das gleichnamige Paket installiert werden

aria2, universe

Falls Vorschaubilder (sofern vorhanden) direkt in Audios bzw. Videos eingebettet werden sollen, so muss das Programm AtomicParsley installiert werden

atomicparsley, universe


Um Audio/Video in gewünschter Qualität (option -f) zu bekommen,muss das folgende Programm installiert werden

python3-brotli, universe

Aufruf

Optionen

Unix GNU Parameter Beschreibung
-1 --single Exit as soon as the first advertisement is received (default)

Parameter

Umgebungsvariablen

Exit-Status

Anwendung

Problembehebung

Konfiguration

Wenn bestimmte Optionen häufiger benutzt werden, können diese auch in einer Konfigurationsdatei eingetragen werden[3]

  • Diese muss ggf
  • selber angelegt werden, für systemweite Nutzung als /etc/yt-dlp.conf, benutzerspezifisch als ~/.config/yt-dlp/config, man kann durch die `--config-location`-Option beim Aufruf auch andere Speicherorte angeben
  • Jede Zeile stellt einen Parameter in der gleichen Syntax wie auf der Kommandozeile dar
  • Zeilen, die mit einem Rautenzeichen (#) beginnen, werden als Kommentare behandelt]

Beispiel

  1. Benutzerspezifische Beispielkonfigurationsdatei für yt-dlp in ~/.config/yt-dlp/config
  2. Zeilen, die mit einem Rautenzeichen (#) beginnen, sind entweder Kommentare oder deaktivierte Argumente
  3. Lade bei Vorliegen von zwei höchst-qualitativen separaten Dateien für Audio und Video diese getrennt herunter
  4. (aber nur die in den Formaten m4a bzw. mp4);
  5. ansonsten nehme die höchst-qualitative AV-Kombi-Einzeldatei

-f "bestvideo[ext=mp4]+bestaudio[ext=m4a]/best"

  1. Bevorzuge freie (Video-)Formate, außer ein spezifisches ist gefordert
  2. --prefer-free-formats
  3. Der Zielordner ist das aktuelle Terminal-Arbeitsverzeichnis; entferne die Youtube-ID aus dem Namen/Titel des Videos
  4. -o "%(title)s.%(ext)s"
  5. Der Zielordner ist ~/Videos; der Dateiname besteht – wie in der Voreinstellung – aus dem Namen/Titel und der YT-ID
  6. des Videos sowie der Dateiendung

-o "~/Videos/%(title)s-%(id)s.%(ext)s"

  1. Beschränke Dateinamen auf reine ASCII-Zeichen und vermeide dort u.a. "&" und Leerzeichen, aber auch Umlaute;
  2. wobei Leerzeichen in Unterstriche (_) sowie Umlaute in a, o und u umgewandelt werden

--restrict-filenames

  1. Benutze den externen Downloader aria2 (das gleichnamige Paket muss installiert sein!)

--external-downloader "aria2c"

  1. Übergebe die folgenden Argumente an aria2
  2. Minimale Teilstück-Größe 1MiB; maximale Anzahl an gleichzeitigen Verbindungen pro Server und pro Download;
  3. bei HTTP(S)/FTP-Downloads setze bei nur teilweise von anderenProgrammen heruntergeladenen Dateien den
  4. Download fort;
  5. =>=>=> Achtung: Diese Option kann zu Störungen führen, falls youtube-dl einen HLS herunterlädt! Im Zweifelsfalle
  6. diese Option bitte NICHT verwenden
  7. --external-downloader-args "-k1M -x8 -c"
  8. Zeige den Download-Fortschritt in immer neuen Zeilen an =>=>=> Achtung: Diese Option bitte NICHT zusammen
  9. mit "–external-downloader"-Optionen verwenden, um potenzielle Störungen auszuschließen
  10. --newline
  11. Zeige den Download-Fortschritt in der Titelleiste des Terminalfensters an; zusammen mit
  12. "–external-downloader"-Optionen wird evtl. lediglich der erfolgreiche Abschluss des Downloads bekanntgegeben;
  13. =>=>=> Achtung: Diese Option kann zu Störungen führen, falls youtube-dl durch mpv aufgerufen wird! Im Zweifelsfalle
  14. diese Option bitte NICHT verwenden
  15. --console-title
  16. Schreibe die Metadaten mit in die Ausgabedatei

--add-metadata

  1. Umgehe geographische Beschränkungen durch Fälschen des "X-Forwarded-For"-HTTP-Headers (experimentell)

--geo-bypass

  1. Bei Download-Fehlern trotzdem weiter herunterladen

--ignore-errors

  1. Erzwinge das Fortsetzen des Downloads von teilweise heruntergeladenen Dateien

--continue

  1. Schreibe die Video-Beschreibung in eine ".description"-Datei, bis auf die Endung hat diese den gleichen
  2. Namen wie die Video-Datei; zu öffnen mit jedem Texteditor

--write-description

  1. Schreibe Video-Anmerkungen bzw. -Kommentare (sofern verfügbar) in eine ".annotations.xml"-Datei

--write-annotations

  1. Schreibe Untertitel-Datei(en) (sofern verfügbar); diese Option wird zwingend von der Option "--embed-subs"
  2. vorausgesetzt (entweder/oder, aber auch zusammen mit der Option "--write-auto-sub")

--write-sub

  1. Schreibe automatisch generierte Untertitel-Datei(en) (nur bei YouTube und sofern verfügbar); diese Option wird
  2. zwingend von der Option "--embed-subs" vorausgesetzt (entweder/oder, aber auch zusammen mit
  3. der Option "--write-sub")

--write-auto-sub

  1. Lade alle für das Video verfügbaren Untertitel-Dateien herunter; dies sind allerdings ca. 110 an der Zahl;
  2. diese Anzahl kann dann allerdings dazu führen, dass – falls dies gewollt war – das Einbetten des Vorschaubildes
  3. fehlschlägt ("ERROR: too many atoms")
  4. --all-subs
  5. Liste alle für das Video verfügbaren Untertitel(-Sprachen) auf (aufzurufen als alleinige Option);
  6. =>=>=> Bei der Auflistung wird zwischen automatisch generierten Untertiteln ("automatic captions") und normalen,
  7. manuell erstellten Untertiteln ("subtitles") unterschieden; dabei können – falls für eine bestimmte Sprache beide
  8. Typen vorliegen – die jeweiligen Dateien völlig identisch sein (falls deren Löschung mit der Option "-k" verhindert
  9. wurde, kann man diese vergleichen); manuell erstellte Untertiteln-Dateien erkennt man daran, dass dort der Text
  10. überall linksbündig ist (sie dienen wohl als Vorlage für die automatisch generierten Dateien)
  11. --list-subs
  12. Gewünschtes Untertitel-Format, akzeptiert Format-Vorwahlen, z.B.: "srt" oder "ass/srt/best"; ist keines
  13. der angegebenen Formate vorhanden, wird anstelle dessen ein tatsächlich verfügbares genommen
  14. --sub-format srt
  15. Sprache(n) der herunterzuladenen Untertitel, bei mehreren durch Kommatas getrennt; durch den Aufruf mit der
  16. (alleinigen) Option "--list-subs" kriegt man die Sprach-Kürzel heraus (z. B. ist "de" deutsch); es werden auch
  17. nur die tatsächlich verfügbaren Sprachen heruntergeladen

--sub-lang de,en,en-GB,en-US,fr

  1. Bette die Untertitel (sofern vorhanden) direkt in das Video ein (nur bei MP4-, WEBM- u. MKV-Containern), sie
  2. sind dann allerdings ein- u
  • ausblendbar; diese Option setzt zwingend die Option "--write-sub" bzw. "--write-auto-
  1. sub" voraus (entweder/oder, aber auch beide); die heruntergeladenen Untertitel-Datei(en) wird (bzw. werden) nach
  2. dieser Aktion automatisch gelöscht (falls deren Löschung nicht mit der Option "-k" verhindert wurde)

--embed-subs

  1. Bette das Vorschaubild (sofern vorhanden) direkt in das Audio bzw. Video ein, es erscheint bei Audios permanent
  2. und bei Videos für ca. 1 Sekunde als "Umschlag-Kunst" (zumindest beim VLC; das Paket "atomicparsley" muss installiert
  3. sein!)

--embed-thumbnail

Um zu erreichen, dass systemweite und benutzerspezifische Konfigurationsdateien ignoriert werden, muss das Programm mit der Option `--ignore-config` aufgerufen werden

yt-dlp --ignore-config [OPTIONEN] URL_DES_VIDEOS

Falls die Option `--ignore-config` in der systemweiten Konfigurationsdatei steht, dann wird eine eventuell vorhandene benutzerspezifische ignoriert

Hinweis

Zu beachten ist, dass aktivierte Konfigurationsdateien Einfluss auf die Funktionen von externen Programmen haben können, von denen yt-dlp aufgerufen wird

  • Falls bei den ersteren Probleme auftreten, dann etwaige Konfigurationsdateien vorsichtshalber temporär deaktivieren (z. B. durch Umbenennen) und dann weiter testen
  • Natürlich könnten die betroffenen Programme außerdem für youtube-dl sicherheitshalber ebenfalls die Option `--ignore-config` benutzen

Mehr Informationen zur Konfiguration sind in der [:man:Manpage] bzw. der [#Links Dokumentation] zu finden



Dateien

Anhang

Siehe auch

Dokumentation

Man-Page
Info-Pages

Links

Projekt
Weblinks
  1. https://wiki.ubuntuusers.de/yt-dlp/
  2. [github:yt-dlp/yt-dlp:Projektseite]
  3. Documentation youtube-dl – Anleitung
  4. [man:yt-dlp:Manpage]
  5. [wikipedia:Youtube#Rechtliche_Aspekte:Youtube – Rechtliche Aspekte] – Wikipedia
  6. Formats and Resolutions of Youtube Videos – Auflistung der YouTube-Format-Codes mitsamt Auflösung und anderen Details
  7. [github:tmechen/tatort-dl:tatort-dl] – Hilfsprogramm speziell für die Mediathek der ARD
  8. [:Streams_speichern:] {Übersicht} Übersichtsseite

Achtung: Der Sortierungsschlüssel „new“ überschreibt den vorher verwendeten Schlüssel „yt-dlp“.


TMP

Beschreibung

Der Schwerpunkt dieses Projekts liegt auf dem Hinzufügen neuer Funktionen und Patches, wobei gleichzeitig die Aktualität des ursprünglichen Projekts gewährleistet wird

yt-dlp ist
  • ein youtube-dl-Fork, der auf dem inzwischen inaktiven youtube-dlc basiert
  • Befehlszeilenprogramm zum Herunterladen von Videos von YouTube.com und anderen Websites, die keine direkten Links zu den bereitgestellten Videos bereitstellen

'yt-dlp ein Fork des youtube-dl

  • der nicht mehr aktiv weiterentwickelt wird
  • ist eine Möglichkeit für die Kommandozeile – auch zum direkt-anschauen direkten Anschauen in einem beliebigen Mediaplayer

Mit yt-dlp kann der Benutzer

  • unter anderem eine bestimmte Videoqualität zum Herunterladen auswählen (sofern verfügbar) oder das Programm automatisch die beste (oder schlechteste) Videoqualität ermitteln lassen
  • Es unterstützt das Herunterladen ganzer Wiedergabelisten und aller Videos eines bestimmten Benutzers
Frage
  • wie man Videos von [youtube::YouTube] oder anderen Video-Portalen und auch Mediatheken dauerhaft speichern kann – ob man das darf, ist eine andere Frage und hängt von den rechtlichen Rahmenbedingungen im Heimatland bzw. am Standort des Benutzers ab Siehe auch Abschnitt [#Links Links], wovon auch auf die unterstützte Webseiten verwiesen wird)

Aufruf

Optionen

Argumente

Umgebungsvariablen

Exit-Status