Shared CA-Pids
-
-
hallo klaus,
ist immer noch aktuell - und sollte in den 2.4.1 code übernommen werden.
danke, für dein arbeit, lg, onur -
Dei Sequenz hier kann aber doch nicht richtig sein:
Hier sollten doch die Pointer inkrementiert werden und nicht die Werte, auf die sie zeigen!?
Da muss ich mich fragen, ob der ganze Patch so überhaupt eine Wirkung haben konnte. Vermutlich liefen die Schleifen so lange, bis die Werte einen Überlauf hatten und zu 0 wurden, und dadurch wurden einfach gar keine Pids gelöscht.
Kannst du das bitte verifizieren, indem du die beiden '*' weglässt?
<edit>
Sorry, der Code funktioniert natürlich. Ich bin lediglich auf die Warnung des Compilers reingefallen, dass da ein Pointer dereferenziert, der Wert aber nicht verwendet wird. Die '*' kann man also einfach weglassen, und es ändert sich nichts an der Funktionalität.
</edit>
Klaus
-
Ich wollte das jetzt mal ausprobieren und habe (zunächst ohne den Patch) eine Aufnahme gestartet auf
ORF2 V;ORF:12692:HC56M2S0:S19.2E:22000:500=2:501=deu@3,502=mis@3;503=deu@106:505:648,650,D95,D98,9C4,98C:13009:1:1117:0
und dann live auf
ORF SPORT+;ORF:11243:HC56M2S0:S19.2E:22000:2210=2:2211=deu@3,2212=mis@3:2215:648,650,D95,D98,9C4,98C:13221:1:1003:0
geschaltet. Nach einiger Zeit dann die Aufnahme gestoppt, aber das Live-Signal wurde munter weiter entschlüsselt.
Da diese beiden Sender auf unterschiedlichen Transpondern liegen, habe ich den gleichen Versuch dann nochmal mit den Kanälen
ORF2 O;ORF:12692:HC56M2S0:S19.2E:22000:500=2:501=deu@3,502=mis@3;503=deu@106:505:648,650,D95,D98,9C4,98C:13006:1:1117:0
ORF2 S;ORF:12692:HC56M2S0:S19.2E:22000:500=2:501=deu@3,502=mis@3;503=deu@106:505:648,650,D95,D98,9C4,98C:13007:1:1117:0
gemacht, wieder ohne Probleme.
Gibt es überhaupt (noch) Kanäle, bei denen es Probleme gibt?
Klaus
-
Ja, z.B. SRF1 und SRF2 auf 13°E.
-
Die kann ich leider nicht empfangen. Ich habe nur 19.2 Ost.
-
mir ist das nur bei ORF/SRF aufgefallen.
-
ORF auf Astra 19.2 Ost kann ich empfangen.
Kannst du mir da zwei betroffene Kanäle nennen?
Am besten die channels.conf-Zeilen posten.
-
hallo, leider gibt es das problem derzeit auf orf nicht (ich habe auch keine kombi gefunden).
eventuell aber von 19:00-19:15, da laufen die regional Programme (teste ich heute).
SRF kann ich derzeit auch nicht empfangen/entschlüsseln.
ich habe immer mit diesen 2 Kanälen getestet.ORF2V HD;ORF:11273:HC23M5O35P0S1:S19.2E:22000:3000:0;3001=deu,3002=mis:3005:D98,650,D95,648,6E2,98C,9C4,500:13307:1:1005:0
ORF SPORT+ HD;ORF:11273:HC23M5O35P0S1:S19.2E:22000:3090:0;3091=deu,3092=mis:3095:D98,650,D95,648,6E2,98C,9C4,500:13309:1:1005:0 -
Mit diesen beiden habe ich auch kein Problem.
-
Ich kann gerne, wenn du mir einen entsprechenden Patch für debug-Ausgaben gibst, das mal in den nächsten Tagen testen und posten.
ORF hat, wenn ich mich richtig erinnere, die Pids geändert, so dass das Problem nicht mehr auftritt.
-
Es geht eigentlich nur darum zu verifizieren, dass das Problem ohne Patch immer noch auftritt und mit Patch nicht mehr.
Starte dazu auf einem der betroffenen Kanäle eine Aufnahne, schalte auf den anderen, und brich die Aufnahme ab. Ohne Patch müsste dann nach wenigen Sekunden die Live-Wiedergabe abbrechen, mit Patch sollte sie weiterlaufen.
-
Ja, so hatte ich es damals schon getestet und kann bestätigen, dass das Problem ohne Patch auftritt und mit Patch nicht.
-
Ich möchte nochmal auf den Post hier zurückkommen.
Wenn ich onur dort richtig verstehe, dann sollte das Problem mit "shared CaPids" eigentlich seit Version 2.3.3 behoben sein, und der Patch nur für VDR-Versionen vor 2.3.3 nötig sein.
Ich würde jetzt ungern einen Patch einbauen, der gar nicht mehr nötig ist.
Könnt ihr mir dazu bitte noch was sagen?
jrie aus deiner Antwort in #13 geht für mich nicht eindeutig hervor, ob du das mit Version 2.4.0 auch getestet hast ("damals" hattest du ja, wenn ich das richtig sehe, noch VDR 2.2.0 benutzt).
Klaus
-
Das gilt sowohl für 2.2.0 als auch für 2.4.0.
Links zu den CaPids: SRF1 + SRF2
Wie hier geschrieben, löscht auch vdr-2.4.0 beim Wegschalten CaPids obwohl sie noch benötigt werden. Denn der vdr geht von der falschen Annahme aus, die CaPids müssten immer verschieden sein. Wenn sie dann aber gleich sind, werden noch benötigte CaPids gelöscht und das Entschlüsseln hält an.
Deshalb hilft onur's patch, da der verhindert, dass gleiche CaPids, die auf Sender A noch benutzt werden, gelöscht werden, wenn von Sender B auf demselben Transponder weg geschaltet wird.
Warum onur geschrieben hat, es sei auf 2.3.3 nicht mehr nötig, weiß ich nicht. Mein Test sagt das Gegenteil.
-
Ich habe fälschlicherweise angenommen das dies seit 2.3.3 nicht mehr benötigt wird.
Da ORF wohl keine shared ca pids mehr hat, habe ich einen falschen Schluss gezogen. -
OK, dann weiß ich Bescheid.
Ich habe in ftp://ftp.tvdr.de/vdr/Develope…6-fix-shared-ca-pids.diff eine Debug-Ausgabe eingebaut, die in einem solchen Fall eine Meldung ins Log schreibt.
jrie kannst du das bitte mal mit den betroffenen schweizer Kanälen testen und schauen, ob die Meldung kommt.
-
vdr-2.4.0 mit vdr-xine und vdr-ddci2. Ich starte eine Aufnahme auf SRF1, schalte auf SRF2, stoppe die Aufnahme.
Ohne den Patch bleibt das Bild nach ein paar Sekunden stehen.
Mit Patch läuft es weiter und es gibt diese Meldungen:
Code2019-03-19T19:34:25.888371+01:00 vdr vdr: [11052] CAM 1: keeping shared CA pid 729 2019-03-19T19:34:25.889409+01:00 vdr vdr: message repeated 3 times: [ [11052] CAM 1: keeping shared CA pid 729] 2019-03-19T19:34:25.892323+01:00 vdr vdr: [11052] CAM 1: keeping shared CA pid 739 2019-03-19T19:34:25.894583+01:00 vdr vdr: message repeated 3 times: [ [11052] CAM 1: keeping shared CA pid 739] 2019-03-19T19:34:25.895287+01:00 vdr vdr: [11052] CAM 1: keeping shared CA pid 749 2019-03-19T19:34:25.897446+01:00 vdr vdr: message repeated 3 times: [ [11052] CAM 1: keeping shared CA pid 749]
-
-
Das Problem mit den shared CA-Pids ist ja mit dem Patch in Post #17 eigentlich schon gelöst.
Trotzdem hier der Versuch einer Lösung für alle Pids die von cReceiver im Device hinzugefügt/entfernt werden.
Der kleine Patch im Anhang erkennt mittels eines Referenzzählers in cReceiver nun shared Pids und handelt dementsprechend.
Und hier das Log bei laufender Aufnahme auf ORF1, umschalten auf ORF2 (gleiche CA-Pid) und wieder zurückschalten auf ORF1. Sieht vernünftig aus, allerdings kann ich es nicht zu 100% testen da beim Simpli-TV Module CaPmts mit "Update" nicht richtig zu funktionieren scheinen.
Code
Alles anzeigenvdr[15597]: [15597] switching to channel 1327 T-8232-101-14102 (ORF2 W HD) vdr[15597]: [15710] osdteletext-receiver thread ended (pid=15597, tid=15710) vdr[15597]: [15597] buffer stats: 0 (0%) used vdr[15597]: [15597] cReceiver: add shared PID (Pid = 1019 #2) vdr[15597]: [15597] creating directory /var/cache/vdr/osdteletext/T-8232-101-14102 vdr[15597]: [15724] osdteletext-receiver thread started (pid=15597, tid=15724, prio=high) vdr[15597]: [15707] [xine..put] H.264: Found NAL SPS at offset 6/889 vdr[15597]: [15707] [xine..put] H.264 SPS: profile_idc 100 vdr[15597]: [15707] [xine..put] H.264 SPS: pic_width: 80 mbs vdr[15597]: [15707] [xine..put] H.264 SPS: pic_height: 45 mbs vdr[15597]: [15707] [xine..put] H.264 SPS: frame only flag: 1 vdr[15597]: [15707] [xine..put] H.264 SPS: aspect_ratio_idc 1 vdr[15597]: [15707] [xine..put] H.264 SPS: -> aspect ratio 1 / 1 vdr[15597]: [15707] [xine..put] H.264 SPS: -> video size 1280x720, aspect 1:1 vdr[15597]: [15707] [xine..put] Detected video size 1280x720 ... vdr[15597]: [15597] cReceiver: keep shared PID (Pid = 1019 #1) vdr[15597]: [15597] switching to channel 1326 T-8232-101-14101 (ORF1 HD) vdr[15597]: [15724] osdteletext-receiver thread ended (pid=15597, tid=15724)
Helmut
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!