mirror of
				https://github.com/vdr-projects/vdr.git
				synced 2025-03-01 10:50:46 +00:00 
			
		
		
		
	Fixed handling frequencies in NitFilter::Process()
This commit is contained in:
		@@ -2007,6 +2007,7 @@ Anssi Hannula <anssi.hannula@gmail.com>
 | 
			
		||||
 for suggesting that cDevice::GetDevice() should prefer any device that's already
 | 
			
		||||
 receiving and doesn't require detatching receivers
 | 
			
		||||
 for improving handling Transfer Mode devices when selecting a device to receive
 | 
			
		||||
 for fixing handling frequencies in NitFilter::Process()
 | 
			
		||||
 | 
			
		||||
Antti Hartikainen <ami+vdr@ah.fi>
 | 
			
		||||
 for updating 'S13E' in 'sources.conf'
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										3
									
								
								HISTORY
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								HISTORY
									
									
									
									
									
								
							@@ -5048,7 +5048,8 @@ Video Disk Recorder Revision History
 | 
			
		||||
 | 
			
		||||
- Updated the Finnish OSD texts (thanks to Rolf Ahrenberg).
 | 
			
		||||
 | 
			
		||||
2007-04-28: Version 1.4.6-1
 | 
			
		||||
2007-04-29: Version 1.4.6-1
 | 
			
		||||
 | 
			
		||||
- Fixed a busy loop in fast forward if the next video data file is missing
 | 
			
		||||
  (thanks to Reinhard Nissl).
 | 
			
		||||
- Fixed handling frequencies in NitFilter::Process() (thanks to Anssi Hannula).
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										53
									
								
								nit.c
									
									
									
									
									
								
							
							
						
						
									
										53
									
								
								nit.c
									
									
									
									
									
								
							@@ -4,7 +4,7 @@
 | 
			
		||||
 * See the main source file 'vdr.c' for copyright information and
 | 
			
		||||
 * how to reach the author.
 | 
			
		||||
 *
 | 
			
		||||
 * $Id: nit.c 1.13 2006/10/28 12:31:04 kls Exp $
 | 
			
		||||
 * $Id: nit.c 1.13.1.1 2007/04/29 11:35:33 kls Exp $
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include "nit.h"
 | 
			
		||||
@@ -144,17 +144,16 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
 | 
			
		||||
                 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(cChannel::Transponder(Frequency, Polarization), Transponder())) { // only modify channels if we're actually receiving this transponder
 | 
			
		||||
                              if (!ISTRANSPONDER(cChannel::Transponder(Frequency, Polarization), Channel->Transponder())) {
 | 
			
		||||
                                 for (int n = 0; n < NumFrequencies; n++) {
 | 
			
		||||
                                     if (ISTRANSPONDER(cChannel::Transponder(Frequencies[n], Polarization), Channel->Transponder())) {
 | 
			
		||||
                                        Frequency = Frequencies[n];
 | 
			
		||||
                                        break;
 | 
			
		||||
                                        }
 | 
			
		||||
                           if (!ISTRANSPONDER(cChannel::Transponder(Frequency, Polarization), Channel->Transponder())) {
 | 
			
		||||
                              for (int n = 0; n < NumFrequencies; n++) {
 | 
			
		||||
                                  if (ISTRANSPONDER(cChannel::Transponder(Frequencies[n], Polarization), Channel->Transponder())) {
 | 
			
		||||
                                     Frequency = Frequencies[n];
 | 
			
		||||
                                     break;
 | 
			
		||||
                                     }
 | 
			
		||||
                                 }
 | 
			
		||||
                              Channel->SetSatTransponderData(Source, Frequency, Polarization, SymbolRate, CodeRate);
 | 
			
		||||
                                  }
 | 
			
		||||
                              }
 | 
			
		||||
                           if (ISTRANSPONDER(cChannel::Transponder(Frequency, Polarization), Transponder())) // only modify channels if we're actually receiving this transponder
 | 
			
		||||
                              Channel->SetSatTransponderData(Source, Frequency, Polarization, SymbolRate, CodeRate);
 | 
			
		||||
                           }
 | 
			
		||||
                        found = true;
 | 
			
		||||
                        }
 | 
			
		||||
@@ -195,17 +194,16 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
 | 
			
		||||
                 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
 | 
			
		||||
                              if (!ISTRANSPONDER(Frequency / 1000, Channel->Transponder())) {
 | 
			
		||||
                                 for (int n = 0; n < NumFrequencies; n++) {
 | 
			
		||||
                                     if (ISTRANSPONDER(Frequencies[n] / 1000, Channel->Transponder())) {
 | 
			
		||||
                                        Frequency = Frequencies[n];
 | 
			
		||||
                                        break;
 | 
			
		||||
                                        }
 | 
			
		||||
                           if (!ISTRANSPONDER(Frequency / 1000, Channel->Transponder())) {
 | 
			
		||||
                              for (int n = 0; n < NumFrequencies; n++) {
 | 
			
		||||
                                  if (ISTRANSPONDER(Frequencies[n] / 1000, Channel->Transponder())) {
 | 
			
		||||
                                     Frequency = Frequencies[n];
 | 
			
		||||
                                     break;
 | 
			
		||||
                                     }
 | 
			
		||||
                                 }
 | 
			
		||||
                              Channel->SetCableTransponderData(Source, Frequency, Modulation, SymbolRate, CodeRate);
 | 
			
		||||
                                  }
 | 
			
		||||
                              }
 | 
			
		||||
                           if (ISTRANSPONDER(Frequency / 1000, Transponder())) // only modify channels if we're actually receiving this transponder
 | 
			
		||||
                              Channel->SetCableTransponderData(Source, Frequency, Modulation, SymbolRate, CodeRate);
 | 
			
		||||
                           }
 | 
			
		||||
                        found = true;
 | 
			
		||||
                        }
 | 
			
		||||
@@ -253,17 +251,16 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
 | 
			
		||||
                 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 / 1000000, Transponder())) { // only modify channels if we're actually receiving this transponder
 | 
			
		||||
                              if (!ISTRANSPONDER(Frequency / 1000000, Channel->Transponder())) {
 | 
			
		||||
                                 for (int n = 0; n < NumFrequencies; n++) {
 | 
			
		||||
                                     if (ISTRANSPONDER(Frequencies[n] / 1000000, Channel->Transponder())) {
 | 
			
		||||
                                        Frequency = Frequencies[n];
 | 
			
		||||
                                        break;
 | 
			
		||||
                                        }
 | 
			
		||||
                           if (!ISTRANSPONDER(Frequency / 1000000, Channel->Transponder())) {
 | 
			
		||||
                              for (int n = 0; n < NumFrequencies; n++) {
 | 
			
		||||
                                  if (ISTRANSPONDER(Frequencies[n] / 1000000, Channel->Transponder())) {
 | 
			
		||||
                                     Frequency = Frequencies[n];
 | 
			
		||||
                                     break;
 | 
			
		||||
                                     }
 | 
			
		||||
                                 }
 | 
			
		||||
                              Channel->SetTerrTransponderData(Source, Frequency, Bandwidth, Constellation, Hierarchy, CodeRateHP, CodeRateLP, GuardInterval, TransmissionMode);
 | 
			
		||||
                                  }
 | 
			
		||||
                              }
 | 
			
		||||
                           if (ISTRANSPONDER(Frequency / 1000000, Transponder())) // only modify channels if we're actually receiving this transponder
 | 
			
		||||
                              Channel->SetTerrTransponderData(Source, Frequency, Bandwidth, Constellation, Hierarchy, CodeRateHP, CodeRateLP, GuardInterval, TransmissionMode);
 | 
			
		||||
                           }
 | 
			
		||||
                        found = true;
 | 
			
		||||
                        }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user