NIT handling change in 1.4.3-4

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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



[Index of Archives]     [Linux Media]     [Asterisk]     [DCCP]     [Netdev]     [Xorg]     [Util Linux NG]     [Xfree86]     [Big List of Linux Books]     [Fedora Users]     [Fedora Women]     [ALSA Devel]     [Linux USB]

  Powered by Linux