summaryrefslogtreecommitdiff
path: root/patches/patch-set
diff options
context:
space:
mode:
Diffstat (limited to 'patches/patch-set')
-rw-r--r--patches/patch-set/0001-Record-teletext-subtitles.patch82
-rw-r--r--patches/patch-set/0002-Added-setup-option-to-enable-teletext-subtitle-recor.patch186
-rw-r--r--patches/patch-set/0003-Allow-manual-configuration-of-teletetxt-subtitle-pag.patch50
-rw-r--r--patches/patch-set/0004-Decrypt-teletext-stream.patch21
-rw-r--r--patches/patch-set/0005-Capture-teletext-subtitle-pages-from-PMT.patch46
-rw-r--r--patches/patch-set/0006-Ttxtsubs-plugin-hook.patch19
6 files changed, 209 insertions, 195 deletions
diff --git a/patches/patch-set/0001-Record-teletext-subtitles.patch b/patches/patch-set/0001-Record-teletext-subtitles.patch
index 4272381..207ac62 100644
--- a/patches/patch-set/0001-Record-teletext-subtitles.patch
+++ b/patches/patch-set/0001-Record-teletext-subtitles.patch
@@ -1,37 +1,36 @@
-From 43914f1e49c368fbcc4d97e63e0e878de1238594 Mon Sep 17 00:00:00 2001
+From 21d95f17ee8373033602f0cc79d3589ae2978019 Mon Sep 17 00:00:00 2001
From: etobi <git@e-tobi.net>
Date: Fri, 12 Feb 2010 21:55:04 +0100
Subject: [PATCH 1/6] Record teletext subtitles
---
- channels.c | 7 +++++++
- channels.h | 14 ++++++++++++++
+ channels.c | 6 ++++++
+ channels.h | 16 ++++++++++++++++
pat.c | 18 +++++++++++++++++-
receiver.c | 2 +-
- remux.c | 28 ++++++++++++++++++++++++++++
- remux.h | 1 +
- 6 files changed, 68 insertions(+), 2 deletions(-)
+ remux.c | 29 +++++++++++++++++++++++++++++
+ remux.h | 3 +++
+ 6 files changed, 72 insertions(+), 2 deletions(-)
diff --git a/channels.c b/channels.c
-index c14df19..817b7d3 100644
+index c14df19..08ddf3e 100644
--- a/channels.c
+++ b/channels.c
-@@ -551,6 +551,13 @@ void cChannel::SetSubtitlingDescriptors(uchar *SubtitlingTypes, uint16_t *Compos
+@@ -551,6 +551,12 @@ void cChannel::SetSubtitlingDescriptors(uchar *SubtitlingTypes, uint16_t *Compos
}
}
-+void cChannel::SetTeletextSubtitlePages(tTeletextSubtitlePage pages[])
++void cChannel::SetTeletextSubtitlePages(tTeletextSubtitlePage pages[], int numberOfPages)
+{
-+ for (int i = 0; i < MAXTXTPAGES; i++)
-+ teletextSubtitlePages[i] = pages[i];
-+ teletextSubtitlePages[MAXTXTPAGES].ttxtType = 0;
++ for (int i = 0; (i < numberOfPages) && (totalTtxtSubtitlePages < MAXTXTPAGES); i++)
++ teletextSubtitlePages[totalTtxtSubtitlePages++] = pages[i];
+}
+
void cChannel::SetCaIds(const int *CaIds)
{
if (caids[0] && caids[0] <= CA_USER_MAX)
diff --git a/channels.h b/channels.h
-index b465f6a..18ed7c6 100644
+index b465f6a..acb346e 100644
--- a/channels.h
+++ b/channels.h
@@ -35,6 +35,7 @@
@@ -47,8 +46,8 @@ index b465f6a..18ed7c6 100644
};
+struct tTeletextSubtitlePage {
-+ tTeletextSubtitlePage(void) { ttxtPage = ttxtMagazine = ttxtType = ttxtLanguage[0] = 0; }
-+ tTeletextSubtitlePage(int page) { ttxtMagazine = (page / 100) & 0x7; ttxtPage = (((page % 100) / 10) << 4) + (page % 10); ttxtType = 0x02; }
++ tTeletextSubtitlePage(void) { ttxtPage = ttxtMagazine = 0; ttxtType = 0x02; strcpy(ttxtLanguage, "und"); }
++ tTeletextSubtitlePage(int page) { ttxtMagazine = (page / 100) & 0x7; ttxtPage = (((page % 100) / 10) << 4) + (page % 10); ttxtType = 0x02; strcpy(ttxtLanguage, "und"); }
+ char ttxtLanguage[MAXLANGCODE1];
+ uchar ttxtPage;
+ uchar ttxtMagazine;
@@ -59,32 +58,34 @@ index b465f6a..18ed7c6 100644
class cChannel;
class cLinkChannel : public cListObject {
-@@ -133,6 +144,7 @@ private:
+@@ -133,6 +144,8 @@ private:
uint16_t compositionPageIds[MAXSPIDS];
uint16_t ancillaryPageIds[MAXSPIDS];
int tpid;
-+ tTeletextSubtitlePage teletextSubtitlePages[MAXTXTPAGES + 1]; // list is termintated by ttxtType=0
++ int totalTtxtSubtitlePages;
++ tTeletextSubtitlePage teletextSubtitlePages[MAXTXTPAGES];
int caids[MAXCAIDS + 1]; // list is zero-terminated
int nid;
int tid;
-@@ -192,6 +204,7 @@ public:
+@@ -192,6 +205,8 @@ public:
uint16_t CompositionPageId(int i) const { return (0 <= i && i < MAXSPIDS) ? compositionPageIds[i] : uint16_t(0); }
uint16_t AncillaryPageId(int i) const { return (0 <= i && i < MAXSPIDS) ? ancillaryPageIds[i] : uint16_t(0); }
int Tpid(void) const { return tpid; }
-+ const tTeletextSubtitlePage TeletextSubtitlePage(int i) const { return (0 <= i && i < MAXTXTPAGES) ? teletextSubtitlePages[i] : tTeletextSubtitlePage(); };
++ const tTeletextSubtitlePage *TeletextSubtitlePages() const { return teletextSubtitlePages; };
++ int TotalTeletextSubtitlePages() const { return totalTtxtSubtitlePages; };
const int *Caids(void) const { return caids; }
int Ca(int Index = 0) const { return Index < MAXCAIDS ? caids[Index] : 0; }
int Nid(void) const { return nid; }
-@@ -228,6 +241,7 @@ public:
+@@ -228,6 +243,7 @@ public:
void SetName(const char *Name, const char *ShortName, const char *Provider);
void SetPortalName(const char *PortalName);
void SetPids(int Vpid, int Ppid, int Vtype, int *Apids, char ALangs[][MAXLANGCODE2], int *Dpids, char DLangs[][MAXLANGCODE2], int *Spids, char SLangs[][MAXLANGCODE2], int Tpid);
-+ void SetTeletextSubtitlePages(tTeletextSubtitlePage pages[]);
++ void SetTeletextSubtitlePages(tTeletextSubtitlePage pages[], int numberOfPages);
void SetCaIds(const int *CaIds); // list must be zero-terminated
void SetCaDescriptors(int Level);
void SetLinkChannels(cLinkChannels *LinkChannels);
diff --git a/pat.c b/pat.c
-index 9b3ded6..f4be6a6 100644
+index 9b3ded6..ff25501 100644
--- a/pat.c
+++ b/pat.c
@@ -341,6 +341,8 @@ void cPatFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
@@ -123,7 +124,7 @@ index 9b3ded6..f4be6a6 100644
}
if (Setup.UpdateChannels >= 2) {
Channel->SetPids(Vpid, Ppid, Vtype, Apids, ALangs, Dpids, DLangs, Spids, SLangs, Tpid);
-+ Channel->SetTeletextSubtitlePages(TeletextSubtitlePages);
++ Channel->SetTeletextSubtitlePages(TeletextSubtitlePages, NumTPages);
Channel->SetCaIds(CaDescriptors->CaIds());
Channel->SetSubtitlingDescriptors(SubtitlingTypes, CompositionPageIds, AncillaryPageIds);
}
@@ -141,26 +142,26 @@ index f922e98..dab95b3 100644
return true;
}
diff --git a/remux.c b/remux.c
-index 070a06a..869b6e4 100644
+index 070a06a..b5c7a06 100644
--- a/remux.c
+++ b/remux.c
@@ -215,6 +215,29 @@ int cPatPmtGenerator::MakeSubtitlingDescriptor(uchar *Target, const char *Langua
return i;
}
-+int cPatPmtGenerator::MakeTeletextDescriptor(uchar *Target, const cChannel *Channel)
++int cPatPmtGenerator::MakeTeletextDescriptor(uchar *Target, const tTeletextSubtitlePage *pages, int pageCount)
+{
+ int i = 0, j = 0;
+ Target[i++] = SI::TeletextDescriptorTag;
+ int l = i;
+ Target[i++] = 0x00; // length
-+ for (int n = 0; Channel->TeletextSubtitlePage(n).ttxtType; n++) {
-+ const char* Language = Channel->TeletextSubtitlePage(n).ttxtLanguage;
++ for (int n = 0; n < pageCount; n++) {
++ const char* Language = pages[n].ttxtLanguage;
+ Target[i++] = *Language++;
+ Target[i++] = *Language++;
+ Target[i++] = *Language++;
-+ Target[i++] = (Channel->TeletextSubtitlePage(n).ttxtType << 3) + Channel->TeletextSubtitlePage(n).ttxtMagazine;
-+ Target[i++] = Channel->TeletextSubtitlePage(n).ttxtPage;
++ Target[i++] = (pages[n].ttxtType << 3) + pages[n].ttxtMagazine;
++ Target[i++] = pages[n].ttxtPage;
+ j++;
+ }
+ if (j > 0) {
@@ -188,23 +189,40 @@ index 070a06a..869b6e4 100644
}
+ if (Tpid) {
+ i += MakeStream(buf + i, 0x06, Tpid);
-+ i += MakeTeletextDescriptor(buf + i, Channel);
++ i += MakeTeletextDescriptor(buf + i, Channel->TeletextSubtitlePages(), Channel->TotalTeletextSubtitlePages());
+ }
int sl = i - SectionLength - 2 + 4; // -2 = SectionLength storage, +4 = length of CRC
buf[SectionLength] |= (sl >> 8) & 0x0F;
+@@ -493,6 +521,7 @@ void cPatPmtParser::ParsePmt(const uchar *Data, int Length)
+ spids[0] = 0;
+ atypes[0] = 0;
+ dtypes[0] = 0;
++ totalTtxtSubtitlePages = 0;
+ SI::PMT::Stream stream;
+ for (SI::Loop::Iterator it; Pmt.streamLoop.getNext(stream, it); ) {
+ dbgpatpmt(" stream type = %02X, pid = %d", stream.getStreamType(), stream.getPid());
diff --git a/remux.h b/remux.h
-index 1115c4a..cef50d7 100644
+index 1115c4a..5ee6722 100644
--- a/remux.h
+++ b/remux.h
@@ -170,6 +170,7 @@ protected:
int MakeStream(uchar *Target, uchar Type, int Pid);
int MakeAC3Descriptor(uchar *Target);
int MakeSubtitlingDescriptor(uchar *Target, const char *Language, uchar SubtitlingType, uint16_t CompositionPageId, uint16_t AncillaryPageId);
-+ int MakeTeletextDescriptor(uchar *Target, const cChannel *Channel);
++ int MakeTeletextDescriptor(uchar *Target, const tTeletextSubtitlePage *pages, int pageCount);
int MakeLanguageDescriptor(uchar *Target, const char *Language);
int MakeCRC(uchar *Target, const uchar *Data, int Length);
void GeneratePmtPid(const cChannel *Channel);
+@@ -227,6 +228,8 @@ private:
+ uint16_t compositionPageIds[MAXSPIDS];
+ uint16_t ancillaryPageIds[MAXSPIDS];
+ bool updatePrimaryDevice;
++ int totalTtxtSubtitlePages;
++ tTeletextSubtitlePage teletextSubtitlePages[MAXTXTPAGES];
+ protected:
+ int SectionLength(const uchar *Data, int Length) { return (Length >= 3) ? ((int(Data[1]) & 0x0F) << 8)| Data[2] : 0; }
+ public:
--
1.6.5
diff --git a/patches/patch-set/0002-Added-setup-option-to-enable-teletext-subtitle-recor.patch b/patches/patch-set/0002-Added-setup-option-to-enable-teletext-subtitle-recor.patch
index 2c49115..cbd957c 100644
--- a/patches/patch-set/0002-Added-setup-option-to-enable-teletext-subtitle-recor.patch
+++ b/patches/patch-set/0002-Added-setup-option-to-enable-teletext-subtitle-recor.patch
@@ -1,4 +1,4 @@
-From 53a2a588490c058bb2a907d00dad88927bec4618 Mon Sep 17 00:00:00 2001
+From 16a350dcad8b81dda4b0326d327af8a01628a48b Mon Sep 17 00:00:00 2001
From: etobi <git@e-tobi.net>
Date: Sat, 13 Feb 2010 14:42:30 +0100
Subject: [PATCH 2/6] Added setup option to enable teletext subtitle recording
@@ -11,7 +11,7 @@ Subject: [PATCH 2/6] Added setup option to enable teletext subtitle recording
po/ca_ES.po | 5 ++++-
po/cs_CZ.po | 5 ++++-
po/da_DK.po | 5 ++++-
- po/de_DE.po | 5 ++++-
+ po/de_DE.po | 7 +++++--
po/el_GR.po | 5 ++++-
po/es_ES.po | 5 ++++-
po/et_EE.po | 5 ++++-
@@ -34,7 +34,7 @@ Subject: [PATCH 2/6] Added setup option to enable teletext subtitle recording
po/uk_UA.po | 5 ++++-
po/zh_CN.po | 5 ++++-
receiver.c | 3 ++-
- 30 files changed, 110 insertions(+), 26 deletions(-)
+ 30 files changed, 111 insertions(+), 27 deletions(-)
diff --git a/MANUAL b/MANUAL
index 405f6a8..d1ce1f9 100644
@@ -51,14 +51,14 @@ index 405f6a8..d1ce1f9 100644
SLOF = 11700 The switching frequency (in MHz) between low and
diff --git a/config.c b/config.c
-index acdf4c4..4aaf720 100644
+index acdf4c4..29377d9 100644
--- a/config.c
+++ b/config.c
@@ -333,6 +333,7 @@ cSetup::cSetup(void)
MarginStop = 10;
AudioLanguages[0] = -1;
DisplaySubtitles = 0;
-+ RecordTtxtSubtitles = 0;
++ SupportTeletext = 0;
SubtitleLanguages[0] = -1;
SubtitleOffset = 0;
SubtitleFgTransparency = 0;
@@ -66,7 +66,7 @@ index acdf4c4..4aaf720 100644
else if (!strcasecmp(Name, "MarginStop")) MarginStop = atoi(Value);
else if (!strcasecmp(Name, "AudioLanguages")) return ParseLanguages(Value, AudioLanguages);
else if (!strcasecmp(Name, "DisplaySubtitles")) DisplaySubtitles = atoi(Value);
-+ else if (!strcasecmp(Name, "RecordTtxtSubtitles")) RecordTtxtSubtitles = atoi(Value);
++ else if (!strcasecmp(Name, "SupportTeletext")) SupportTeletext = atoi(Value);
else if (!strcasecmp(Name, "SubtitleLanguages")) return ParseLanguages(Value, SubtitleLanguages);
else if (!strcasecmp(Name, "SubtitleOffset")) SubtitleOffset = atoi(Value);
else if (!strcasecmp(Name, "SubtitleFgTransparency")) SubtitleFgTransparency = atoi(Value);
@@ -74,36 +74,36 @@ index acdf4c4..4aaf720 100644
Store("MarginStop", MarginStop);
StoreLanguages("AudioLanguages", AudioLanguages);
Store("DisplaySubtitles", DisplaySubtitles);
-+ Store("RecordTtxtSubtitles", RecordTtxtSubtitles);
++ Store("SupportTeletext", SupportTeletext);
StoreLanguages("SubtitleLanguages", SubtitleLanguages);
Store("SubtitleOffset", SubtitleOffset);
Store("SubtitleFgTransparency", SubtitleFgTransparency);
diff --git a/config.h b/config.h
-index be1d7bd..5dcbe20 100644
+index be1d7bd..e7b094d 100644
--- a/config.h
+++ b/config.h
@@ -235,6 +235,7 @@ public:
int MarginStart, MarginStop;
int AudioLanguages[I18N_MAX_LANGUAGES + 1];
int DisplaySubtitles;
-+ int RecordTtxtSubtitles;
++ int SupportTeletext;
int SubtitleLanguages[I18N_MAX_LANGUAGES + 1];
int SubtitleOffset;
int SubtitleFgTransparency, SubtitleBgTransparency;
diff --git a/menu.c b/menu.c
-index 7ddf0cf..1f49f3d 100644
+index 7ddf0cf..35fa9c3 100644
--- a/menu.c
+++ b/menu.c
@@ -2790,6 +2790,7 @@ void cMenuSetupDVB::Setup(void)
Add(new cMenuEditIntItem( tr("Setup.DVB$Subtitle foreground transparency"), &data.SubtitleFgTransparency, 0, 9));
Add(new cMenuEditIntItem( tr("Setup.DVB$Subtitle background transparency"), &data.SubtitleBgTransparency, 0, 10));
}
-+ Add(new cMenuEditBoolItem(tr("Setup.DVB$Record Teletext Subtitles"), &data.RecordTtxtSubtitles));
++ Add(new cMenuEditBoolItem(tr("Setup.DVB$Enable teletext support"), &data.SupportTeletext));
SetCurrent(Get(current));
Display();
diff --git a/po/ca_ES.po b/po/ca_ES.po
-index fcdf672..1197fe1 100644
+index fcdf672..cc137c0 100644
--- a/po/ca_ES.po
+++ b/po/ca_ES.po
@@ -10,7 +10,7 @@ msgid ""
@@ -111,7 +111,7 @@ index fcdf672..1197fe1 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2008-03-02 19:02+0100\n"
"Last-Translator: Luca Olivetti <luca@ventoso.org>\n"
"Language-Team: Catalanian\n"
@@ -119,14 +119,14 @@ index fcdf672..1197fe1 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Transparncia fons subttols"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "Configuraci de l'LNB"
diff --git a/po/cs_CZ.po b/po/cs_CZ.po
-index 3bbd6eb..c15fc13 100644
+index 3bbd6eb..9802516 100644
--- a/po/cs_CZ.po
+++ b/po/cs_CZ.po
@@ -8,7 +8,7 @@ msgid ""
@@ -134,7 +134,7 @@ index 3bbd6eb..c15fc13 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2008-02-28 15:00+0200\n"
"Last-Translator: Vladimr Brta <vladimir.barta@k2atmitec.cz>, Ji Dobr <jdobry@centrum.cz>\n"
"Language-Team: Czech\n"
@@ -142,14 +142,14 @@ index 3bbd6eb..c15fc13 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Prhlednost pozad titulk"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/da_DK.po b/po/da_DK.po
-index fbad909..3416080 100644
+index fbad909..740486d 100644
--- a/po/da_DK.po
+++ b/po/da_DK.po
@@ -7,7 +7,7 @@ msgid ""
@@ -157,7 +157,7 @@ index fbad909..3416080 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
"Last-Translator: Mogens Elneff <mogens@elneff.dk>\n"
"Language-Team: Danish\n"
@@ -165,37 +165,39 @@ index fbad909..3416080 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Undertekst baggrundsgennemsigtighed"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/de_DE.po b/po/de_DE.po
-index ad6401b..775fd30 100644
+index ad6401b..8e93111 100644
--- a/po/de_DE.po
+++ b/po/de_DE.po
-@@ -7,7 +7,7 @@ msgid ""
+@@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
- "PO-Revision-Date: 2010-01-16 16:46+0100\n"
+-"PO-Revision-Date: 2010-01-16 16:46+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
++"PO-Revision-Date: 2010-02-14 17:50+0100\n"
"Last-Translator: Klaus Schmidinger <kls@tvdr.de>\n"
"Language-Team: German\n"
+ "MIME-Version: 1.0\n"
@@ -931,6 +931,9 @@ msgstr "Untertitel-Transparenz Vordergrund"
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Untertitel-Transparenz Hintergrund"
-+msgid "Setup.DVB$Record Teletext Subtitles"
-+msgstr "Teletext-Untertitel aufnehmen"
++msgid "Setup.DVB$Enable teletext support"
++msgstr "Videotext-Untersttzung aktivieren"
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/el_GR.po b/po/el_GR.po
-index e8382b8..741cb4a 100644
+index e8382b8..72d966a 100644
--- a/po/el_GR.po
+++ b/po/el_GR.po
@@ -7,7 +7,7 @@ msgid ""
@@ -203,7 +205,7 @@ index e8382b8..741cb4a 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
"Last-Translator: Dimitrios Dimitrakos <mail@dimitrios.de>\n"
"Language-Team: Greek\n"
@@ -211,14 +213,14 @@ index e8382b8..741cb4a 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr ""
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/es_ES.po b/po/es_ES.po
-index d2bf5b0..0515348 100644
+index d2bf5b0..0eb591e 100644
--- a/po/es_ES.po
+++ b/po/es_ES.po
@@ -8,7 +8,7 @@ msgid ""
@@ -226,7 +228,7 @@ index d2bf5b0..0515348 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2008-03-02 19:02+0100\n"
"Last-Translator: Luca Olivetti <luca@ventoso.org>\n"
"Language-Team: Spanish\n"
@@ -234,14 +236,14 @@ index d2bf5b0..0515348 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Transparencia fondo subttulos"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/et_EE.po b/po/et_EE.po
-index 97e2aee..72a95ae 100644
+index 97e2aee..4d8e612 100644
--- a/po/et_EE.po
+++ b/po/et_EE.po
@@ -7,7 +7,7 @@ msgid ""
@@ -249,7 +251,7 @@ index 97e2aee..72a95ae 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
"Last-Translator: Arthur Konovalov <artlov@gmail.com>\n"
"Language-Team: Estonian\n"
@@ -257,14 +259,14 @@ index 97e2aee..72a95ae 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Subtiitri tausta lbipaistvus"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/fi_FI.po b/po/fi_FI.po
-index 916b51e..372a1a2 100644
+index 916b51e..034de64 100644
--- a/po/fi_FI.po
+++ b/po/fi_FI.po
@@ -10,7 +10,7 @@ msgid ""
@@ -272,7 +274,7 @@ index 916b51e..372a1a2 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2007-08-15 15:52+0200\n"
"Last-Translator: Rolf Ahrenberg <rahrenbe@cc.hut.fi>\n"
"Language-Team: Finnish\n"
@@ -280,14 +282,14 @@ index 916b51e..372a1a2 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Tekstityksen taustan lpinkyvyys"
-+msgid "Setup.DVB$Record Teletext Subtitles"
-+msgstr ""
++msgid "Setup.DVB$Enable teletext support"
++msgstr "Salli teksti-TV-tuki"
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/fr_FR.po b/po/fr_FR.po
-index 4c4dcce..8ebfd3e 100644
+index 4c4dcce..dc35127 100644
--- a/po/fr_FR.po
+++ b/po/fr_FR.po
@@ -13,7 +13,7 @@ msgid ""
@@ -295,7 +297,7 @@ index 4c4dcce..8ebfd3e 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2008-02-27 18:14+0100\n"
"Last-Translator: Jean-Claude Repetto <jc@repetto.org>\n"
"Language-Team: French\n"
@@ -303,14 +305,14 @@ index 4c4dcce..8ebfd3e 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Transparence du fond"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/hr_HR.po b/po/hr_HR.po
-index b7cf5a0..d769dc1 100644
+index b7cf5a0..b04cbb5 100644
--- a/po/hr_HR.po
+++ b/po/hr_HR.po
@@ -9,7 +9,7 @@ msgid ""
@@ -318,7 +320,7 @@ index b7cf5a0..d769dc1 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2008-03-17 19:00+0100\n"
"Last-Translator: Adrian Caval <anrxc@sysphere.org>\n"
"Language-Team: Croatian\n"
@@ -326,14 +328,14 @@ index b7cf5a0..d769dc1 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Transparentnost pozadine titla"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/hu_HU.po b/po/hu_HU.po
-index d09c8dd..e2b9364 100644
+index d09c8dd..570efbb 100644
--- a/po/hu_HU.po
+++ b/po/hu_HU.po
@@ -10,7 +10,7 @@ msgid ""
@@ -341,7 +343,7 @@ index d09c8dd..e2b9364 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2007-12-01 21:42+0200\n"
"Last-Translator: Istvn Fley <ifuley@tigercomp.ro>\n"
"Language-Team: Hungarian\n"
@@ -349,14 +351,14 @@ index d09c8dd..e2b9364 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Felirat htternek transzparencija"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/it_IT.po b/po/it_IT.po
-index 3a8f2e2..41335d8 100644
+index 3a8f2e2..48d9f14 100644
--- a/po/it_IT.po
+++ b/po/it_IT.po
@@ -11,7 +11,7 @@ msgid ""
@@ -364,7 +366,7 @@ index 3a8f2e2..41335d8 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2010-01-12 23:53+0100\n"
"Last-Translator: Diego Pierotto <vdr-italian@tiscali.it>\n"
"Language-Team: Italian\n"
@@ -372,14 +374,14 @@ index 3a8f2e2..41335d8 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Trasparenza sfondo sottotitoli"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/lt_LT.po b/po/lt_LT.po
-index 93583c5..2b55e82 100644
+index 93583c5..a9370f5 100644
--- a/po/lt_LT.po
+++ b/po/lt_LT.po
@@ -7,7 +7,7 @@ msgid ""
@@ -387,7 +389,7 @@ index 93583c5..2b55e82 100644
"Project-Id-Version: VDR 1.7.9\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2009-10-17 14:19+0200\n"
"Last-Translator: Valdemaras Pipiras <varas@ambernet.lt>\n"
"Language-Team: Lithuanian\n"
@@ -395,14 +397,14 @@ index 93583c5..2b55e82 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Subtitrų fono permatomumas"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "Konverteris (LNB)"
diff --git a/po/nl_NL.po b/po/nl_NL.po
-index fdfaf8d..56523f4 100644
+index fdfaf8d..68de220 100644
--- a/po/nl_NL.po
+++ b/po/nl_NL.po
@@ -11,7 +11,7 @@ msgid ""
@@ -410,7 +412,7 @@ index fdfaf8d..56523f4 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2008-02-26 17:20+0100\n"
"Last-Translator: Johan Schuring <johan.schuring@vetteblei.nl>\n"
"Language-Team: Dutch\n"
@@ -418,14 +420,14 @@ index fdfaf8d..56523f4 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Transparantie achtergrond ondertiteling"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/nn_NO.po b/po/nn_NO.po
-index 1f50117..3e492ad 100644
+index 1f50117..2e08b7e 100644
--- a/po/nn_NO.po
+++ b/po/nn_NO.po
@@ -8,7 +8,7 @@ msgid ""
@@ -433,7 +435,7 @@ index 1f50117..3e492ad 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
"Last-Translator: Truls Slevigen <truls@slevigen.no>\n"
"Language-Team: Norwegian\n"
@@ -441,14 +443,14 @@ index 1f50117..3e492ad 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr ""
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/pl_PL.po b/po/pl_PL.po
-index 038d058..e99d90e 100644
+index 038d058..70335d2 100644
--- a/po/pl_PL.po
+++ b/po/pl_PL.po
@@ -8,7 +8,7 @@ msgid ""
@@ -456,7 +458,7 @@ index 038d058..e99d90e 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2008-03-09 12:59+0100\n"
"Last-Translator: Michael Rakowski <mrak@gmx.de>\n"
"Language-Team: Polish\n"
@@ -464,14 +466,14 @@ index 038d058..e99d90e 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Przerocze podtytuw: To"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/pt_PT.po b/po/pt_PT.po
-index e409581..f795bae 100644
+index e409581..c9ea089 100644
--- a/po/pt_PT.po
+++ b/po/pt_PT.po
@@ -7,7 +7,7 @@ msgid ""
@@ -479,7 +481,7 @@ index e409581..f795bae 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2008-03-18 17:04+0100\n"
"Last-Translator: anonymous\n"
"Language-Team: Portuguese\n"
@@ -487,14 +489,14 @@ index e409581..f795bae 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Transparncia de background das legendas"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/ro_RO.po b/po/ro_RO.po
-index f52a7d8..c857472 100644
+index f52a7d8..a4714f6 100644
--- a/po/ro_RO.po
+++ b/po/ro_RO.po
@@ -8,7 +8,7 @@ msgid ""
@@ -502,7 +504,7 @@ index f52a7d8..c857472 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2008-02-25 00:39+0100\n"
"Last-Translator: Lucian Muresan <lucianm@users.sourceforge.net>\n"
"Language-Team: Romanian\n"
@@ -510,14 +512,14 @@ index f52a7d8..c857472 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Transparena fundalului subtitrrii"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/ru_RU.po b/po/ru_RU.po
-index c6d6aca..e55f00d 100644
+index c6d6aca..8c7907e 100644
--- a/po/ru_RU.po
+++ b/po/ru_RU.po
@@ -8,7 +8,7 @@ msgid ""
@@ -525,7 +527,7 @@ index c6d6aca..e55f00d 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2008-12-15 14:37+0100\n"
"Last-Translator: Oleg Roitburd <oleg@roitburd.de>\n"
"Language-Team: Russian\n"
@@ -533,14 +535,14 @@ index c6d6aca..e55f00d 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr " "
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr ""
diff --git a/po/sk_SK.po b/po/sk_SK.po
-index c66132a..44b0833 100644
+index c66132a..8414523 100644
--- a/po/sk_SK.po
+++ b/po/sk_SK.po
@@ -8,7 +8,7 @@ msgid ""
@@ -548,7 +550,7 @@ index c66132a..44b0833 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2009-09-30 12:50+0100\n"
"Last-Translator: Milan Hrala <hrala.milan@gmail.com>\n"
"Language-Team: Slovak\n"
@@ -556,14 +558,14 @@ index c66132a..44b0833 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Priehadnos pozadia titulkov"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/sl_SI.po b/po/sl_SI.po
-index 2c20440..2bd42ea 100644
+index 2c20440..1682a16 100644
--- a/po/sl_SI.po
+++ b/po/sl_SI.po
@@ -8,7 +8,7 @@ msgid ""
@@ -571,7 +573,7 @@ index 2c20440..2bd42ea 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2008-02-28 19:44+0100\n"
"Last-Translator: Matjaz Thaler <matjaz.thaler@guest.arnes.si>\n"
"Language-Team: Slovenian\n"
@@ -579,14 +581,14 @@ index 2c20440..2bd42ea 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Transparentnost ozadja podnapisov"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/sv_SE.po b/po/sv_SE.po
-index 4ac9a0f..1cceb44 100644
+index 4ac9a0f..1f55853 100644
--- a/po/sv_SE.po
+++ b/po/sv_SE.po
@@ -10,7 +10,7 @@ msgid ""
@@ -594,7 +596,7 @@ index 4ac9a0f..1cceb44 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2008-03-12 18:25+0100\n"
"Last-Translator: Magnus Andersson <svankan@bahnhof.se>\n"
"Language-Team: Swedish\n"
@@ -602,14 +604,14 @@ index 4ac9a0f..1cceb44 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Transparent bakgrund textremsa"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/tr_TR.po b/po/tr_TR.po
-index 02a9642..73fec22 100644
+index 02a9642..abce6da 100644
--- a/po/tr_TR.po
+++ b/po/tr_TR.po
@@ -7,7 +7,7 @@ msgid ""
@@ -617,7 +619,7 @@ index 02a9642..73fec22 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2008-02-28 00:33+0100\n"
"Last-Translator: Oktay Yolgeen <oktay_73@yahoo.de>\n"
"Language-Team: Turkish\n"
@@ -625,14 +627,14 @@ index 02a9642..73fec22 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Altyaz arka effaflk"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "LNB"
diff --git a/po/uk_UA.po b/po/uk_UA.po
-index 7e3010c..37e1f64 100644
+index 7e3010c..d52f3ea 100644
--- a/po/uk_UA.po
+++ b/po/uk_UA.po
@@ -7,7 +7,7 @@ msgid ""
@@ -640,7 +642,7 @@ index 7e3010c..37e1f64 100644
"Project-Id-Version: VDR 1.7.7\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2009-05-31 13:17+0200\n"
"Last-Translator: Yarema aka Knedlyk <yupadmin@gmail.com>\n"
"Language-Team: Ukrainian\n"
@@ -648,14 +650,14 @@ index 7e3010c..37e1f64 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "Прозорість заднього плану субтитрів"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "Конвертер"
diff --git a/po/zh_CN.po b/po/zh_CN.po
-index 1d12f71..2969540 100644
+index 1d12f71..482b487 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -7,7 +7,7 @@ msgid ""
@@ -663,7 +665,7 @@ index 1d12f71..2969540 100644
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-01-17 16:18+0100\n"
-+"POT-Creation-Date: 2010-02-13 14:31+0100\n"
++"POT-Creation-Date: 2010-02-14 17:47+0100\n"
"PO-Revision-Date: 2009-09-23 23:50+0800\n"
"Last-Translator: Nan Feng <nfgx@21cn.com>\n"
"Language-Team: Chinese\n"
@@ -671,14 +673,14 @@ index 1d12f71..2969540 100644
msgid "Setup.DVB$Subtitle background transparency"
msgstr "字幕背景透明度"
-+msgid "Setup.DVB$Record Teletext Subtitles"
++msgid "Setup.DVB$Enable teletext support"
+msgstr ""
+
msgid "LNB"
msgstr "切换器设置"
diff --git a/receiver.c b/receiver.c
-index dab95b3..4403410 100644
+index dab95b3..8bfb36e 100644
--- a/receiver.c
+++ b/receiver.c
@@ -82,7 +82,8 @@ bool cReceiver::SetPids(const cChannel *Channel)
@@ -687,7 +689,7 @@ index dab95b3..4403410 100644
(!Setup.UseDolbyDigital || AddPids(Channel->Dpids())) &&
- AddPids(Channel->Spids()) && AddPid(Channel->Tpid());
+ AddPids(Channel->Spids()) &&
-+ (!Setup.RecordTtxtSubtitles || AddPid(Channel->Tpid()));
++ (!Setup.SupportTeletext || AddPid(Channel->Tpid()));
}
return true;
}
diff --git a/patches/patch-set/0003-Allow-manual-configuration-of-teletetxt-subtitle-pag.patch b/patches/patch-set/0003-Allow-manual-configuration-of-teletetxt-subtitle-pag.patch
index 300282b..30094b2 100644
--- a/patches/patch-set/0003-Allow-manual-configuration-of-teletetxt-subtitle-pag.patch
+++ b/patches/patch-set/0003-Allow-manual-configuration-of-teletetxt-subtitle-pag.patch
@@ -1,28 +1,27 @@
-From f33ffd78393792ba23c4ee48b3543e182663dc97 Mon Sep 17 00:00:00 2001
+From 578e95faa4f0724c664418587a756590a2947f26 Mon Sep 17 00:00:00 2001
From: etobi <git@e-tobi.net>
Date: Fri, 12 Feb 2010 21:56:41 +0100
Subject: [PATCH 3/6] Allow manual configuration of teletetxt subtitle pages in channels.conf
---
- channels.c | 49 +++++++++++++++++++++++++++++++++++++++++++++----
+ channels.c | 49 ++++++++++++++++++++++++++++++++++++++++++++++---
channels.h | 1 +
vdr.5 | 7 +++++++
- 3 files changed, 53 insertions(+), 4 deletions(-)
+ 3 files changed, 54 insertions(+), 3 deletions(-)
diff --git a/channels.c b/channels.c
-index 817b7d3..aaaea30 100644
+index 08ddf3e..0e23389 100644
--- a/channels.c
+++ b/channels.c
-@@ -553,7 +553,7 @@ void cChannel::SetSubtitlingDescriptors(uchar *SubtitlingTypes, uint16_t *Compos
+@@ -553,6 +553,7 @@ void cChannel::SetSubtitlingDescriptors(uchar *SubtitlingTypes, uint16_t *Compos
- void cChannel::SetTeletextSubtitlePages(tTeletextSubtitlePage pages[])
+ void cChannel::SetTeletextSubtitlePages(tTeletextSubtitlePage pages[], int numberOfPages)
{
-- for (int i = 0; i < MAXTXTPAGES; i++)
-+ for (int i = fixedTeletextSubtitlePages; i < MAXTXTPAGES; i++)
- teletextSubtitlePages[i] = pages[i];
- teletextSubtitlePages[MAXTXTPAGES].ttxtType = 0;
++ totalTtxtSubtitlePages = fixedTtxtSubtitlePages;
+ for (int i = 0; (i < numberOfPages) && (totalTtxtSubtitlePages < MAXTXTPAGES); i++)
+ teletextSubtitlePages[totalTtxtSubtitlePages++] = pages[i];
}
-@@ -765,11 +765,22 @@ cString cChannel::ToText(const cChannel *Channel)
+@@ -764,11 +765,22 @@ cString cChannel::ToText(const cChannel *Channel)
q += IntArrayToString(q, Channel->dpids, 10, Channel->dlangs);
}
*q = 0;
@@ -30,9 +29,9 @@ index 817b7d3..aaaea30 100644
+ char tpidbuf[TBufferSize];
+ q = tpidbuf;
+ q += snprintf(q, sizeof(tpidbuf), "%d", Channel->tpid);
-+ if (Channel->fixedTeletextSubtitlePages > 0) {
++ if (Channel->fixedTtxtSubtitlePages > 0) {
+ q += snprintf(q, sizeof(tpidbuf) - (q - tpidbuf), ";");
-+ for (int i = 0; i < Channel->fixedTeletextSubtitlePages; ++i) {
++ for (int i = 0; i < Channel->fixedTtxtSubtitlePages; ++i) {
+ tTeletextSubtitlePage page = Channel->teletextSubtitlePages[i];
+ q += snprintf(q, sizeof(tpidbuf) - (q - tpidbuf), "%d=%s", page.PageNumber(), page.ttxtLanguage);
+ }
@@ -46,7 +45,7 @@ index 817b7d3..aaaea30 100644
}
return buffer;
}
-@@ -803,8 +814,9 @@ bool cChannel::Parse(const char *s)
+@@ -802,8 +814,9 @@ bool cChannel::Parse(const char *s)
char *parambuf = NULL;
char *vpidbuf = NULL;
char *apidbuf = NULL;
@@ -57,27 +56,28 @@ index 817b7d3..aaaea30 100644
if (fields >= 9) {
if (fields == 9) {
// allow reading of old format
-@@ -886,7 +898,35 @@ bool cChannel::Parse(const char *s)
+@@ -885,7 +898,36 @@ bool cChannel::Parse(const char *s)
}
dpids[NumDpids] = 0;
}
-
+ if (tpidbuf) {
+ char *p;
-+ fixedTeletextSubtitlePages = 0;
++ fixedTtxtSubtitlePages = 0;
+ // 2001;150=deu,151=fin
+ if ((p = strchr(tpidbuf, ';')) != NULL) {
+ char *q, *strtok_next;
+ *p++ = 0;
+ while ((q = strtok_r(p, ",", &strtok_next)) != NULL) {
-+ if (fixedTeletextSubtitlePages < MAXTXTPAGES) {
++ if (fixedTtxtSubtitlePages < MAXTXTPAGES) {
+ int page;
+ char *l = strchr(q, '=');
+ if (l)
+ *l++ = 0;
+ if (sscanf(q, "%d", &page) == 1) {
-+ teletextSubtitlePages[fixedTeletextSubtitlePages++] = tTeletextSubtitlePage(page);
-+ strn0cpy(teletextSubtitlePages[fixedTeletextSubtitlePages].ttxtLanguage, l ? l : "und", MAXLANGCODE1);
++ teletextSubtitlePages[fixedTtxtSubtitlePages++] = tTeletextSubtitlePage(page);
++ if (l)
++ strn0cpy(teletextSubtitlePages[fixedTtxtSubtitlePages].ttxtLanguage, l, MAXLANGCODE1);
+ }
+ else
+ esyslog("ERROR: invalid Teletext page!"); // no need to set ok to 'false'
@@ -86,7 +86,7 @@ index 817b7d3..aaaea30 100644
+ esyslog("ERROR: too many Teletext pages!"); // no need to set ok to 'false'
+ p = NULL;
+ }
-+ teletextSubtitlePages[fixedTeletextSubtitlePages].ttxtType = 0; // end of list
++ totalTtxtSubtitlePages = fixedTtxtSubtitlePages;
+ }
+ if (sscanf(tpidbuf, "%d", &tpid) != 1)
+ return false;
@@ -94,7 +94,7 @@ index 817b7d3..aaaea30 100644
if (caidbuf) {
char *p = caidbuf;
char *q;
-@@ -923,6 +963,7 @@ bool cChannel::Parse(const char *s)
+@@ -922,6 +964,7 @@ bool cChannel::Parse(const char *s)
free(sourcebuf);
free(vpidbuf);
free(apidbuf);
@@ -103,17 +103,17 @@ index 817b7d3..aaaea30 100644
free(namebuf);
if (!GetChannelID().Valid()) {
diff --git a/channels.h b/channels.h
-index 18ed7c6..1ddef40 100644
+index acb346e..c61f770 100644
--- a/channels.h
+++ b/channels.h
@@ -144,6 +144,7 @@ private:
uint16_t compositionPageIds[MAXSPIDS];
uint16_t ancillaryPageIds[MAXSPIDS];
int tpid;
-+ int fixedTeletextSubtitlePages;
- tTeletextSubtitlePage teletextSubtitlePages[MAXTXTPAGES + 1]; // list is termintated by ttxtType=0
++ int fixedTtxtSubtitlePages;
+ int totalTtxtSubtitlePages;
+ tTeletextSubtitlePage teletextSubtitlePages[MAXTXTPAGES];
int caids[MAXCAIDS + 1]; // list is zero-terminated
- int nid;
diff --git a/vdr.5 b/vdr.5
index 4b2cb90..c7da844 100644
--- a/vdr.5
diff --git a/patches/patch-set/0004-Decrypt-teletext-stream.patch b/patches/patch-set/0004-Decrypt-teletext-stream.patch
index 7eb732f..04ce9c6 100644
--- a/patches/patch-set/0004-Decrypt-teletext-stream.patch
+++ b/patches/patch-set/0004-Decrypt-teletext-stream.patch
@@ -1,21 +1,30 @@
-From 047e1fc5c4e7f6b4b987f3d19dba963d60126d55 Mon Sep 17 00:00:00 2001
+From 40f30d2e5ab735443071c61b5458b1d4fe9f5f89 Mon Sep 17 00:00:00 2001
From: etobi <git@e-tobi.net>
Date: Sun, 14 Feb 2010 01:30:34 +0100
Subject: [PATCH 4/6] Decrypt teletext stream
---
- ci.c | 3 +++
- 1 files changed, 3 insertions(+), 0 deletions(-)
+ ci.c | 5 +++++
+ 1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/ci.c b/ci.c
-index 6c7b031..f158a18 100644
+index 6c7b031..22fda9f 100644
--- a/ci.c
+++ b/ci.c
-@@ -1932,6 +1932,9 @@ bool cCamSlot::CanDecrypt(const cChannel *Channel)
+@@ -1911,6 +1911,8 @@ void cCamSlot::AddChannel(const cChannel *Channel)
+ AddPid(Channel->Sid(), *Apid, STREAM_TYPE_AUDIO);
+ for (const int *Dpid = Channel->Dpids(); *Dpid; Dpid++)
+ AddPid(Channel->Sid(), *Dpid, STREAM_TYPE_DOLBY);
++ if (Channel->Tpid() && Setup.SupportTeletext)
++ AddPid(Channel->Sid(), Channel->Tpid(), STREAM_TYPE_DOLBY);
+ }
+ }
+
+@@ -1932,6 +1934,9 @@ bool cCamSlot::CanDecrypt(const cChannel *Channel)
CaPmt.AddPid(*Apid, STREAM_TYPE_AUDIO);
for (const int *Dpid = Channel->Dpids(); *Dpid; Dpid++)
CaPmt.AddPid(*Dpid, STREAM_TYPE_DOLBY);
-+ if (Channel->Tpid() && Setup.RecordTtxtSubtitles) {
++ if (Channel->Tpid() && Setup.SupportTeletext) {
+ CaPmt.AddPid(Channel->Tpid(), STREAM_TYPE_DOLBY); // FIXME: STREAM_TYPE_DOLBY should probably be renamed STREAM_TYPE_PRIVATE
+ }
cas->SendPMT(&CaPmt);
diff --git a/patches/patch-set/0005-Capture-teletext-subtitle-pages-from-PMT.patch b/patches/patch-set/0005-Capture-teletext-subtitle-pages-from-PMT.patch
index 91b57c3..3acdd15 100644
--- a/patches/patch-set/0005-Capture-teletext-subtitle-pages-from-PMT.patch
+++ b/patches/patch-set/0005-Capture-teletext-subtitle-pages-from-PMT.patch
@@ -1,15 +1,15 @@
-From cd69cfb12c691834710beb346527920b8802552e Mon Sep 17 00:00:00 2001
+From c53754118c53807da2b62d3bb985bfd1e2bd0197 Mon Sep 17 00:00:00 2001
From: etobi <git@e-tobi.net>
Date: Fri, 12 Feb 2010 22:06:19 +0100
Subject: [PATCH 5/6] Capture teletext subtitle pages from PMT
---
- remux.c | 26 ++++++++++++++++++++++++++
- remux.h | 6 ++++++
- 2 files changed, 32 insertions(+), 0 deletions(-)
+ remux.c | 24 ++++++++++++++++++++++++
+ remux.h | 5 +++++
+ 2 files changed, 29 insertions(+), 0 deletions(-)
diff --git a/remux.c b/remux.c
-index 869b6e4..24fcbd3 100644
+index b5c7a06..ead63ea 100644
--- a/remux.c
+++ b/remux.c
@@ -431,6 +431,7 @@ void cPatPmtParser::Reset(void)
@@ -20,18 +20,15 @@ index 869b6e4..24fcbd3 100644
}
void cPatPmtParser::ParsePat(const uchar *Data, int Length)
-@@ -514,8 +515,10 @@ void cPatPmtParser::ParsePmt(const uchar *Data, int Length)
- int NumApids = 0;
- int NumDpids = 0;
+@@ -516,6 +517,7 @@ void cPatPmtParser::ParsePmt(const uchar *Data, int Length)
int NumSpids = 0;
-+ int NumTPages = 0;
vpid = vtype = 0;
ppid = 0;
+ tpid = 0;
apids[0] = 0;
dpids[0] = 0;
spids[0] = 0;
-@@ -614,6 +617,29 @@ void cPatPmtParser::ParsePmt(const uchar *Data, int Length)
+@@ -615,6 +617,28 @@ void cPatPmtParser::ParsePmt(const uchar *Data, int Length)
spids[NumSpids]= 0;
}
break;
@@ -40,21 +37,20 @@ index 869b6e4..24fcbd3 100644
+ tpid = stream.getPid();
+ SI::TeletextDescriptor *sd = (SI::TeletextDescriptor *)d;
+ SI::TeletextDescriptor::Teletext ttxt;
-+ if (NumTPages < MAXTXTPAGES) {
++ if (totalTtxtSubtitlePages < MAXTXTPAGES) {
+ for (SI::Loop::Iterator it; sd->teletextLoop.getNext(ttxt, it); ) {
+ bool isSubtitlePage = (ttxt.getTeletextType() == 0x02) || (ttxt.getTeletextType() == 0x05);
+ if (isSubtitlePage && ttxt.languageCode[0]) {
+ dbgpatpmt(" '%s:%x.%x'", ttxt.languageCode, ttxt.getTeletextMagazineNumber(), ttxt.getTeletextPageNumber());
-+ strn0cpy(teletextSubtitlePages[NumTPages].ttxtLanguage, I18nNormalizeLanguageCode(ttxt.languageCode), MAXLANGCODE1);
-+ teletextSubtitlePages[NumTPages].ttxtPage = ttxt.getTeletextPageNumber();
-+ teletextSubtitlePages[NumTPages].ttxtMagazine = ttxt.getTeletextMagazineNumber();
-+ teletextSubtitlePages[NumTPages].ttxtType = ttxt.getTeletextType();
-+ NumTPages++;
-+ if (NumTPages >= MAXTXTPAGES)
++ strn0cpy(teletextSubtitlePages[totalTtxtSubtitlePages].ttxtLanguage, I18nNormalizeLanguageCode(ttxt.languageCode), MAXLANGCODE1);
++ teletextSubtitlePages[totalTtxtSubtitlePages].ttxtPage = ttxt.getTeletextPageNumber();
++ teletextSubtitlePages[totalTtxtSubtitlePages].ttxtMagazine = ttxt.getTeletextMagazineNumber();
++ teletextSubtitlePages[totalTtxtSubtitlePages].ttxtType = ttxt.getTeletextType();
++ totalTtxtSubtitlePages++;
++ if (totalTtxtSubtitlePages >= MAXTXTPAGES)
+ break;
+ }
+ }
-+ teletextSubtitlePages[NumTPages].ttxtType = 0; // indicates end of list
+ }
+ }
+ break;
@@ -62,7 +58,7 @@ index 869b6e4..24fcbd3 100644
SI::ISO639LanguageDescriptor *ld = (SI::ISO639LanguageDescriptor *)d;
dbgpatpmt(" '%s'", ld->languageCode);
diff --git a/remux.h b/remux.h
-index cef50d7..43809fc 100644
+index 5ee6722..390236a 100644
--- a/remux.h
+++ b/remux.h
@@ -216,6 +216,7 @@ private:
@@ -73,15 +69,7 @@ index cef50d7..43809fc 100644
int apids[MAXAPIDS + 1]; // list is zero-terminated
int atypes[MAXAPIDS + 1]; // list is zero-terminated
char alangs[MAXAPIDS][MAXLANGCODE2];
-@@ -228,6 +229,7 @@ private:
- uint16_t compositionPageIds[MAXSPIDS];
- uint16_t ancillaryPageIds[MAXSPIDS];
- bool updatePrimaryDevice;
-+ tTeletextSubtitlePage teletextSubtitlePages[MAXTXTPAGES + 1]; // list is zero-terminated
- protected:
- int SectionLength(const uchar *Data, int Length) { return (Length >= 3) ? ((int(Data[1]) & 0x0F) << 8)| Data[2] : 0; }
- public:
-@@ -260,6 +262,9 @@ public:
+@@ -262,6 +263,9 @@ public:
int Vtype(void) const { return vtype; }
///< Returns the video stream type as defined by the current PMT, or 0 if no video
///< stream type has been detected, yet.
@@ -91,7 +79,7 @@ index cef50d7..43809fc 100644
const int *Apids(void) const { return apids; }
const int *Dpids(void) const { return dpids; }
const int *Spids(void) const { return spids; }
-@@ -274,6 +279,7 @@ public:
+@@ -276,6 +280,7 @@ public:
uchar SubtitlingType(int i) const { return (0 <= i && i < MAXSPIDS) ? subtitlingTypes[i] : uchar(0); }
uint16_t CompositionPageId(int i) const { return (0 <= i && i < MAXSPIDS) ? compositionPageIds[i] : uint16_t(0); }
uint16_t AncillaryPageId(int i) const { return (0 <= i && i < MAXSPIDS) ? ancillaryPageIds[i] : uint16_t(0); }
diff --git a/patches/patch-set/0006-Ttxtsubs-plugin-hook.patch b/patches/patch-set/0006-Ttxtsubs-plugin-hook.patch
index 59fb8c8..d325f13 100644
--- a/patches/patch-set/0006-Ttxtsubs-plugin-hook.patch
+++ b/patches/patch-set/0006-Ttxtsubs-plugin-hook.patch
@@ -1,4 +1,4 @@
-From 2432eec2b93648cf2b75155b6237293de91da1b6 Mon Sep 17 00:00:00 2001
+From 1eafdc9add03826b63f05c7b9235c2429f5b083c Mon Sep 17 00:00:00 2001
From: etobi <git@e-tobi.net>
Date: Sat, 13 Feb 2010 00:28:21 +0100
Subject: [PATCH 6/6] Ttxtsubs plugin hook
@@ -7,10 +7,10 @@ Subject: [PATCH 6/6] Ttxtsubs plugin hook
Makefile | 2 +
device.c | 20 ++++++++++++++++
device.h | 1 +
- pat.c | 9 +++++++
+ pat.c | 6 +++++
vdrttxtsubshooks.c | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++++
vdrttxtsubshooks.h | 46 ++++++++++++++++++++++++++++++++++++++
- 6 files changed, 141 insertions(+), 0 deletions(-)
+ 6 files changed, 138 insertions(+), 0 deletions(-)
create mode 100644 vdrttxtsubshooks.c
create mode 100644 vdrttxtsubshooks.h
@@ -92,7 +92,7 @@ index 897de2a..2e36351 100644
protected:
const cPatPmtParser *PatPmtParser(void) const { return &patPmtParser; }
diff --git a/pat.c b/pat.c
-index f4be6a6..444be21 100644
+index ff25501..c6e7834 100644
--- a/pat.c
+++ b/pat.c
@@ -13,6 +13,7 @@
@@ -103,19 +103,16 @@ index f4be6a6..444be21 100644
#define PMT_SCAN_TIMEOUT 10 // seconds
-@@ -473,6 +474,14 @@ void cPatFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
+@@ -473,6 +474,11 @@ void cPatFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
}
if (Setup.UpdateChannels >= 2) {
Channel->SetPids(Vpid, Ppid, Vtype, Apids, ALangs, Dpids, DLangs, Spids, SLangs, Tpid);
+ if (NumTPages < MAXTXTPAGES) {
+ int manualPageNumber = cVDRTtxtsubsHookListener::Hook()->ManualPageNumber(Channel);
-+ if (manualPageNumber) {
-+ TeletextSubtitlePages[NumTPages] = tTeletextSubtitlePage(manualPageNumber);
-+ strn0cpy(TeletextSubtitlePages[NumTPages].ttxtLanguage, "und", MAXLANGCODE1);
-+ NumTPages++;
-+ }
++ if (manualPageNumber)
++ TeletextSubtitlePages[NumTPages++] = tTeletextSubtitlePage(manualPageNumber);
+ }
- Channel->SetTeletextSubtitlePages(TeletextSubtitlePages);
+ Channel->SetTeletextSubtitlePages(TeletextSubtitlePages, NumTPages);
Channel->SetCaIds(CaDescriptors->CaIds());
Channel->SetSubtitlingDescriptors(SubtitlingTypes, CompositionPageIds, AncillaryPageIds);
diff --git a/vdrttxtsubshooks.c b/vdrttxtsubshooks.c