summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2006-04-15 14:18:25 +0200
committerKlaus Schmidinger <vdr@tvdr.de>2006-04-15 14:18:25 +0200
commit94c729a6fa45370e3b02c48db4d212b60026a4ad (patch)
tree49cbd9e168d3d6f4d7589e293f67e2402fc5c8fc
parent50b77a6d4b6d71cc97fffb5f9a9486cc9320df42 (diff)
downloadvdr-94c729a6fa45370e3b02c48db4d212b60026a4ad.tar.gz
vdr-94c729a6fa45370e3b02c48db4d212b60026a4ad.tar.bz2
The "Update channels" parameter in the "Setup/DVB" menu has been extended to allow updating only the PIDs
-rw-r--r--HISTORY4
-rw-r--r--MANUAL8
-rw-r--r--config.c4
-rw-r--r--eit.c6
-rw-r--r--i18n.c24
-rw-r--r--menu.c13
-rw-r--r--nit.c14
-rw-r--r--sdt.c8
8 files changed, 54 insertions, 27 deletions
diff --git a/HISTORY b/HISTORY
index a664af0d..4e672a8e 100644
--- a/HISTORY
+++ b/HISTORY
@@ -4537,3 +4537,7 @@ Video Disk Recorder Revision History
- Implemented kNext and kPrev keys (based on a patch from Peter Juszack).
See MANUAL for details.
- Implemented kChanPrev (from a patch from Darren Salt).
+- The "Update channels" parameter in the "Setup/DVB" menu has been extended to
+ allow updating only the PIDs (see MANUAL for details). When updating to this
+ version of VDR, please verify that the setting is as you want it to be, because
+ the values have been shifted.
diff --git a/MANUAL b/MANUAL
index 609cafdc..88f8d920 100644
--- a/MANUAL
+++ b/MANUAL
@@ -639,11 +639,11 @@ Version 1.3
If turned off, Dolby Digital tracks also don't appear in the
"Audio" menu.
- Update channels = 4 Controls the automatic channel update function. '0' means
+ Update channels = 5 Controls the automatic channel update function. '0' means
no update, '1' will only update channel names, '2' will
- update channel names and PIDs, '3' will perform all
- updates and also add newly found channels, and '4' will
- also add newly found transponders.
+ only update PIDs, '3' will update channel names and PIDs,
+ '4' will perform all updates and also add newly found channels,
+ and '5' will also add newly found transponders.
Audio languages = 0 Some tv stations broadcast various audio tracks in different
languages. This option allows you to define which language(s)
diff --git a/config.c b/config.c
index 9dadfdca..4c0158ec 100644
--- a/config.c
+++ b/config.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: config.c 1.143 2006/04/09 12:12:01 kls Exp $
+ * $Id: config.c 1.144 2006/04/15 14:05:41 kls Exp $
*/
#include "config.h"
@@ -251,7 +251,7 @@ cSetup::cSetup(void)
RecordingDirs = 1;
VideoDisplayFormat = 1;
VideoFormat = 0;
- UpdateChannels = 4;
+ UpdateChannels = 5;
UseDolbyDigital = 1;
ChannelInfoPos = 0;
ChannelInfoTime = 5;
diff --git a/eit.c b/eit.c
index ccce4956..c33dbefc 100644
--- a/eit.c
+++ b/eit.c
@@ -8,7 +8,7 @@
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
* Adapted to 'libsi' for VDR 1.3.0 by Marcel Wiesweg <marcel.wiesweg@gmx.de>.
*
- * $Id: eit.c 1.115 2006/02/19 09:51:02 kls Exp $
+ * $Id: eit.c 1.116 2006/04/15 14:11:52 kls Exp $
*/
#include "eit.h"
@@ -180,10 +180,10 @@ cEIT::cEIT(cSchedules *Schedules, int Source, u_char Tid, const u_char *Data)
if (link != channel) { // only link to other channels, not the same one
//fprintf(stderr, "Linkage %s %4d %4d %5d %5d %5d %5d %02X '%s'\n", hit ? "*" : "", channel->Number(), link ? link->Number() : -1, SiEitEvent.getEventId(), ld->getOriginalNetworkId(), ld->getTransportStreamId(), ld->getServiceId(), ld->getLinkageType(), linkName);//XXX
if (link) {
- if (Setup.UpdateChannels >= 1)
+ if (Setup.UpdateChannels == 1 || Setup.UpdateChannels >= 3)
link->SetName(linkName, "", "");
}
- else if (Setup.UpdateChannels >= 3) {
+ else if (Setup.UpdateChannels >= 4) {
link = Channels.NewChannel(channel, linkName, "", "", ld->getOriginalNetworkId(), ld->getTransportStreamId(), ld->getServiceId());
//XXX patFilter->Trigger();
}
diff --git a/i18n.c b/i18n.c
index b9770e18..5912a53e 100644
--- a/i18n.c
+++ b/i18n.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: i18n.c 1.260 2006/04/15 13:53:23 kls Exp $
+ * $Id: i18n.c 1.261 2006/04/15 14:13:45 kls Exp $
*
* Translations provided by:
*
@@ -3722,6 +3722,28 @@ const tI18nPhrase Phrases[] = {
"kun navne",
"jen názvy",
},
+ { "PIDs only",
+ "nur PIDs",
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ "",// TODO
+ },
{ "names and PIDs",
"Namen und PIDs",
"imena in PIDe",
diff --git a/menu.c b/menu.c
index 5681c35d..d0430af6 100644
--- a/menu.c
+++ b/menu.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: menu.c 1.431 2006/04/15 13:37:09 kls Exp $
+ * $Id: menu.c 1.432 2006/04/15 14:09:40 kls Exp $
*/
#include "menu.h"
@@ -2299,7 +2299,7 @@ private:
int numAudioLanguages;
void Setup(void);
const char *videoDisplayFormatTexts[3];
- const char *updateChannelsTexts[5];
+ const char *updateChannelsTexts[6];
public:
cMenuSetupDVB(void);
virtual eOSState ProcessKey(eKeys Key);
@@ -2315,9 +2315,10 @@ cMenuSetupDVB::cMenuSetupDVB(void)
videoDisplayFormatTexts[2] = tr("center cut out");
updateChannelsTexts[0] = tr("no");
updateChannelsTexts[1] = tr("names only");
- updateChannelsTexts[2] = tr("names and PIDs");
- updateChannelsTexts[3] = tr("add new channels");
- updateChannelsTexts[4] = tr("add new transponders");
+ updateChannelsTexts[2] = tr("PIDs only");
+ updateChannelsTexts[3] = tr("names and PIDs");
+ updateChannelsTexts[4] = tr("add new channels");
+ updateChannelsTexts[5] = tr("add new transponders");
SetSection(tr("DVB"));
Setup();
@@ -2334,7 +2335,7 @@ void cMenuSetupDVB::Setup(void)
if (data.VideoFormat == 0)
Add(new cMenuEditStraItem(tr("Setup.DVB$Video display format"), &data.VideoDisplayFormat, 3, videoDisplayFormatTexts));
Add(new cMenuEditBoolItem(tr("Setup.DVB$Use Dolby Digital"), &data.UseDolbyDigital));
- Add(new cMenuEditStraItem(tr("Setup.DVB$Update channels"), &data.UpdateChannels, 5, updateChannelsTexts));
+ Add(new cMenuEditStraItem(tr("Setup.DVB$Update channels"), &data.UpdateChannels, 6, updateChannelsTexts));
Add(new cMenuEditIntItem( tr("Setup.DVB$Audio languages"), &numAudioLanguages, 0, I18nNumLanguages));
for (int i = 0; i < numAudioLanguages; i++)
Add(new cMenuEditStraItem(tr("Setup.DVB$Audio language"), &data.AudioLanguages[i], I18nNumLanguages, I18nLanguages()));
diff --git a/nit.c b/nit.c
index 73b1df24..27b90fd1 100644
--- a/nit.c
+++ b/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.10 2004/10/17 12:00:54 kls Exp $
+ * $Id: nit.c 1.11 2006/04/15 14:10:42 kls Exp $
*/
#include "nit.h"
@@ -116,12 +116,12 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
bool found = false;
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 >= 4)
+ if (Setup.UpdateChannels >= 5)
Channel->SetSatTransponderData(Source, Frequency, Polarization, SymbolRate, CodeRate);
found = true;
}
}
- if (!found && Setup.UpdateChannels >= 4) {
+ if (!found && Setup.UpdateChannels >= 5) {
cChannel *Channel = new cChannel;
Channel->SetId(ts.getOriginalNetworkId(), ts.getTransportStreamId(), 0, 0);
if (Channel->SetSatTransponderData(Source, Frequency, Polarization, SymbolRate, CodeRate))
@@ -151,12 +151,12 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
bool found = false;
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 >= 4)
+ if (Setup.UpdateChannels >= 5)
Channel->SetCableTransponderData(Source, Frequency, Modulation, SymbolRate, CodeRate);
found = true;
}
}
- if (!found && Setup.UpdateChannels >= 4) {
+ if (!found && Setup.UpdateChannels >= 5) {
cChannel *Channel = new cChannel;
Channel->SetId(ts.getOriginalNetworkId(), ts.getTransportStreamId(), 0, 0);
if (Channel->SetCableTransponderData(Source, Frequency, Modulation, SymbolRate, CodeRate))
@@ -193,12 +193,12 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
bool found = false;
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 >= 4)
+ if (Setup.UpdateChannels >= 5)
Channel->SetTerrTransponderData(Source, Frequency, Bandwidth, Constellation, Hierarchy, CodeRateHP, CodeRateLP, GuardInterval, TransmissionMode);
found = true;
}
}
- if (!found && Setup.UpdateChannels >= 4) {
+ if (!found && Setup.UpdateChannels >= 5) {
cChannel *Channel = new cChannel;
Channel->SetId(ts.getOriginalNetworkId(), ts.getTransportStreamId(), 0, 0);
if (Channel->SetTerrTransponderData(Source, Frequency, Bandwidth, Constellation, Hierarchy, CodeRateHP, CodeRateLP, GuardInterval, TransmissionMode))
diff --git a/sdt.c b/sdt.c
index 74c55032..f42b0855 100644
--- a/sdt.c
+++ b/sdt.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: sdt.c 1.15 2005/08/27 09:27:47 kls Exp $
+ * $Id: sdt.c 1.16 2006/04/15 14:12:21 kls Exp $
*/
#include "sdt.h"
@@ -78,7 +78,7 @@ void cSdtFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
char *pp = compactspace(ProviderNameBuf);
if (channel) {
channel->SetId(sdt.getOriginalNetworkId(), sdt.getTransportStreamId(), SiSdtService.getServiceId());
- if (Setup.UpdateChannels >= 1)
+ if (Setup.UpdateChannels == 1 || Setup.UpdateChannels >= 3)
channel->SetName(pn, ps, pp);
// Using SiSdtService.getFreeCaMode() is no good, because some
// tv stations set this flag even for non-encrypted channels :-(
@@ -86,7 +86,7 @@ void cSdtFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
// and would have been overwritten with real CA values later:
// channel->SetCa(SiSdtService.getFreeCaMode() ? 0xFFFF : 0);
}
- else if (*pn && Setup.UpdateChannels >= 3) {
+ else if (*pn && Setup.UpdateChannels >= 4) {
channel = Channels.NewChannel(Channel(), pn, ps, pp, sdt.getOriginalNetworkId(), sdt.getTransportStreamId(), SiSdtService.getServiceId());
patFilter->Trigger();
}
@@ -111,7 +111,7 @@ void cSdtFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
SI::NVODReferenceDescriptor::Service Service;
for (SI::Loop::Iterator it; nrd->serviceLoop.getNext(Service, it); ) {
cChannel *link = Channels.GetByChannelID(tChannelID(Source(), Service.getOriginalNetworkId(), Service.getTransportStream(), Service.getServiceId()));
- if (!link && Setup.UpdateChannels >= 3) {
+ if (!link && Setup.UpdateChannels >= 4) {
link = Channels.NewChannel(Channel(), "NVOD", "", "", Service.getOriginalNetworkId(), Service.getTransportStream(), Service.getServiceId());
patFilter->Trigger();
}