TV Headend mit NAS verknüpfen

  • Liebe Community,

    folgende Situation: Wir haben seit kurzem ein NAS auf FreeNAS-Basis eingerichtet. Für die TV-Aufnahmen und einen entsprechenden Export inkl. Weiterverarbeitung habe ich bislang immer Tvheadend bei Kodi benutzt, d.h. genauer: bei Kodi auf einem Libreelec-Betriebsystem auf einem Raspberry Pi 4B und als Verbindung zum Kabelanschluss verwenden wir einen TV-Stick von HAUPPAUGE.

    Nun läuft es aktuell so ab, dass NAS und das TV Headend absolut getrennt sind. D.h. ich mache diverse Aufnahmen, die auf einem angeschlosssenenen USB-Stick gespeichert werden. Wenn die Aufnahmen beendet sind, gehe ich mit dem USB-Stick zu einem Computer, ziehe mir alle Dateien rüber und beginne sie mit einer Software (VidCoder, funktioniert auf Handbrake-Basis) in MP4-Dateien zu verwandeln (was sehr viel Zeit und Prozesserkapazität frist). Ist das beendet, verschiebe ich die fertigen Filme ins NAS, damit sie von überall und auch für Plex erreichbar sind.

    Gerne würde ich einige dieser Schritte vereinfachen, indem ich TV Headend mit dem NAS verbinde. Konkret schwebt mir u.a. vor, die Aufnahmen automatisch auf einen Ordner auf das NAS zu übertragen.

    Nun habe ich erst einmal folgendes versucht:


    1. in den Berechtigungen beim NAS allen Netzwerkteilnehmern ("everyone") Schreibrechte für einen bestimmten Ordner im NAS gegeben (also dass man dort zwar nichts löschen kann, aber eben neue Dateien erstellen).

    2. diesen Ordner via SAMBA freigegeben.

    3. den Netzwerkpfad ("\\192.168.X.X\Medien\encode") als Zieldestination für ein neues Aufnahmeprofil angegeben.

    Bei einer Testaufnahme ist aber nichts passiert, d.h. die Aufnahme hat gar nicht gestartet, wohl weil der Pfad nicht erreichbar ist.

    Hier wurde ein ähnliches Problem beschrieben, allerdings bei einem anderen Betriebssystem: Aufnahme auf SMB-Freigabe

    Ich vermute einmal, dass ich da nochmal alle Details checken muss, würde aber prinzipiell den Zugriff auch gerne über eine konkrete Berechtigung mit Nutzernamen regeln. Drei Fragen für den Anfang, vielleicht werde ich im Verlauf der nächsten Tage etwas konkreter:

    1) Habt ihr irgendwelche generellen Einwände, müsste das so funktionieren mit der SAMBA-Freigabe?

    2) Stimmt die Schreibversion des Pfads mit Backslashs? Oder sollte da ein einfacher Schrägstrich "/" eingesetzt werden?

    3) Wie kann ich bei TV-Headend Nutzernmane und Passwort hinterlegen, sodass ich nicht anonymisiert auf das NAS zugreifen muss? Muss ich, wie im bereits verlinkten Thread beschrieben, in "fbstab" die Zugangsdaten irgendwo an die Netzwerkadresse anhängen? ("//192.168.99.1/records /srv/records cifs defaults,username=username,password=password 0 0").


    Viele Grüße und vielen Dank schon mal

    Mathias

  • Hier ist eine Anleitung wie du Samba Shares unter LE beim start automatisch mounten kannst:
    https://libreelec.wiki/how_to/mount_network_share

    Rechte müssen natürlich überall passend gesetzt sein.

    Eine andere Frage für mich ist ob du TVH nicht auf dem FreeNAS Server laufen lassen kannst.
    So müsste der Pi das nicht machen und die Netzwerkverbindung als Fehlerquelle fiele raus.

    Natürlich weiss ich nicht wie es unter BSD mit der Treiberunterstützung für den TV Stick etc aussieht.

  • Hi darkside40,

    vielen Dank für dem Link - der wird mir bestimmt helfen, wenn ich es zum Wochenende hin noch einmal probiere - das ist ja sozusagen genau mein Anwendungsfall und das Dokument hatte ich vorher nicht entdeckt ;)

    Zu deinem Vorschlag: Ja, das klingt ansich vernünftig, aber die rein physische Situation spricht leider dagegen, denn der TV-Kabelanschluss ist an einem ganz anderen Ort, als das NAS. Sonst wäre das wirklich eine Überlegung Wert ...

    Danke schon mal, vielleicht habe ich am Wochenende noch einmal Rückfragen!

    Viele Grüße

    matclou

  • Hallo zusammen,

    hier ein Update verbunden mit einer weiteren Frage: Dem Samba-Share habe ich jetzt bei Libreelec gemountet, das hat gut funktioniert! Und es klappt eigentlich auch ganz gut, aufzunehmen und die Sachen direkt auf dem NAS zu speichern.

    Allerdings frage ich mich, ob bei einem kurzen Wackler im WLAN oder Internetproblemen die Aufnahme nicht doch zu häufig abgebrochen würde, wenn es über mehrere Stunden geht. Deswegen habe ich überlegt, zusätzlich noch eine Option zu belassen, bei der die Aufnahmen zunächst lokal auf der SD-Karte bzw. einem angeschlossenen USB-Stich gespeichert werden.

    Im Anschluss an die Übertragung soll die Datei dann aber in den "gemounteten" Ordner verschoben werden, sodass es dann auf dem NAS liegt. Ich habe erst daran gedacht, das mit Tools des NAS-Betriebssystems zu lösen, aber prinzipiell gibt es bei LibreElec ja auch Crontabs, mit dessen Hilfe Skripte automatisch zu bestimmten Zeitpunkten ausgeführt werden.

    Nun kenne ich mich mit Shellskripten nicht wirklich gut aus, daher die Frage: Wäre es möglich, damit ein Skript zu schreiben, bei dem zunächst geprüft wird: Wird gerade etwas aufgenommen? Und dass dann (wenn es nicht zutrifft) den gesamten Verzeichnisinhalt in den gemounteten Ordner kopiert und anschließend den lokalen Aufnahmeordner leert?

    Oder haltet ihr die direkte Speicherung auf dem NAS für gar nicht so anfällig, wie ich denke? Bzw. würdet ihr empfehlen es umgekehrt zu machen, und das NAS die Dateien holen zu lassen?

  • Hallo nepo,

    vielen Dank für den Tipp, das wäre ja wirklich viel einfacher!

    Allerdings habe ich ein Problem, das Übertragen am Ende funktioniert leider noch nicht:

    Code
    2020-03-08 14:25:32.994 [   INFO]:dvr: "Testaufnahme " on "3sat HD": End of program: Completed OK
    2020-03-08 14:25:33.014 [  ERROR]:spawn: BusyBox v1.31.0 (2019-11-23 02:17:29 CET) multi-call binary.
    2020-03-08 14:25:33.014 [  ERROR]:spawn: Usage: mv [-fin] SOURCE DEST
    2020-03-08 14:25:33.014 [  ERROR]:spawn: or: mv [-fin] SOURCE... DIRECTORY
    2020-03-08 14:25:33.014 [  ERROR]:spawn: Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY
    2020-03-08 14:25:33.015 [  ERROR]:spawn: 	-f	Don't prompt before overwriting
    2020-03-08 14:25:33.015 [  ERROR]:spawn: 	-i	Interactive, prompt before overwrite
    2020-03-08 14:25:33.015 [  ERROR]:spawn: 	-n	Don't overwrite an existing file

    Als Kommando zur Nachbearbeitung hatte ich eingegeben:

    Code
    /bin/sh -c /bin/mv /storage/recordings/* /storage/aufnahmen/


    Woran könnte denn dieser Fehler liegen?

  • Habe das mal probiert!

    Naja, also den Ordner recordings gibt es im Unterordner storage. Leider kommt aber trotzdem eine Fehlermeldung, nur eine andere:

    Code
    2020-03-08 14:57:23.788 [   INFO]:dvr: "" on "3sat HD": End of program: Completed OK
    2020-03-08 14:57:23.833 [  ERROR]:spawn: mv: can't rename '/storage/recordings/*': No such file or directory

    Offenbar habe ich also einen Fehler beim Quellverzeichnis - das * vielleicht?

  • Probier mal:


    Zitat

    /bin/mv "%f" /storage/aufnahmen/

    /bin/sh -> triggert busybox - eine Minimal Shell mit einem minimal mv ... das kann - glaub ich - nur umbenennen, aber nicht über Festplattengrenzen hinweg kopieren
    * Variablen kannst du nur mit einer Shell verwenden, deshalb wird im den Beispiel dieses "/bin/sh -c" verwendet ... die gehen aber davon aus, dass /bin/sh auf ne richtige Shell wie bash linkt.
    Wenn du ne Shell brauchst, starte ne "/bin/bash -c ....."

    Generell würde ich nie alle Dateien mit einem "*" wegkopieren, kann ja sein, dass gerade 2 Dateien gleichzeitig aufgenommen werden. (also z.B. 2 Folgen der gleichen Serie nacheinander im Programm und er soll beiden Folgen aufnehmen, dann überlappen sich die Aufnahmen um 10min Überhang. Und kopierst ihm dann die Datei weg, worin er gerade die 2te Folge aufnehmen soll/will)

  • Hallo zusammen,

    monarcs Lösung hat funktioniert, vielen Dank! Und ich glaube es ist wirklich besser, nur jeweils eine Datei zu verschieben. Deshalb habe ich SkyBirds eventuelle Lösung mal übersprungen.

    Vielen Dank für die Hilfe!

  • Hallo zusammen,

    das Verschieben klappt wie gesagt, nun hatte ich aber gestern Probleme mit dem Netzwerk-Mount: und zwar wurder Mount inaktiv und nach einer Aufnahme wurde die Datei nicht auf das NAS sondern in den internen Ordner "aufnahmen" verschoben, der halt normalerweise auf das NAS verweist.

    Ich hatte das Problem dann via Putty erkannt (Bei der Statusanzeige zum Netzwerkmount stand "Active: inactive (dead)"), und erst über einen "Neustart" des Mounts konnte ich das Problem lösen.

    Weiß jemand von euch, woran das liegen könnte, dass der Mount inaktiv geworden ist?

    Wenn die Verbindung dahin nicht zuverlässig steht, wäre es natürlich schon problematisch, die Dateien immer automatisiert zu verschieben.

    Viele Grüße

    matclou

    EDIT: Oder wäre es eventuell möglich, beim Nachbearbeitungs-Kommando auch den Network-Mount noch einmal standardmäßig neuzustarten, um sicherzugehen, dass die Verbindung steht?

Jetzt mitmachen!

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