Sundtek Support Forum
Deutsch => Sundtek MediaTV Pro => Treiber => Thema gestartet von: crush89 am März 24, 2017, 12:00:50 Vormittag
-
Hallo,
ich habe eine Synology DS 412+ und betreibe dort 1x Sky VI und 1x MediaTV Pro 3. Gemeinsam laufen sie sehr gut. Ich habe lange TVheadend benutzt und allerdings soll jetzt alles in eine Docker-Umgebung wandern.
Am liebsten würde ich gerne dieses Docker-Image benutzen:
https://hub.docker.com/r/linuxserver/tvheadend/
(https://hub.docker.com/r/linuxserver/tvheadend/)
Dieses Image bietet das beste Verhältnis aus Größe und Funktion.
Allerdings gibt es derzeit keine Treiberunterstützung für Alpine Linux. Wird es dafür bald Unterstützung geben oder gibt es einen Workaround?
Danke
-
Hast Du den Treiber schon mal versucht darauf zu installieren?
Du kannst dich ja mal im Chat melden damit man da mal drüberschaut.
Sofern Alpine Linux überhaupt USB unterstützt sollte man den Treiber darauf schon zum Laufen bekommen. (Voraussetzung allererstes ist einmal USB).
-
Hallo,
ja ich habe bereits versucht den Treiber innerhalb der Docker-Enviroment zu installieren und bekomme die Fehlermeldung das mein System nicht supported wird.
(http://i.imgur.com/Kly4syb.png)
Wegen der USB Unterstützung - ich mal stark davon aus, dass Alpine Linux usb unterstützt, weil ich schon Mehrfall gelesen habe das diese Docker-App mit anderen USB-Stick läuft.
-
Schau mal im Chat vorbei http://chat.sundtek.de
Die Installation sagt soviel wie, der Treiber konnte nicht in /opt/bin und auch nicht nach /tmp kopiert werden und das ein Berechtigungsproblem vorliegen könnte.
-
Hallo,
Ich habe das selbe Problem, und liefere weitere Infos:
Die Installations-Routine check folgende Skripte auf einen bestätigenden Status, und bekommt keinen:
+ /tmp/.sundtek/chk64bit
+ /tmp/.sundtek/chk32bit
+ /tmp/.sundtek/chkppc32
+ /tmp/.sundtek/chkarm64
+ /tmp/.sundtek/chkarmsysv
+ /tmp/.sundtek/chkarmoabi
+ /tmp/.sundtek/chkmips
+ /tmp/.sundtek/chkmipsel
+ /tmp/.sundtek/chkppc64
+ /tmp/.sundtek/chkmipsel2
+ /tmp/.sundtek/chkopenwrtmipsr2 0.9.33
+ /tmp/.sundtek/chkopenwrtmipsr2
+ /tmp/.sundtek/chkmipselbcm
+ /tmp/.sundtek/chksh4
+ /tmp/.sundtek/chkopenwrtarm4
+ /tmp/.sundtek/chkopenwrtppc32
+ /tmp/.sundtek/chkddwrtmips
+ /tmp/.sundtek/chkddwrtmips2
Infolge dessen, wird der Standard-Fehlertext angezeigt welcher unter Anderem auch darauf hinweist, dass eventuell Schreibrechte nicht korrekt gesetzt sein könnten. Das ist aber nicht die Ursache des Problems. Es fehlt schlicht die Unterstützung für das Alpine-System.
Nachstellen lässt es sich sehr einfach wie folgt...
Alpine Docker-Container mit Shell starten:
docker run -it alpine sh
Im Container den Treiber-Installer runterladen und ausführen:
wget http://sundtek.de/media/sundtek_netinst.sh
chmod +x sundtek_netinst.sh
./sundtek_netinst.sh
Erweiterte Debug-Ausgabe:
sh -x ./sundtek_netinst.sh
Eine Alpine-Unterstützung wäre ein sehr großer Mehrwert für den Sundtek-Treiber. Eventuell lässt sich ja der Installer entsprechend anpassen.
Gruß,
die coole Muh
-
Hallo,
Ich stehe genau an derselben Stelle wie coolcow. Die Installationsroutine sagt, dass Alpine ein nicht unterstütztes System ist. Wie können wir den Sundtek Stick unter Alpine Linux zum Laufen bringen?
Danke!
-
Wir können uns das mit Alpine Linux gegen Wochenende ansehen, zur Zeit arbeiten wir noch am nächsten Streamingserver update.
-
Hallo,
gibt es schon einen weg den Sundtek Treiber in einem Alpine Linux Docker Image zu installieren?
Grüße
-
Wie hoch stehen die Chancen, dass sich hier noch was bewegt?
-
Hallo,
sobald etwas mehr Zeit vorhanden ist. Aktuell steht der Streamingserver mit einem eigenen Player auf der Liste.
-
Hallo,
cool das das Thema noch andere beschäftigt.
Gibt es da schon eine Lösung?
-
Hallo,
ich würde mich auch sehr für die Docker-Unterstützung des Treibers interessieren. Ist schon bekannt wann es voraussichtlich soweit ist?
Danke!
-
Habt ihr euch dieses Projekt schon mal angesehen:
https://hub.docker.com/r/tristanteu/tvheadend-sundtek-docker/
-
Hallo,
Danke für den Hinweis. Das Docker-Image hat zwar einen Fehler sodass der Build fehlschlägt, das ließ sich aber beheben.
-
Wir haben mittlerweile eine MUSL Version vom Treiber. Der Treiber wurde mit alpine Linux auf einem x86-64bit System getestet.
Es wird kein privilegierter Modus benötigt, der Treiber läuft im Docker System.
Der Tuner muss angeschlossen sein bevor das Docker gestartet wird.
Zusätzlich zu den DVB Nodes muss auch /dev/bus/usb angegeben werden da der Treiber dort andockt und /dev/dvb selber virtuell erstellt:
--device=/dev/bus/usb
docker create --name alpinelinux
--net=bridge
-p 9981:9981
-p 9982:9982
--device=/dev/dvb
--device=/dev/dri
--device=/dev/bus/usb
-t alpine /bin/sh
Das Docker Image linuxserver/tvheadend stürzt bei uns aktuell ab (auch ohne Treiber), das Alpine Docker image ist in Ordnung.
tvh:mtimer[24854]: segfault at 7fcb6db15ea0 ip 00005652971896d7 sp 00007fcb703524a0 error 6 in tvheadend3[565297027000+3d5000]
https://github.com/linuxserver/docker-tvheadend/issues/101
-
Hier noch ein Beispiel Startskript:
#!/bin/sh
USBDEV=$(lsusb | grep 2659: -c)
if [ "$USBDEV" != "0" ]; then
if [ ! -e /sundtek ]; then
mkdir /sundtek
cd /sundtek
wget http://sundtek.de/media/sundtek_netinst.sh
sh sundtek_netinst.sh -service -easyvdr
fi;
if [ -e /opt/bin/mediasrv ]; then
cd /opt/bin
# this will continue once all the devices are initialized
./mediasrv -d --wait-for-devices
fi;
export LD_PRELOAD=/opt/lib/libmediaclient.so
fi
/usr/bin/tvheadend -c /config -C
-
Hallo,
könnt ihr eine Anleitung posten wie man "from Scratch" das Docker Image baut? Aktuell nutze ich ein Image bei dem die Tuner nur innerhalb des Containers genutzt werden können wenn der Container mit Root-Rechten läuft. Zusätzlich ist auf dem Host der Treiber installiert.
So wie ich das verstehe ist der Treiber im Docker-Image notwendig aber nicht auf dem Host. Das wichtigste wäre mir, dass der Container keine Root-Rechte mehr benötigt um TVHeadend laufen zu lassen. Ein weiterer Vorteil wäre das äußerst schlanke System wenn man Alpine als Basis nutzt.
Vielen Dank für eure Hilfe
PS: Ich nutze derzeit nur einen Tuner, habe aber bereits drei weitere hier liegen. Da ich mit den 4 Tunern alle Sat-Blöcke (HL,HH,VL und VH) abdecke sollte ich doch möglich sein mit mehreren Teilnehmern TV schauen zu können ohne dass es Einschränkungen gibt? Oder gibt es bei den Tunern hardwaretechnische Limitierungen? Ein Multischalter mit 4 Eingängen erlaub es ja auch z.B. 16 Teilnehmer zu versorgen.
EDIT:
Ich habe nun versucht die Treiber im den Alpine Container zu installieren. Es kommt die Meldung dass das System nicht unterstützt wird. Wie muss vorgegangen werden damit der Treiber installiert werden kann?
-
Hallo,
ich kann das reproduzieren: Wenn ich einen Container mit dem Befehl aus Antwort #14 erzuge und darin sundtek_netinst.sh ausführe lautet die Meldung, das System würde nicht unterstützt. :(
So wie ich #14 verstanden habe, sollte das doch inzwischen funktionieren? Woran kanns liegen?
Danke
-
Hi,
der Treiber ist noch nicht aktualisiert. Wir arbeiten noch am nächsten Update (das Treiberpaket enthält verschiedene Treiber für verschiedene Geräte).
Ich denke gegen Anfang der nächsten Woche sollte es dann soweit sein.
-
Hallo,
wollte mich nach dem Stand der Dinge erkundigen. Gibt es den neuen Treiber schon per netinstall? Oder wie kriege ich mit, wenn es soweit ist?
Danke und Grüße
-
Hallo,
ich habe es nun mit einem Docker-Container auf debian-Basis versucht, wo sich der Treiber installieren lässt. Nur mein tvheadend findet das Gerät nicht. Ich poste mal ein paar Kommandozeilenaufrufe, die nach meiner Google-Recherche hilfreich sein könnten:
root@e96d7df13b60:/# /opt/bin/mediaclient -e
**** List of Media Hardware Devices ****
device 0: [MediaTV Digital Home III (EU)] DVB-C, DVB-T, DVB-T2, REMOTE-CONTROL
[INFO]:
STATUS: STANDBY
[BUS]:
ID: 2-1
[SERIAL]:
ID: U140630145006
[DVB-C,DVB-T,DVB-T2]:
FRONTEND: /dev/dvb/adapter0/frontend0
DVR: /dev/dvb/adapter0/dvr0
DMX: /dev/dvb/adapter0/demux0
[REMOTECONTROL]:
INPUT0: /dev/mediainput0
root@e96d7df13b60:/# /opt/bin/mediaclient --lc
**** List of Media Clients ****
/dev/dvb/adapter0/frontend0:
No client connected
/dev/dvb/adapter0/dvr0:
No client connected
/dev/dvb/adapter0/demux0:
No client connected
/dev/mediainput0:
No client connected
root@e96d7df13b60:/# cat /etc/ld.so.preload
/opt/lib/libmediaclient.so
root@e96d7df13b60:/# ldconfig -p | grep media
libmediaclient.so (libc6,x86-64) => /opt/lib/libmediaclient.so
root@e96d7df13b60:/# file /usr/bin/tvheadend
/usr/bin/tvheadend: ELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=068eb6cb386ff91c9a9136c6d7db02e5f92fe679, stripped
root@e96d7df13b60:/# file /opt/lib/libmediaclient.so
/opt/lib/libmediaclient.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, stripped
root@e96d7df13b60:/#
Was kann ich tun, damit tvheadend das Gerät findet?
Danke und Grüße
-
I would be interested to!
Any beta version?
-
Hallo,
gibt es irgendwelche Updates zu dem Thema?
Danke
-
Ich habe versucht ein älteres tvheadend (v3.4) selbst zu kompilieren (im Debian Container). Wenn man so will gibt es damit einen kleinen Fortschritt: tvheadend zeigt beim Starten die Meldung:
dvb: /dev/dvb/adapter0/frontend0: unable to open (err=Die Operation ist nicht erlaubt)
tvheadend als root laufen lassen löst das Problem nicht, an den Rechten sollte es also nicht liegen. Was kommt noch in Frage?
Danke und Grüße
-
nur zur Sicherheit:
Hast du /dev/dvb/adapter0/frontend0 als device im container eingehängt und zum test auf das device schreib und leserechte vergeben
chmod +rw /dev/dvb/adapter0/frontend0
Hatte das Problem mal bei der Soundkarte
-
Hi Timbo2k,
danke für deinen Hinweis.
Lese und Schreibrechte auf frontend0 sind im Container gesetzt, daran sollte es nicht gelegen haben. Aber vielleicht an den im Container verfügbaren Devices:
Erzeuge ich den Container wie in Antwort #14 mit
--device=/dev/dvb
--device=/dev/dri
--device=/dev/bus/usb
beschwert sich docker beim Starten des Containers mit
Error response from daemon: linux runtime spec devices: error gathering device information while adding custom device "/dev/dvb": not a device node
Was meines Erachtens logisch ist, weil es auf dem Host keine DVB-Devices gibt, das Verzeichnis ist leer. Das DVB-Device wird im Container vom Sundtek Treiber erzeugt. Oder liegt hier mein Fehler?
-
Hi liebe Forumsteilnehmer,
läuft bei euch der Treiber im Container, samt Zugriff auf das dort eingerichtete DVB-Device?
Danke für Rückmeldungen
-
Nein, hab es leider nicht geschafft.
-
Habs gerade wieder mal versucht.
Ich bin so weit das ich über mediaclient -e folgendes bekomme
**** List of Media Hardware Devices ****
device 0: [ SkyTV Ultimate 5] DVB-S/S2, ANALOG-TV, REMOTE-CONTROL, OSS-AUDIO
[INFO]:
STATUS: STANDBY
[BUS]:
ID: 1-3
[SERIAL]:
ID: U151204182717
[DVB-S/S2]:
FESTATUS: STANDBY
LNBVOLTAGE: DISABLED
LNBSUPPLY: ACADAPTER
LNBSTATUS: OK
FRONTEND: /dev/dvb/adapter0/frontend0
DVR: /dev/dvb/adapter0/dvr0
DMX: /dev/dvb/adapter0/demux0
[ANALOG-TV]:
VIDEO0: /dev/video0
VBI0: /dev/vbi0
[REMOTECONTROL]:
INPUT0: /dev/mediainput0
[OSS]:
OSS0: /dev/dsp0
Aber immer wenn ich tvheadend starte, sogar als root bekomme ich folgenden Fehler
"tvheadend -u root -g root -c /config"
....
2019-04-13 16:59:11.848 [ ERROR] linuxdvb: unable to open /dev/dvb/adapter0/frontend0
.....
Die Rechte sehen dafür wie folgt aus
crwxrwxrwx 1 root root 212, 0 Apr 13 16:58 /dev/dvb/adapter0/frontend0
Hat wer eine Idee?
-
Docker Support ist im neuen Installer integriert
Auf dem Host:
cd /tmp
wget http://sundtek.de/media/sundtek_netinst_testing.sh
sh ./sundtek_netinst_testing.sh -createnodes
Im Docker System:
cd /tmp
wget http://sundtek.de/media/sundtek_netinst_testing.sh
sh ./sundtek_netinst_testing.sh -docker -use-custom-path /config
Das Docker Setup:
/config muss mit noexec gemounted werden (der Befehl mount im Docker darf kein noexec neben /config anzeigen)
Das Docker Image muss mit der Option -device /dev/bus/usb und -device /dev/dvb gestartet werden (zuvor muss aber -createnodes auf dem Host ausgeführt werden).
createnodes erstellt nur nodes in /dev/dvb auf dem Host (und macht dort sonst nichts).
Docker unterstützt kein Hotplugging, und die DVB Nodes müssen halt vorher vorhanden sein damit Docker DVB im Container zugelassen werden.
Das -docker Flag wird tvheadend in tvheadend.bin umbenennen und ein "tvheadend" Wrapper Skript erstellen indem der Treiber gestartet wird bevor tvheadend gestartet wird.
Docker Systeme sind halt allesamt keine Standard Linux Systeme und man muss wissen was man dort macht bzw. will.
Wir werden den regulären Installer nach einiger Zeit mit dem testing Skript ersetzen, es wurden einfach zu viele Dinge im Script geändert um es übersichtlicher zu gestalten.
-
Bevor ich es teste. Läuft das nun unter alpine?
-
Es kommt drauf an welches System du hast, getestet wurde erst mal ein x86-64 docker (alpine-like, auch musl basierend).
Der User bei dem ich es implementiert habe gerade selber eine Anleitung im Forum online gestellt:
https://support.sundtek.com/index.php?topic=2394.msg18885;boardseen#new
-
Es gab heute noch ein Skriptupdate beim Installer für das Docker Image