mighty-p : Verwende "NO_STREAM_ID_FILTER" als Wert für StreamID/PLP. Damit wird die PLP automatisch vom Demodulator ausgewählt und es kommt zu einem Lock. Über den T2DeliversystemDescriptor der NIT erfährt man dann die PLP-ID für diesem Transponder.
Hier ein paar Zeilen wie ich es in meinem S2-multistream4-T2 patch in SetFrontend mache.
Diff
--- vdr-2.4.1-S2-mis4/dvbdevice.c 2019-10-27 14:24:05.503936466 +0100
+++ vdr-2.4.1-S2-mis4_T2/dvbdevice.c 2019-10-27 14:25:16.110605001 +0100
@@ -1712,12 +1712,15 @@ bool cDvbTuner::SetFrontend(void)
if (frontendType == SYS_DVBT2) {
// DVB-T2
SETCMD(DTV_INNER_FEC, dtp.CoderateH());
+ // user defineable StreamId autodetection: StreamId == -1
+ int streamId = (dtp.StreamId() == -1) ? NO_STREAM_ID_FILTER : dtp.StreamId();
if (DvbApiVersion >= 0x0508) {
- SETCMD(DTV_STREAM_ID, dtp.StreamId());
+ SETCMD(DTV_STREAM_ID, streamId);
}
else if (DvbApiVersion >= 0x0503)
- SETCMD(DTV_DVBT2_PLP_ID_LEGACY, dtp.StreamId());
+ SETCMD(DTV_DVBT2_PLP_ID_LEGACY, streamId);
.....
Alles anzeigen
Helmut