Probleme mit TV-Stick (Hauppauge) & USB-Stick beim Aufnehmen via TVHeadend

  • Hallo zusammen,


    ich nutze meinen Raspberry Pi 4 als Aufnahmegerät mithilfe von TV-Headend.


    Das funktioniert auch soweit, jedoch habe ich das Problem, Aufnahmen vom Raspberry Pi herunterzubekommen: Als Download im Browser ist es sehr langsam, auch eine Samba-Freigabe ist nicht sehr praktisch.


    Deshalb wollte ich es doch mit einem USB-Stick lösen. Leider habe ich festgestellt, dass bei gleichzeitigem Gebrauch von USB-Stick und TV-Stick das Aufnehmen nicht anläuft; es kommt dann die Meldung, "Waiting for Stream", aber es kommt keiner an und die Aufnahme startet nicht. Ich habe das bei zwei Varianten festgestellt: Direktes Aufnehmen auf dem USB-Stick (d.h. der Recording system path wird direkt auf den Mountpunkt des USB-Sticks gestellt (/mnt/usb-test)) - oder verschieben der Datei nach dem Aufnehmen auf den USB-Stick.


    Letzteres habe ich in zwei Varianten versucht.


    1. Wenn der USB-Stick quasi immer gemountet ist, dafür habe ich folgenden Code verwendet:

    Code
    mv %f /mnt/usb-test

    2. Ich habe dann auch gedacht, es könnte daran liegen, dass schon die Tatsache, dass der Stick dauernd gemountet ist, den Fehler verursachen könnte und es deshalb auch wie folgt versucht.

    Code
    sudo mount /dev/sda1 /mnt/usb-test;sudo mv %f /mnt/usb-test;sudo umount /mnt/usb-test

    Auch hiermit habe ich allerdings keinen Erfolg.

    Ich bin kein erfahrener Nutzer, was das Terminal anbelangt. Deshalb könnte es sehr gut sien, dass die Codes so oder so Fehler enthalten, die den Erfolg verhindern. Z.B. bin ich mir gar nicht sicher, ob es von TvHeadend aus reicht, den Befehl mit sudo aufzrufen - klappt das adnn mit den Rechten? Welcher Nutzer "ist" TVHeadend denn eigentlich innerhalb des Raspberry Pis? Root?


    Vielen Dank schon mal, wenn noch Fragen offen sind, meldet euch bitte!

  • sicher das es klappen soll?


    ich habe mittlerweile im Laufe der Jahre 3 WinTV Sticks auf den Müll geworfen.

    1. wurden die immer zu heiss zogen reichlich Strom was nicht jeder USB schaffte, dann waren die Treiber ungenügend ständig Abstürze, ist länger her noch vor der Raspi Zeit (dito mit PC Karten für Slots) hat mich aber kuriert das ich nie wieder was von der Fa. kaufe


    vielleicht wissen ja andere mehr ob die Hard- und Soft-ware heute besser läuft?

    (zur Ehrenrettung von Hauppage, die erst TV Karte ISA oder PCI lief sehr gut als es noch große Blechkisten gab)

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Hi jar,


    danke für die Antwort! Ja, ganz zuverlässig läuft der Stick von Hauppauge (Hauppauge WinTV soloHD DVB-C/-T/-T2 USB Stick ist das) leider nicht, aber ich hatte den Eindruck, dass es ohne USB-Stick ganz zuverlässig klappt. Vielleicht klappt ja eben doch, indem man den USB-Stick eben nur ganz am Ende der Aufnahme zum Rüberschieben mountet und dann wieder entmountet.


    Hättest Du denn eine bessere Empfehlung für einen TV-Stick?


    Viele Grüße

    Mathias

  • Hättest Du denn eine bessere Empfehlung für einen TV-Stick?

    ich habe nur einen funktionierenden TV Stick aus China 20,-€ (RTL2832U R820T2 H.265) für USB

    der DVB-T2 und DVB-C kann. Alle anderen gekauften Sticks konnten kein H.265 ARD, ZDF. H.264 reicht nicht!


    Der nur am win7 i5-5200U funktioniert für freie DVB-T2 Sender mangels CI-Slot, logisch.

    Da in Software dekodiert wird glaube ich kaum das ein PI auch PI4 funktioniert, einfach wegen der Leistungsfähigkeit. :conf::-/

    Ob nun ein PI4 den i5-5200U erreicht weiss ich nicht. Bis jetzt sind alle meine älteren PC Laptops schneller als ein PI3. ;)

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

    Edited 2 times, last by jar ().

  • Für DVB-C aber schon, oder?

    bin nicht sicher, einer liegt hier noch rum der DVB-C kann, ich denke Terratec aber auch am win7 i5-5200U

    saugt aber auch viel am USB und deswegen habe ich den abgezogen, wenn der steckt läuft fast nichts mehr auch über den aktiven HUB, auch der reizt offensichtlich die Datenrate und Strom aus.


    Wenn TV irgendwie läuft kann man kaum noch am PC arbeiten, dann lieber nur schauen oder Fernseher anmachen!

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Okay!


    Also wie gesagt, erst würde ich nochmal mit diesem Equipment weiterarbeiten und zumindest versuchen, das mit dem USB-Stick hinzubekommen. Erst danach überlege ich mal, ob ich es mit einem anderen TV-Stick versuche.


    Deswegen an die "Runde" nochmal die Frage: Stimmen diese Befehle als post-processing-Befehl so theoretisch? Müssten die funktionieren?

    1. Wenn der USB-Stick quasi immer gemountet ist, dafür habe ich folgenden Code verwendet:

    Code
    mv %f /mnt/usb-test

    2. Ich habe dann auch gedacht, es könnte daran liegen, dass schon die Tatsache, dass der Stick dauernd gemountet ist, den Fehler verursachen könnte und es deshalb auch wie folgt versucht.

    Code
    sudo mount /dev/sda1 /mnt/usb-test;sudo mv %f /mnt/usb-test;sudo umount /mnt/usb-test
  • Welcher "User" tvheadend ist kann so herausgefunden werden:


    Code
    sudo ps aux|grep tvheadend
    
    
    root      1300  3.3  1.7 111596 16980 ?        Ssl  15:49   0:04 /usr/local/bin/tvheadend -f -p /run/tvheadend.pid -u root -g root --noacl
    root      8220  0.0  0.0   5376   552 pts/3    S+   15:51   0:00 grep tvheadend

    es ist root bei mir :)


    PS: TVheadend selbst compiliert (von github) ohne x256 codec und ffmpeg nur für streamen ohne umwandeln, was viel power braucht.. usw. und mit --noacl aufgrufen) :)

  • Also ich habe es jetzt mal mit folgendem Code probiert:


    Code
    mv %b /mnt/usb-test/%b

    (auch %f an erster Stelle habe ich ausprobiert ...)


    Zwar gibt es dieses Mal keinen Aufnahmefehler, aber die Datei wird eben auch nicht verschoben.


    -v habe ich auch mal probiert, aber ich wüsste nicht, wo ich das Resultat davon sehen könnte, weil ich diesen Befehl ja nicht direkt im Terminal eingebe.

    Welcher "User" tvheadend ist kann so herausgefunden werden:


    Code
    sudo ps aux|grep tvheadend
    
    
    root      1300  3.3  1.7 111596 16980 ?        Ssl  15:49   0:04 /usr/local/bin/tvheadend -f -p /run/tvheadend.pid -u root -g root --noacl
    root      8220  0.0  0.0   5376   552 pts/3    S+   15:51   0:00 grep tvheadend

    es ist root bei mir :)


    PS: TVheadend selbst compiliert (von github) ohne x256 codec und ffmpeg nur für streamen ohne umwandeln, was viel power braucht.. usw. und mit --noacl aufgrufen) :)

    Ah, das ist ein guter Tipp! Bei mir ist das nämlich hts (1. Zeile) und pi (2. Zeile). Allerdings habe ich den USB-Stick für alle freigegegeben (siehe unten), da dürfte zumindest das veschieben ja eigentlich trotzdem funktionioeren, oder?


    Code
    drwxrwxrwx 1 root root 4096 Jul 11 15:51 usb-test
  • Ja wenn es hts ist, wird in /home/.hts ein Folder eingerichtet.

    Bei mir als root in /root/.hts!.

    Ich hab ein systemd service erstellt mit


    nano /etc/systemd/system/tvheadend.service


    Dort wurde StartExec= (Befehl wie aus obigem 'ps aux' Ausgabe)


    Ich lege keinen wert auf Sicherheit :) :) :)

    Ich hatte auch nie die Gelegenheit tvheadend aus den Quellen mit 'sudo apt install tvheadend' zu installieren, weil es das bei ubuntu-mate 16.10 nicht gibt in den Paketqeullen. Ich kann auch nicht sagen wie es mit einer sudo apt install tvheaden gestartet wird :)

  • Okay!


    Aber das dürfte ja die Wirksamkeit des Befehls (

    Code
    mv %b /mnt/usb-test/%b

    ) nicht mindern, oder? Wie gesagt ist der USB-Stick für alle Nutzer freigegeben.

  • Also mir ist es in linux noch nicht untergekommen das es da ein % gibt.

    Bis jetzt hat alles immer so funktioniert (ist das gleich wie in Windows?)


    mv * /mnt/usb-test/ # kopiere alle Dateien egal welche Endung aber keine Ordner


    mv *.ts /mnt/usb-test/ #kopiere alle Dateien mit *.ts /dort/hin/


    (mit -r werden auch Ordner kopiert.


    *edit* Danke dir hab mein tvheadend auf hts user umgestellt, und kann auf ext2 formatierte SSD schreiben :) ist professioneller wie mit root == alles erlauben !!

  • Code
    Allerdings habe ich den USB-Stick für alle freigegegeben (siehe unten), da dürfte zumindest das veschieben ja eigentlich trotzdem funktionioeren, oder?


    Code
    drwxrwxrwx 1 root root 4096 Jul 11 15:51 usb-test

    Nöö. chmod ist am Mountpoint wirkungslos. Die Rechte werden durch den Mountbefehl bestimmt. Insbes. durch uid=, gid=


    Servus !

    RTFM = Read The Factory Manual, oder so

  • Also die Datei die mit tvheadend bei mir aufgemmonen wird hat


    Code
    -rw-rw-r-- 1 hts      video    2,4M Jul 11 19:36 UEFA EURO 2020 Finale: Italien - England.ts

    diese Datei gehört hts mit der Gruppe video

    nicht mehr root:root

    So langsam kommen wir drauf

  • Hallo zusammen!


    Also, eine Aufnahmedatei, die im "normalen" Verzeichnis aufgenommen wird, gehört auch bei mir hts (Gruppe: video). Ich konnte auch einmal eine Datei direkt auf dem USB-Stick aufnehmen (ob das aber stabil ist, wer weiß), dann gehört die Datei dem Nutzer root (Gruppe: root).


    RTFM : Okay! Aktuell mounte ich den USB-Stick in der Datei fstab über folgende Zeile ein:


    Code
    UUID=[....] /mnt/usb-test ntfs defaults,nofail 0 0

    D.h. es würde dann Sinn machen, zusätzlich die UID und GID noch einzufügen?


    Der Nutzer hts hat die UID 109, und die GID 114, d.h. diese Werte müssten dann ja eigentlich passen ....


    Code
    UUID=[....] /mnt/usb-test ntfs uud=109,gid=114,defaults,nofail 0 0

    Das probiere ich mal aus und berichte dann! Wobei das seltsame ist, dass das direkte Aufnehmen auf dem Stick irgendwie funktioniert. Ich muss nochmal ein wenig herumexperimentieren...