NIT handling was changed in 1.4.3-4 by adding an additional check if
we're actually receiving this transponder. See the current code:

>                  for (cChannel *Channel = Channels.First(); Channel; Channel 
> = Channels.Next(Channel)) {
>                      if (!Channel->GroupSep() && Channel->Source() == Source 
> && Channel->Nid() == ts.getOriginalNetworkId() && Channel->Tid() == 
> ts.getTransportStreamId()) {
>                         if (Setup.UpdateChannels >= 5) {
>                            if (ISTRANSPONDER(Frequency / 1000, 
> Transponder())) { // only modify channels if we're actually receiving this 
> transponder

The above check was added. However, the variable 'Frequency' may not
always be the current transponder frequency. The current transponder
could also be in the Frequencies[] array. This causes the channel update
to be always disabled.

Below we search the array if the transponder of the 'Channel' is there:

>                               if (!ISTRANSPONDER(Frequency / 1000, 
> Channel->Transponder())) {
>                                  for (int n = 0; n < NumFrequencies; n++) {
>                                      if (ISTRANSPONDER(Frequencies[n] / 1000, 
> Channel->Transponder())) {
>                                         Frequency = Frequencies[n];
>                                         break;
>                                         }
>                                      }
>                                  }

Maybe the new check should be moved here, so that it uses the new
correct 'Frequency' that was found from Frequencies[] in the loop above?

>                               Channel->SetCableTransponderData(Source, 
> Frequency, Modulation, SymbolRate, CodeRate);
>                               }
>                            }
>                         found = true;
>                         }
>                      }

-- 
Anssi Hannula


_______________________________________________
vdr mailing list
vdr@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr

Reply via email to