SATIP-Plugin 2.5.0 - 2.5.1

  • Ich habe mal alle Änderungen der letzten 4 Jahre im GIT zu einer neuen Version 2.5.0 zusammen gefasst.

    Die wichtigsten Änderungen:

    • etliche Optimierungen und Fehlerkorrekturen (die bereits bei den meisten vermutlich bereits schon länger laufen)
    • RTSP connection wird beendet wenn sie nicht benötigt wird
      (kann durch den neuen Commandline Switch -N bzw --nodisconnect verhindert werden um das alte Verhalten wieder herzustellen und die SATIP-Connection dauerhaft zu halten)
    • Redesign des CI-Handling der OctopusNet (vermutlich defekt seit der Firmware 2.x) - damit können pro CI mehrere Sender auf einem Transponder empfangen werden
    • detectsatip.py sucht jetzt nicht nur die erste sondern alle lokalen Netzwerkschnittstellen nach SATIP-Servern ab

    GIT: https://github.com/FireFlyVDR/vdr-plugin-satip/tags

    Happy compiling
    FireFly

  • Im git sind zwei Updates:

    • detect OctopusNet with newer firmware (octonet-pro)
      nur relevant wenn man das Auto-Discover nutzt und das CI der OctopusNet automatisch erkannt werden soll
    • replace outdated tinyXML with its successor tinyXML2
      tinyXML(-1) wird seit etlichen Jahren nicht mehr gepflegt und jetzt auch langsam aus Distributionen rausgeworfen.
      Bitte auch in Makefiles (z.B. plugins.mk) falls vorhanden die Variable SATIP_USE_TINYXML in SATIP_USE_TINYXML2 ändern!
  • Ich hätte da mal ein Problem: mit der Version 2.5.0.2 in MLD funktioniert mein CI nicht. In der Version 2.2.5 auf dem alten yavdr kann ich auswählen, welche Verschlüsselung verwendet wird ( Alphacrypt 4A20), diese Einstellung fehlt mir in der neuen Version. Kann man das per Parameter übergeben?

    Grüße und Dank

    VDR1: Asus q1900 Pro M, 2GB, Cine2 Dual DVB S2,Atric USB, yaVDR 0.6 stable, Gehäuse Modushop CD21
    VDR2: RaspBerry Pi4 mit MLD 6.5
    Ausgemustert: VDR: Lintec Senior Gehäuse,Technotrend 1.6, Siemens D1215 Mainboard mit Celeron 1000,Pabst Lüfter, EasyVDR 0.5, KäptnKoma Display 260x64,Schäfer Front (ausgemustert)

  • Kann man das per Parameter übergeben?

    Ja, ich zitiere mal das README:

    Code
    If you want to use the CI slot(s) of the OctopusNet you need to define
    the CA IDs supported by each slot with the "--caids" parameter. Multiple
    CA IDs per slot can be given separated by comma, multiple slots are
    separated by semicolon:
    --caids=<CAM1_ID1>[,<CAM1_ID2,...][;<CAM2_ID1>[,<CAM2_ID2>,...];....]
    
    Example for CA ID 0x1000 in slot 1 and 0x2000 and 0x2020 in slot 2:
    --caids=0x1000;0x2000,0x2020
    Additionally in the plugin's settings you need enable the "Use CI extension" and
    define the VDR device(s) the CI slot(s)s will be attached to.

    Das wäre dann in Deinem Fall --caids=0x4a20 (bzw. wenn die Karte im zweiten Slot steckt: --caids=0x0;0x4a20) und gehst nach einen VDR-Neustart in die Einstellungen des Plugins, setzt "Aktiviere CI Erweiterung" auf Ja und wählst welchem VDR Device das CI zugewiesen werden soll - vorzugsweise eine höhere Device-Nummer damit VDR mit Aufnmahmen von unverschlüsselten Sender nicht das Device mit dem CI belegt.

  • Danke für die Info, habe gestern sogar das Readme gelesen, aber das war wahrscheinlich ein Anderes.....

    VDR1: Asus q1900 Pro M, 2GB, Cine2 Dual DVB S2,Atric USB, yaVDR 0.6 stable, Gehäuse Modushop CD21
    VDR2: RaspBerry Pi4 mit MLD 6.5
    Ausgemustert: VDR: Lintec Senior Gehäuse,Technotrend 1.6, Siemens D1215 Mainboard mit Celeron 1000,Pabst Lüfter, EasyVDR 0.5, KäptnKoma Display 260x64,Schäfer Front (ausgemustert)

  • Hmmm, das CI wird jetzt anscheinend erkannt (kein Meldung mehr "Kanal nicht verfügbar"), aber ich habe weder Bild noch Ton.

    VDR1: Asus q1900 Pro M, 2GB, Cine2 Dual DVB S2,Atric USB, yaVDR 0.6 stable, Gehäuse Modushop CD21
    VDR2: RaspBerry Pi4 mit MLD 6.5
    Ausgemustert: VDR: Lintec Senior Gehäuse,Technotrend 1.6, Siemens D1215 Mainboard mit Celeron 1000,Pabst Lüfter, EasyVDR 0.5, KäptnKoma Display 260x64,Schäfer Front (ausgemustert)

  • Ist im Slot 1, auf dem anderen VDR funktioniert es auch.

    VDR1: Asus q1900 Pro M, 2GB, Cine2 Dual DVB S2,Atric USB, yaVDR 0.6 stable, Gehäuse Modushop CD21
    VDR2: RaspBerry Pi4 mit MLD 6.5
    Ausgemustert: VDR: Lintec Senior Gehäuse,Technotrend 1.6, Siemens D1215 Mainboard mit Celeron 1000,Pabst Lüfter, EasyVDR 0.5, KäptnKoma Display 260x64,Schäfer Front (ausgemustert)

  • Ja, das weiß ich. Anderer VDR war ausgeschaltet. Ich werde morgen früh (Frau will fernsehen) nochmal abschalten, in der Octopus das Cam neu starten und dann gucken

    VDR1: Asus q1900 Pro M, 2GB, Cine2 Dual DVB S2,Atric USB, yaVDR 0.6 stable, Gehäuse Modushop CD21
    VDR2: RaspBerry Pi4 mit MLD 6.5
    Ausgemustert: VDR: Lintec Senior Gehäuse,Technotrend 1.6, Siemens D1215 Mainboard mit Celeron 1000,Pabst Lüfter, EasyVDR 0.5, KäptnKoma Display 260x64,Schäfer Front (ausgemustert)

  • Es funktioniert! Ich musste meine Karte neu aktivieren, ging auch auf VDR1 nicht mehr.

    Danke

    Jetzt hab ich nur noch das Problem, dass ich nur zwei Devices auf dem mld bekomme, obwohl ich vier eingestellt habe.

    VDR1: Asus q1900 Pro M, 2GB, Cine2 Dual DVB S2,Atric USB, yaVDR 0.6 stable, Gehäuse Modushop CD21
    VDR2: RaspBerry Pi4 mit MLD 6.5
    Ausgemustert: VDR: Lintec Senior Gehäuse,Technotrend 1.6, Siemens D1215 Mainboard mit Celeron 1000,Pabst Lüfter, EasyVDR 0.5, KäptnKoma Display 260x64,Schäfer Front (ausgemustert)

  • Hab mal nachgesehen, bei mir ist in der satip.conf alles auskommentiert. In der MLD kann man die Anzahl der Devices einstellen, was meinem Verständnis nach die Anzahl der gleichzeitigen Transponder von der Octopus.Net sind. Vll. wird ja die Änderung auf 4 nicht übernommen, weswegen ich nur 2 gleichzeitige Streams von der Octopus bekomme. Die ONet zeigt ja an, welche Tuner von welchem Gerät belegt sind. Ich habe auch auf dem yaVDR System noch nie mehr als 2 gleichzeitige SATIP Streams bekommen. Da übernehmen dann die zusätzlich vorhandenen DVB Karten. Ziel ist jedoch ein reines SatIP System, um weg von den Karten zu kommen. Möglicherweise durchschaue ich das Ganze aber auch nicht.

    VDR1: Asus q1900 Pro M, 2GB, Cine2 Dual DVB S2,Atric USB, yaVDR 0.6 stable, Gehäuse Modushop CD21
    VDR2: RaspBerry Pi4 mit MLD 6.5
    Ausgemustert: VDR: Lintec Senior Gehäuse,Technotrend 1.6, Siemens D1215 Mainboard mit Celeron 1000,Pabst Lüfter, EasyVDR 0.5, KäptnKoma Display 260x64,Schäfer Front (ausgemustert)

  • Mit -d kann man die Anzahl der DVB-Devices angeben, die der VDR sieht (insofern stimmt das indirekt mit der Anzahl der gleichzeitigen Transponder überein). So viele Devices sollten auch im SATIP-Plugin für die Zuordnung der CAMs sichtbar sein.
    Wieviele Streams das SATIP-Plugin von der Octopusnet gleichzeitig aufmachen kann (was auch wieder der Anzahl gleichzeitiger Transponder enspricht) wird mit -s angegeben (oder wird dynamisch via Suche im lokalen Netz ermittelt wenn keine -s angegeben ist), z.B. DVBS2-6 heißt 6 Devices von Typ DVBS2. Details zur Syntax siehe Readme.
    Du kannst ja mal vdr --showargs aufrufen, dann werden alle Parameter ausgegeben mit denen VDR startet (richtiges Config-Verzeichnis vorausgesetzt, MLD kenne ich nicht).

    Edit: Aber am besten machst Du dafür einen neuen Thread auf, damit auch von MLD eher drauf geschaut wird

  • Ich habs geschafft. Der Parameter -d 4 gibt mir alle 4 Tuner der Octopus, habe gerade 8 simultane Aufnahmen auf verschiedenen Transpondern gemacht, dabei waren dann alle Tuner des Octopus belegt.
    Der Pi 4, auf dem das ganze läuft, ist dabei nicht in die Knie gegangen.
    Ich kann auch bestätigen, dass man auch mehrere Kanäle gleichzeitig entschlüsseln kann.

    VDR1: Asus q1900 Pro M, 2GB, Cine2 Dual DVB S2,Atric USB, yaVDR 0.6 stable, Gehäuse Modushop CD21
    VDR2: RaspBerry Pi4 mit MLD 6.5
    Ausgemustert: VDR: Lintec Senior Gehäuse,Technotrend 1.6, Siemens D1215 Mainboard mit Celeron 1000,Pabst Lüfter, EasyVDR 0.5, KäptnKoma Display 260x64,Schäfer Front (ausgemustert)

  • Hallo FireFly ,

    in der letzten plugin-Version von Wirbel konnte ich im setup-Menü noch für zwei CI/CAM direkt im OSD verschiedene Verschlüsselungen auswählen, z.B. "0600-06FF: Irdeto". Der Eintrag in der setup.conf lautete dann satip.CICAM = 6 6
    Nachdem ich Deine Version installiert habe, funktionieren die verschlüsselten Sender nicht mehr. Der o.g. Eintrag scheint nicht mehr berücksichtigt zu werden. Die Menüpunkte haben nun auch eine andere Bedeutung, denn es geht nicht mehr darum, Verschlüsselungsmethoden für separate CI/CAMs zu konfigurieren, sondern nummernmäßige Zuweisungen von vdr devices zu CI/CAMs in einer Range von 1 bis 4 vorzunehmen. Mir erscheint das ganze doch etwas zu sehr Octopus-spezifisch zu sein. Aus meiner Sicht ist das ein Rückschritt. Statt das Verschlüsselungsverfahren bequem im setup-Menü konfigurieren zu können, muss der User das jetzt nicht nur manuell konfigurieren, sondern dazu auch noch wissen, welches Verschlüsselungsverfahren welche hexadezimalen CA-IDs hat. Und offenbar werden da ja von unterschiedlichen Sendern auch unterschiedliche CA-IDs aus der Range verwandt. Muss man jetzt jede einzelne CA-ID kommagetrennt vorgeben, oder ist es möglich, auch eine Range von-bis anzugeben? Sonst wird das ja eine ellenlange Zeile mit über 100 Einträgen.

    VDR1: Odroid N2+ mit CoreELEC und Ubuntu in chroot, 2x WinTV DualHD, Sandisk 2TB SSD

    VDR2: Tanix TX3 mit VDR*ELEC, WinTV DualHD, 500GB SSD

  • Mir erscheint das ganze doch etwas zu sehr Octopus-spezifisch zu sein

    Die ganze CAM-Nutzung ist nicht Teil der SATIP-Spezifikation und von Digital Devices für die OctopusNet entwickelt worden und damit Octopus-spezifisch. Soviel ich weiß hat die alte Version mit der neuen Firmware nicht mehr funktioniert und ich habe mich bei der Entwicklung an deren Spezifikation zur Implementierung gehalten. Und weil sich die Konfiguration geändert hat ist das im README beschrieben. Da ein CAM nur einem Ocotpus-Tuner zugeordnet werden kann macht es keinen Sinn dem VDR zu sagen er könne mit allen Devices das CAM benutzen um dann später festzustellen, dass es doch nicht geht. Mit einer DVB-Karte ist ja auch das CAM fest zugeordnet.

    Und offenbar werden da ja von unterschiedlichen Sendern auch unterschiedliche CA-IDs aus der Range verwandt

    Es gibt Sender, die können mit mehreren (unterschiedlichen) Smartcards entschlüsselt werden. Sofern eine davon passt wird diese benutzt, deshalb langt es, die (eine) CA-ID der Smartcard anzugeben.

    Muss man jetzt jede einzelne CA-ID kommagetrennt vorgeben, oder ist es möglich, auch eine Range von-bis anzugeben? Sonst wird das ja eine ellenlange Zeile mit über 100 Einträgen.

    Meines Wissen hat jede Smartcard nur eine CA-ID, es gibt Dual CAM Module, die zwei Smartcards aufnehmen können und dann zwei CA-IDs zur Verfügung stellen. Wieso willst Du einen Bereich vorgeben? Hast Du so viele Smartcards?? Und die Konfiguration macht man nur am Anfang oder bei Kartenwechsel.

    Und wieso hast Du Dich nicht schon im Spätsommer in die Diskussion eingeklinkt? Ansonsten bin ich für Patches offen.

  • Ich habe erst jetzt wieder das satip-Plugin ausprobiert und bin nicht früher über die Auswirkungen der Änderungen gestolpert. Wie ich inzwischen mit dem alten Plugin (Stand Juni) nachvollziehen konnte, war es dort völlig egal, welche CA-IDs im OSD-setup ausgewählt wurden, Hauptsache irgendwelche.

    Mein satip-Server ist minisatip, das zur Entschlüsselung direkt mit einem Server kommuniziert (nennen wir ihn mal oscar, in der Hoffung dass das nicht zensiert wird). Offenbar hat sich da auch bei minisatip einiges geändert. Mit dem neuen git-Stand kriege ich mit Deiner Plugin-Version auch ohne Parameter --caids ein Bild auf den verschlüsselten Kanälen (Vodafone Kabel mit G09-Smartcard) - aber nur einmal beim ersten Anwählen und nach dem Umschalten dann nie wieder. Das Problem habe ich mit wirbels Version hingegen nicht. Ich überblicke leider nicht, welche Deiner Änderungen die Ursache sind. Auch mit --caids=0x09C7;0x09C7 ist das Verhalten gleich.

    Die erste Frage wäre nun, welches Ziel Du mit Deinem Plugin verfolgst bzw. welchen Anspruch es erhebt: Soll es ein Plugin sein, dass auf den Betrieb mit einem Octopus-Server zugeschnitten ist und in Kauf nimmt, dass die Kompatibilität zu anderen satip-Servern dadurch ggf. eingeschränkt ist? Das wäre schade. Ich sehe, dass Du viel an dem Plugin gearbeitet hast, und von vielen Änderungen würden sicherlich auch andere satip-Server profitieren.

    So ganz verstehen tue ich ehrlich gesagt nicht, welchen Zweck dieser --caids Parameter hat. Die CA-ID steht in der channels.conf und wird mit an den satip-Server übergeben. Es ist dann doch seine Sache, für die Entschlüsselung auf das passende CAM zuzugreifen. Dumm ist, dass das satip-Protokoll dafür keine Vorab-Prüfung der Capabilities vorsieht. So kommt es nicht zu einem "Kanal nicht verfügbar", sondern das Bild bleibt einfach dunkel, wenn der Server kein passendes CAM hat. Ich würde es verstehen, wenn der --caids Parameter nun dazu dienen soll festzulegen, welche CA-ID das CAM entschlüsseln kann. So wie ich die README verstehe, soll der --caids Parameter ja auch eine Pflichtangabe sein. Dann müsste das Fehlen nach meinem Verständnis genauso behandelt werden, als wenn mit dem Parameter eine andere CA-ID vorgegeben wird, als sie in der channels.conf für den angewählten Kanal steht.

    Tatsächlich schaltet vdr auch ohne --caids Parameter oder mit --caids=0x0000;0x0000 auf einen Kanal um, der in der channels.conf eine abweichende CA-ID 0x09C7 hat (und zunächst kommt sogar ein Bild, siehe oben). Eigentlich hätte ich erwartet, dass das Plugin über ProvidesChannel in beiden Fällen false zurückmeldet, so dass vdr das Umschalten mit "Kanal nicht verfügbar" ablehnt.

    Bei allen getesteten satip-Versionen (rofafor, Wirbel, Firefly) habe ich das Problem, dass beim Versuch, mittels des femon-Plugins (links/rechts-Tasten) auf einem verschlüsselten Kanal das satip-device zu wechseln, vdr mit über 100% CPU-Auslastung unbedienbar wird. Kannst Du mal bitte testen, ob das im Zusammenspiel mit einer Octopus auch auftritt?

    Da gibt es mit Sicherheit auch Bugs in minisatip. Die STR/SNR-Anzeige funktioniert trotz mehrerer Bug-Reports mit konkreten Lösungsvorschlägen bis heute nicht - die hier verkündete Lösung ändert nichts an dem Problem, dass harmlose und irrelevante Treiber-Rückmeldungen, die bei jedem Kanalwechsel auftreten, zu einem Abbruch der Funktion get_signal_new führen. Wahrscheinlich ist da noch mehr kaputt. Aber zu einem Einfrieren von vdr dürfte es deshalb dennoch nicht kommen.

    VDR1: Odroid N2+ mit CoreELEC und Ubuntu in chroot, 2x WinTV DualHD, Sandisk 2TB SSD

    VDR2: Tanix TX3 mit VDR*ELEC, WinTV DualHD, 500GB SSD

  • Bei allen getesteten satip-Versionen (rofafor, Wirbel, Firefly) habe ich das Problem, dass beim Versuch, mittels des femon-Plugins (links/rechts-Tasten) auf einem verschlüsselten Kanal das satip-device zu wechseln, vdr mit über 100% CPU-Auslastung unbedienbar wird. Kannst Du mal bitte testen, ob das im Zusammenspiel mit einer Octopus auch auftritt?

    @ my version: links/rechts device Wechsel bei verschlüsselt - kein Bild, aber bedienbar und keine hohe CPU last. Kanal Wechsel auf dem gleichem device zum nächsten verschlüsselten Ch geht

    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler


    to spoil
    verderben
    beschädigen
    plündern
    behindern
    berauben
    vereiteln
    rauben
    zerstören [fig.] [verderben, verunstalten]
    vergällen
    verhageln [fig.]

  • Die erste Frage wäre nun, welches Ziel Du mit Deinem Plugin verfolgst bzw. welchen Anspruch es erhebt

    Das Plugin soll natürlich mit möglichst vielen SATIP-Servern laufen. Andererseits kann ich nicht alle Hardware-Konfigurationen testen und bin auf Rückmldungen aus der Community angewiesen.

    So ganz verstehen tue ich ehrlich gesagt nicht, welchen Zweck dieser --caids Parameter hat. Die CA-ID steht in der channels.conf und wird mit an den satip-Server übergeben. Es ist dann doch seine Sache, für die Entschlüsselung auf das passende CAM zuzugreifen

    Für die Entschlüsselung muss der RTSP Session die PMT mitgegeben werden, nicht die CA-ID. Dafür hat der VDR extra die Funktion GetPmtPid(). Um vorab zu wissen ob der Kanal entschlüsselt werden kann (ProvidesChannel()) wird die CA-ID benötigt. Dass Du kurz ein Bild hast rührt vermutlich daher, dass der VDR nach seinem Start immer erst auf den Kanal tuned um eventuelle CA-IDs zu erhalten und dann MIT CA-IDs re-tuned.

    Ansonsten kannst Du in diesem Thread von der Entwicklung damals mehr zu den Details lesen: RE: SATIP und vTuner mit SAT Receiver Digital Devices SX8 mit integriertem CI

    Mein satip-Server ist minisatip, das zur Entschlüsselung direkt mit einem Server kommuniziert

    Dann frag doch mal Deinen oscar ob er nicht direkt mit dem VDR reden will, es gibt auch ein API dafür.

    das Problem, dass beim Versuch, mittels des femon-Plugins (links/rechts-Tasten) auf einem verschlüsselten Kanal das satip-device zu wechseln, vdr mit über 100% CPU-Auslastung unbedienbar wird

    Das klappt bei mir ohne nennenswerte CPU-Auslastung.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!