[Linux Script] Automatischer YouTube Trailer Download

  • @Slaytanic

    Keine Erfahrung mit Asustor Dingern. Solang das Ding per Shell bedienbar ist und du die Pakete auch installiert hast / vorhanden sind, sollte es gehen. Das ist nur ein Stapelverarbeitungs Bash-Script, keine Magie.

    @Seger
    Müsst theoretisch an youtube-dl liegen. Die Pfade von mir ignorieren keine Umlaute.
    Auch mein Edit von oben beachten.

    "I don't caretaker"

    SKIN: Embuary - Donate: HIER de Hoibe bestellen, merci :thumbup:

    Devices: Nvidia Shield + Fire TV 4k --- NAS: i3 6100 | 8GB | 15tb | OMV4 | Emby --- TV: Sony 55" XF9005 + LG 47" LM640S | 114x Adalight | Yamaha 683

  • Verdammte Axt, ich habe es mit der neuen Version und mit deiner installierten Version versucht, das Ergebnis bleibt leider dabei, dass es 2 Dateien erzeugt. Jetzt kann es ja nur noch an der Linux-Distribution liegen oder denke ich da falsch? Was komisch ist, dass die Umlaute ja überall funktionieren (Windows Explorer-Ansicht, Filezilla etc.) Kann ich auf der Console noch andere Tests machen um das Problem weiter einzugrenzen?

    Danke dir wie immer für tüfteln...

    Edit: Bei dem Programm WinSCP musste ich UTF-8 Codierung auf "Ein" stellen damit mir die Umlaute angezeigt werden, bei "Auto" wurden mir komische alternative Zeichen angezeigt. Irgendwie muss es damit zusammenhängen glaube ich. Wenn ich aber in der Shell bin und mit "dir" mir die Ordner anzeigen lasse, zeigt er mir diese mit den richtigen Umlauten an- alles sehr komisch und verwirrend. Kann man im Skript noch was einbauen um UTF-8 sicherzustellen, oder hast du noch eine ganz andere Idee?

    VG
    Seger

    Einmal editiert, zuletzt von Seger (14. August 2018 um 00:36)

  • Nochmal, meine 2 Zeilen werden korrekt mit Umlauten angzeigt. Es muss an also an youtube-dl liegen. Da kann ich nichts anpassen :)

    Da er aber eine korrekte Datei mit 0kb Größe anlegt, vermute ich das wo anders der Hund begraben liegt.
    Schaut mir mehr nach einen nicht vollständigen Download aus, wegen den Zusatzverzeichnis.

    https://github.com/rg3/youtube-dl…esystem-options

    Probier mal "--no-part" mit anzuhängen.

    Edit:
    mit "export LANG=de_DE.UTF-8" kannst du in der Shell das Encoding global umstellen. Zur Sicherheit auch probieren. Bash Scripte nutzen die locale Einstellungen.
    Mit "locale" kannst du prüfen was gesetzt ist.

    Für Synology im Wiki:
    https://www.synology-wiki.de/index.php/Locale-UTF8

    "I don't caretaker"

    SKIN: Embuary - Donate: HIER de Hoibe bestellen, merci :thumbup:

    Devices: Nvidia Shield + Fire TV 4k --- NAS: i3 6100 | 8GB | 15tb | OMV4 | Emby --- TV: Sony 55" XF9005 + LG 47" LM640S | 114x Adalight | Yamaha 683

    5 Mal editiert, zuletzt von sualfred (14. August 2018 um 06:55)

  • Hallo zusammen,

    ich hatte am WE auch das Problem mit den Umlauten im Verzeichnisnamen auf einem Synology-NAS.
    "export LANG=de_DE.UTF-8" hat nicht geholfen!

    Mein Workaround sieht wie folgt auf:
    1. youtube-dl läd den Trailer in mein Standard-Download-Verzeichnis herunter

    Code
    DL=$(youtube-dl -f mp4 "https://www.youtube.com/watch?v=$ID" -o "/volume1/downloads/$FILENAME-trailer.%(ext)s" --restrict-filenames)

    2. Das Script verschiebt dann den Trailer ins Film-Verzeichnis

    Code
    #Update file modification date
                    mv "/volume1/downloads/$FILENAME-trailer.mp4" "$DIR/$FILENAME-trailer.mp4"
                    touch "$DIR/$FILENAME-trailer.mp4"


    @sualfred
    Danke für das Script!

    The more you give a king, the more he wants.

  • Moin @sualfred, Moin @Merlin.KIS, Moin alle anderen :-),

    ich habe es hinbekommen, es ist eine Kombination der oben verlinkten Erklärungen. :) :) :)

    Als ich über Putty "locale" eingegeben hatte, hat mir das System en_EN.UTF-8 ausgespuckt. Anscheinend ist die Consolenumgebung noch auf englisch gestellt gewesen und nicht auf de_DE.UTF-8.

    Man braucht nichts herunterladen oder ähnliches (Synology "ab DSM 4.2" hat eigentlich alles an Board, es muss nur umgestellt werden).

    Mann muss die Sprache in der Profile Datei auf der Synology setzen bzw. verändern.
    (Bin einfach mit WinSCP auf die Datei gegangen und habe sie mit dem Editor bearbeitet "natürlich als root angemeldet- sonst kommt man nicht zu dieser Datei").

    Pfad der Datei:

    Code
    /etc/profile
    Code
    Vorher:
    LANG=en_EN.UTF-8
    LC_ALL=en_EN.UTF-8
    
    
    Nachher:
    LANG=de_DE.UTF-8
    LC_ALL=de_DE.UTF-8
    export LANG LC_ALL


    Speichern, Diskstation neustarten.

    Anschließend wirft die Console mit "locale" folgendes aus:

    Anschließend musste ich aber noch zusätzlich "Export LANG=de_DE.UTF-8" in deinem Skript global setzen. Dort habe ich es platziert, die Zeile könntest du @sualfred also fest einbauen, dann funktioniert es auch für Synology Benutzer vom Werk aus ;)


    Achso die "DL" Zeile habe ich in deinem Skript nun ohne Zusatz:

    Code
    DL=$(youtube-dl -f mp4 "https://www.youtube.com/watch?v=$ID" -o "$DIR/$FILENAME-trailer.%(ext)s")


    DANKE FÜR DEINE MÜHE UND SENSATIONELLE HILFE!

    Danke auch dafür das du dich sogar in Synology ein wenig reingedacht bzw. belesen hast.

    Viele Grüße
    Seger

  • Dann funktioniert es für die Synology Benutzer aus Deutschland ;) Immer international denken. Und auf nen normalen Linux machts keine Probleme. Keine Ahnung warum bei DSM das Dingen mit ner anderen Locale als vom System genutzt wird. Das macht... kein Sinn.

    Aber jeder DSM Nutzer kann sichs ja händisch selber einpflegen. Der googelnde wird hier im Thread ja fündig.

    "I don't caretaker"

    SKIN: Embuary - Donate: HIER de Hoibe bestellen, merci :thumbup:

    Devices: Nvidia Shield + Fire TV 4k --- NAS: i3 6100 | 8GB | 15tb | OMV4 | Emby --- TV: Sony 55" XF9005 + LG 47" LM640S | 114x Adalight | Yamaha 683

  • Dann funktioniert es für die Synology Benutzer aus Deutschland ;) Immer international denken. Und auf nen normalen Linux machts keine Probleme. Keine Ahnung warum bei DSM das Dingen mit ner anderen Locale als vom System genutzt wird. Das macht... kein Sinn.

    Aber jeder DSM Nutzer kann sichs ja händisch selber einpflegen. Der googelnde wird hier im Thread ja fündig.


    International wird es dann, wenn du die globale Einstellung zur Auswahl stellst im Skript und z.B. die beiden Sprachen angibst:


    Hab es hier einfach nochmal dokumentiert, brauchst es natürlich nicht in Skript übertragen, wäre nur nice for have. Habe vielleicht kannst du es ja im Emby Forum in Englisch posten, falls mal Benutzer bedarf haben.

    Danke nochmal, bist einfach ein GUTER!!!

    VG
    Seger

    Einmal editiert, zuletzt von Seger (16. August 2018 um 00:43)

  • Das sind trotzdem System Variablen. Einmal korrekt gesetzt, müssten diese global und nach reboot so sein.

    Du kannst ja mal testweise folgendes deiner profiles Datei hinzufügen ("nano /etc/profile"):

    Code
    LANG=de_DE.UTF-8
     LC_ALL=de_DE.UTF-8
     export LANG LC_ALL

    Reboot dannach ned vergessen. Sollte eigentlich alles andere überflüssig machen.

    "I don't caretaker"

    SKIN: Embuary - Donate: HIER de Hoibe bestellen, merci :thumbup:

    Devices: Nvidia Shield + Fire TV 4k --- NAS: i3 6100 | 8GB | 15tb | OMV4 | Emby --- TV: Sony 55" XF9005 + LG 47" LM640S | 114x Adalight | Yamaha 683

  • Hey sobald ich ""nano /etc/profile"" profile hinzufüge und mein gesetztes beibehalten:


    Code
    LANG=de_DE.UTF-8
     LC_ALL=de_DE.UTF-8
     export LANG LC_ALL

    und:

    Code
    export LANG=de_DE.UTF-8


    aus dem Skript entferne, wird zwar kein weiterer Ordner und eine Datei ohne Umlaut hinzugefügt, aber die Trailer Datei bleibt leider ein 0kb Datei.


    Sobald ich zusätzlich zur Skriptzeile meine 3 Zeilen aus profile entferne und nur dein neue Zeile ""nano /etc/profile"" stehen lasse, kommt es wieder zum alten verhalten (2 Trailerdateien und ein Ordner ohne den Umlaut.

  • Bescheuertes DSM :)
    Naja, dann behalt dein Workaround. Der geht ja für dich. Das ist das einzig wichtige.

    "I don't caretaker"

    SKIN: Embuary - Donate: HIER de Hoibe bestellen, merci :thumbup:

    Devices: Nvidia Shield + Fire TV 4k --- NAS: i3 6100 | 8GB | 15tb | OMV4 | Emby --- TV: Sony 55" XF9005 + LG 47" LM640S | 114x Adalight | Yamaha 683

  • Ja :) hast recht! DSM ist manchmal echt komisch, aber in letzter Zeit eher ein wenig flexibler als früher, glaube ich :). Wobei ich als Linuxanfänger auch immer erst später checke was es braucht .

    Herzlichen Dank nochmal und eine schöne Restwoche.

    Viele Grüße
    Seger

  • Entschuldigt bitte die Laienfrage, aber wäre es möglich das Script unter CoreELEC und SSH zum laufen zu bringen? So könnte ich erst ein wenig mit einer Chinabox und USB HDD rumexperimentieren, bevor ich es auf meinen Server loslasse. Alternativ evtl mit Armbian und einem C2?

  • Unter armbian auf jedenfall. Ob in CE youtube-dl enthalten ist weis ich leider nicht.

    "I don't caretaker"

    SKIN: Embuary - Donate: HIER de Hoibe bestellen, merci :thumbup:

    Devices: Nvidia Shield + Fire TV 4k --- NAS: i3 6100 | 8GB | 15tb | OMV4 | Emby --- TV: Sony 55" XF9005 + LG 47" LM640S | 114x Adalight | Yamaha 683

  • Moin moin,

    ich wollte gerade mal dein Script nutzen/testen, da mir TinyMediaManager immer nur die 720p Varianten herunter lädt, aber bei dir passiert leider das gleiche, ne Ahnung warum?^^

    Egal welcher Trailer wird max. in 720p herunter geladen, wenn ich unterm gleichen Link zu Youtube gehe, wie dein Script ihn nutzt, kann ich problemlos die 1080p Variante herunter laden.

    NAS: Gehäuse: Jonsbo G3, Mainboard: MSI B460M PRO, CPU: Intel Pentium G6400, OS: OMV 6

    Client: NVIDIA Shield Pro 2019

  • Das liegt daran, dass in gemuxten Zustand (Bild + Ton) maximal von 720p von YT direkt als .mp4 bereitgestellt werden.
    Alles darüber muss seperat gesaugt werden. Sprich 1x Tonspur, 1x Video. Und dannach zusammenführen. Den Stiefel hab ich mir nicht angezogen.

    Beispiel:

    "I don't caretaker"

    SKIN: Embuary - Donate: HIER de Hoibe bestellen, merci :thumbup:

    Devices: Nvidia Shield + Fire TV 4k --- NAS: i3 6100 | 8GB | 15tb | OMV4 | Emby --- TV: Sony 55" XF9005 + LG 47" LM640S | 114x Adalight | Yamaha 683

  • Ah okay. Ich hatte es testweise mit dem jdownloader überprüft gehabt und dort erhalte ich folgendes als mögliche Videodownloads:

    Daher dachte ich, du könntest die irgendwie ebenso bewerkstelligen. Aber danke dir für die Rückmeldung.

    NAS: Gehäuse: Jonsbo G3, Mainboard: MSI B460M PRO, CPU: Intel Pentium G6400, OS: OMV 6

    Client: NVIDIA Shield Pro 2019

  • Ich nutze nur das, was youtube-dl zur Verfügung stellt: "-f mp4"

    Heisst nichts anderes, dass er die beste Qualitat für mp4 lädt, welche zur Verfügung steht.

    Kannst es dir ja anpassen:
    https://github.com/rg3/youtube-dl…EADME.md#readme

    Mit "-f bestvideo+bestaudio" sollte es die beste Qualität laden und mergen. Musst aber ffmpeg zB global aufm System verfügbar haben.

    "I don't caretaker"

    SKIN: Embuary - Donate: HIER de Hoibe bestellen, merci :thumbup:

    Devices: Nvidia Shield + Fire TV 4k --- NAS: i3 6100 | 8GB | 15tb | OMV4 | Emby --- TV: Sony 55" XF9005 + LG 47" LM640S | 114x Adalight | Yamaha 683

  • Wird sich noch bis morgen ziehen. Musste ne Festplatte tauschen und bis SnapRAID mitm Wiederherstellen soweit ist dauert es etwas xD

    NAS: Gehäuse: Jonsbo G3, Mainboard: MSI B460M PRO, CPU: Intel Pentium G6400, OS: OMV 6

    Client: NVIDIA Shield Pro 2019

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!