mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
Added plugin-defined sources
This commit is contained in:
parent
d255ad785d
commit
1eb033576f
14
HISTORY
14
HISTORY
@ -6309,7 +6309,7 @@ Video Disk Recorder Revision History
|
||||
- The files "commands.conf" and "reccmd.conf" can now contain nested lists of
|
||||
commands. See vdr.5 for information about the new file format.
|
||||
|
||||
2010-02-21: Version 1.7.13
|
||||
2010-02-28: Version 1.7.13
|
||||
|
||||
- Updated the Italian OSD texts (thanks to Diego Pierotto).
|
||||
- Changed the position of Sirius 4 to S4.8E in sources.conf (thanks to Alexander Gross).
|
||||
@ -6364,3 +6364,15 @@ Video Disk Recorder Revision History
|
||||
- Fixed the German translation of "Folder name must not contain '%c'!" (thanks to
|
||||
Frank Schmirler).
|
||||
- Updated the Estonian OSD texts (thanks to Arthur Konovalov).
|
||||
- Plugins can now define new sources. In order to implement this, the following
|
||||
changes were made:
|
||||
+ The transponder parameter string is no longer interpreted by cChannel, but rather
|
||||
stored as is and used only by the respective device. That way plugins can use a
|
||||
channel's parameter string to store arbitrary data (see vdr.5).
|
||||
+ The new class cSourceParam can be used by plugins to define new sources, and to
|
||||
implement OSD items that will be used in the channel editor for editing the source
|
||||
specific parameters of a channel (see dvbdevice.c for an example of how this is
|
||||
done for the default DVB devices).
|
||||
+ Purely numerical values are no longer accepted in the 'source' parameter of a
|
||||
channel.
|
||||
This obsoletes the PLUGINPARAM patch.
|
||||
|
4
Makefile
4
Makefile
@ -4,7 +4,7 @@
|
||||
# See the main source file 'vdr.c' for copyright information and
|
||||
# how to reach the author.
|
||||
#
|
||||
# $Id: Makefile 2.7 2010/02/06 14:50:03 kls Exp $
|
||||
# $Id: Makefile 2.8 2010/02/21 11:44:38 kls Exp $
|
||||
|
||||
.DELETE_ON_ERROR:
|
||||
|
||||
@ -41,7 +41,7 @@ OBJS = audio.o channels.o ci.o config.o cutter.o device.o diseqc.o dvbdevice.o d
|
||||
dvbplayer.o dvbspu.o dvbsubtitle.o eit.o eitscan.o epg.o filter.o font.o i18n.o interface.o keys.o\
|
||||
lirc.o menu.o menuitems.o nit.o osdbase.o osd.o pat.o player.o plugin.o rcu.o\
|
||||
receiver.o recorder.o recording.o remote.o remux.o ringbuffer.o sdt.o sections.o shutdown.o\
|
||||
skinclassic.o skins.o skinsttng.o sources.o spu.o status.o svdrp.o themes.o thread.o\
|
||||
skinclassic.o skins.o skinsttng.o sourceparams.o sources.o spu.o status.o svdrp.o themes.o thread.o\
|
||||
timers.o tools.o transfer.o vdr.o videodir.o
|
||||
|
||||
ifndef NO_KBD
|
||||
|
316
channels.c
316
channels.c
@ -4,11 +4,10 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: channels.c 2.12 2010/01/02 17:38:40 kls Exp $
|
||||
* $Id: channels.c 2.13 2010/02/21 13:36:04 kls Exp $
|
||||
*/
|
||||
|
||||
#include "channels.h"
|
||||
#include <linux/dvb/frontend.h>
|
||||
#include <ctype.h>
|
||||
#include "device.h"
|
||||
#include "epg.h"
|
||||
@ -18,133 +17,6 @@
|
||||
// format characters in order to allow any number of blanks after a numeric
|
||||
// value!
|
||||
|
||||
// --- Channel Parameter Maps ------------------------------------------------
|
||||
|
||||
const tChannelParameterMap InversionValues[] = {
|
||||
{ 0, INVERSION_OFF, trNOOP("off") },
|
||||
{ 1, INVERSION_ON, trNOOP("on") },
|
||||
{ 999, INVERSION_AUTO, trNOOP("auto") },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
const tChannelParameterMap BandwidthValues[] = {
|
||||
{ 6, 6000000, "6 MHz" },
|
||||
{ 7, 7000000, "7 MHz" },
|
||||
{ 8, 8000000, "8 MHz" },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
const tChannelParameterMap CoderateValues[] = {
|
||||
{ 0, FEC_NONE, trNOOP("none") },
|
||||
{ 12, FEC_1_2, "1/2" },
|
||||
{ 23, FEC_2_3, "2/3" },
|
||||
{ 34, FEC_3_4, "3/4" },
|
||||
{ 35, FEC_3_5, "3/5" },
|
||||
{ 45, FEC_4_5, "4/5" },
|
||||
{ 56, FEC_5_6, "5/6" },
|
||||
{ 67, FEC_6_7, "6/7" },
|
||||
{ 78, FEC_7_8, "7/8" },
|
||||
{ 89, FEC_8_9, "8/9" },
|
||||
{ 910, FEC_9_10, "9/10" },
|
||||
{ 999, FEC_AUTO, trNOOP("auto") },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
const tChannelParameterMap ModulationValues[] = {
|
||||
{ 16, QAM_16, "QAM16" },
|
||||
{ 32, QAM_32, "QAM32" },
|
||||
{ 64, QAM_64, "QAM64" },
|
||||
{ 128, QAM_128, "QAM128" },
|
||||
{ 256, QAM_256, "QAM256" },
|
||||
{ 2, QPSK, "QPSK" },
|
||||
{ 5, PSK_8, "8PSK" },
|
||||
{ 6, APSK_16, "16APSK" },
|
||||
{ 10, VSB_8, "VSB8" },
|
||||
{ 11, VSB_16, "VSB16" },
|
||||
{ 998, QAM_AUTO, "QAMAUTO" },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
const tChannelParameterMap SystemValues[] = {
|
||||
{ 0, SYS_DVBS, "DVB-S" },
|
||||
{ 1, SYS_DVBS2, "DVB-S2" },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
const tChannelParameterMap TransmissionValues[] = {
|
||||
{ 2, TRANSMISSION_MODE_2K, "2K" },
|
||||
{ 8, TRANSMISSION_MODE_8K, "8K" },
|
||||
{ 999, TRANSMISSION_MODE_AUTO, trNOOP("auto") },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
const tChannelParameterMap GuardValues[] = {
|
||||
{ 4, GUARD_INTERVAL_1_4, "1/4" },
|
||||
{ 8, GUARD_INTERVAL_1_8, "1/8" },
|
||||
{ 16, GUARD_INTERVAL_1_16, "1/16" },
|
||||
{ 32, GUARD_INTERVAL_1_32, "1/32" },
|
||||
{ 999, GUARD_INTERVAL_AUTO, trNOOP("auto") },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
const tChannelParameterMap HierarchyValues[] = {
|
||||
{ 0, HIERARCHY_NONE, trNOOP("none") },
|
||||
{ 1, HIERARCHY_1, "1" },
|
||||
{ 2, HIERARCHY_2, "2" },
|
||||
{ 4, HIERARCHY_4, "4" },
|
||||
{ 999, HIERARCHY_AUTO, trNOOP("auto") },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
const tChannelParameterMap RollOffValues[] = {
|
||||
{ 0, ROLLOFF_AUTO, trNOOP("auto") },
|
||||
{ 20, ROLLOFF_20, "0.20" },
|
||||
{ 25, ROLLOFF_25, "0.25" },
|
||||
{ 35, ROLLOFF_35, "0.35" },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
int UserIndex(int Value, const tChannelParameterMap *Map)
|
||||
{
|
||||
const tChannelParameterMap *map = Map;
|
||||
while (map && map->userValue != -1) {
|
||||
if (map->userValue == Value)
|
||||
return map - Map;
|
||||
map++;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
int DriverIndex(int Value, const tChannelParameterMap *Map)
|
||||
{
|
||||
const tChannelParameterMap *map = Map;
|
||||
while (map && map->userValue != -1) {
|
||||
if (map->driverValue == Value)
|
||||
return map - Map;
|
||||
map++;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
int MapToUser(int Value, const tChannelParameterMap *Map, const char **String)
|
||||
{
|
||||
int n = DriverIndex(Value, Map);
|
||||
if (n >= 0) {
|
||||
if (String)
|
||||
*String = tr(Map[n].userString);
|
||||
return Map[n].userValue;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
int MapToDriver(int Value, const tChannelParameterMap *Map)
|
||||
{
|
||||
int n = UserIndex(Value, Map);
|
||||
if (n >= 0)
|
||||
return Map[n].driverValue;
|
||||
return -1;
|
||||
}
|
||||
|
||||
// --- tChannelID ------------------------------------------------------------
|
||||
|
||||
const tChannelID tChannelID::InvalidID;
|
||||
@ -189,16 +61,6 @@ cChannel::cChannel(void)
|
||||
provider = strdup("");
|
||||
portalName = strdup("");
|
||||
memset(&__BeginData__, 0, (char *)&__EndData__ - (char *)&__BeginData__);
|
||||
inversion = INVERSION_AUTO;
|
||||
bandwidth = 8000000;
|
||||
coderateH = FEC_AUTO;
|
||||
coderateL = FEC_AUTO;
|
||||
modulation = QPSK;
|
||||
system = SYS_DVBS;
|
||||
transmission = TRANSMISSION_MODE_AUTO;
|
||||
guard = GUARD_INTERVAL_AUTO;
|
||||
hierarchy = HIERARCHY_AUTO;
|
||||
rollOff = ROLLOFF_AUTO;
|
||||
modification = CHANNELMOD_NONE;
|
||||
schedule = NULL;
|
||||
linkChannels = NULL;
|
||||
@ -248,17 +110,18 @@ cChannel& cChannel::operator= (const cChannel &Channel)
|
||||
provider = strcpyrealloc(provider, Channel.provider);
|
||||
portalName = strcpyrealloc(portalName, Channel.portalName);
|
||||
memcpy(&__BeginData__, &Channel.__BeginData__, (char *)&Channel.__EndData__ - (char *)&Channel.__BeginData__);
|
||||
parameters = Channel.parameters;
|
||||
return *this;
|
||||
}
|
||||
|
||||
int cChannel::Transponder(int Frequency, char Polarization)
|
||||
{
|
||||
// some satellites have transponders at the same frequency, just with different polarization:
|
||||
switch (tolower(Polarization)) {
|
||||
case 'h': Frequency += 100000; break;
|
||||
case 'v': Frequency += 200000; break;
|
||||
case 'l': Frequency += 300000; break;
|
||||
case 'r': Frequency += 400000; break;
|
||||
switch (toupper(Polarization)) {
|
||||
case 'H': Frequency += 100000; break;
|
||||
case 'V': Frequency += 200000; break;
|
||||
case 'L': Frequency += 300000; break;
|
||||
case 'R': Frequency += 400000; break;
|
||||
default: esyslog("ERROR: invalid value for Polarization '%c'", Polarization);
|
||||
}
|
||||
return Frequency;
|
||||
@ -269,8 +132,11 @@ int cChannel::Transponder(void) const
|
||||
int tf = frequency;
|
||||
while (tf > 20000)
|
||||
tf /= 1000;
|
||||
if (IsSat())
|
||||
tf = Transponder(tf, polarization);
|
||||
if (IsSat()) {
|
||||
const char *p = strpbrk(parameters, "HVLRhvlr"); // lowercase for backwards compatibility
|
||||
if (p)
|
||||
tf = Transponder(tf, *p);
|
||||
}
|
||||
return tf;
|
||||
}
|
||||
|
||||
@ -296,22 +162,16 @@ void cChannel::CopyTransponderData(const cChannel *Channel)
|
||||
frequency = Channel->frequency;
|
||||
source = Channel->source;
|
||||
srate = Channel->srate;
|
||||
polarization = Channel->polarization;
|
||||
inversion = Channel->inversion;
|
||||
bandwidth = Channel->bandwidth;
|
||||
coderateH = Channel->coderateH;
|
||||
coderateL = Channel->coderateL;
|
||||
modulation = Channel->modulation;
|
||||
system = Channel->system;
|
||||
transmission = Channel->transmission;
|
||||
guard = Channel->guard;
|
||||
hierarchy = Channel->hierarchy;
|
||||
rollOff = Channel->rollOff;
|
||||
parameters = Channel->parameters;
|
||||
}
|
||||
}
|
||||
|
||||
bool cChannel::SetSatTransponderData(int Source, int Frequency, char Polarization, int Srate, int CoderateH, int Modulation, int System, int RollOff)
|
||||
bool cChannel::SetTransponderData(int Source, int Frequency, int Srate, const char *Parameters, bool Quiet)
|
||||
{
|
||||
if (strchr(Parameters, ':')) {
|
||||
esyslog("ERROR: parameter string '%s' contains ':'", Parameters);
|
||||
return false;
|
||||
}
|
||||
// Workarounds for broadcaster stupidity:
|
||||
// Some providers broadcast the transponder frequency of their channels with two different
|
||||
// values (like 12551 and 12552), so we need to allow for a little tolerance here
|
||||
@ -324,60 +184,14 @@ bool cChannel::SetSatTransponderData(int Source, int Frequency, char Polarizatio
|
||||
if (abs(srate - Srate) <= 1)
|
||||
Srate = srate;
|
||||
|
||||
if (source != Source || frequency != Frequency || polarization != Polarization || srate != Srate || coderateH != CoderateH || modulation != Modulation || system != System || rollOff != RollOff) {
|
||||
if (source != Source || frequency != Frequency || srate != Srate || strcmp(parameters, Parameters)) {
|
||||
cString OldTransponderData = TransponderDataToString();
|
||||
source = Source;
|
||||
frequency = Frequency;
|
||||
polarization = Polarization;
|
||||
srate = Srate;
|
||||
coderateH = CoderateH;
|
||||
modulation = Modulation;
|
||||
system = System;
|
||||
rollOff = RollOff;
|
||||
parameters = Parameters;
|
||||
schedule = NULL;
|
||||
if (Number()) {
|
||||
dsyslog("changing transponder data of channel %d from %s to %s", Number(), *OldTransponderData, *TransponderDataToString());
|
||||
modification |= CHANNELMOD_TRANSP;
|
||||
Channels.SetModified();
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool cChannel::SetCableTransponderData(int Source, int Frequency, int Modulation, int Srate, int CoderateH)
|
||||
{
|
||||
if (source != Source || frequency != Frequency || modulation != Modulation || srate != Srate || coderateH != CoderateH) {
|
||||
cString OldTransponderData = TransponderDataToString();
|
||||
source = Source;
|
||||
frequency = Frequency;
|
||||
modulation = Modulation;
|
||||
srate = Srate;
|
||||
coderateH = CoderateH;
|
||||
schedule = NULL;
|
||||
if (Number()) {
|
||||
dsyslog("changing transponder data of channel %d from %s to %s", Number(), *OldTransponderData, *TransponderDataToString());
|
||||
modification |= CHANNELMOD_TRANSP;
|
||||
Channels.SetModified();
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool cChannel::SetTerrTransponderData(int Source, int Frequency, int Bandwidth, int Modulation, int Hierarchy, int CoderateH, int CoderateL, int Guard, int Transmission)
|
||||
{
|
||||
if (source != Source || frequency != Frequency || bandwidth != Bandwidth || modulation != Modulation || hierarchy != Hierarchy || coderateH != CoderateH || coderateL != CoderateL || guard != Guard || transmission != Transmission) {
|
||||
cString OldTransponderData = TransponderDataToString();
|
||||
source = Source;
|
||||
frequency = Frequency;
|
||||
bandwidth = Bandwidth;
|
||||
modulation = Modulation;
|
||||
hierarchy = Hierarchy;
|
||||
coderateH = CoderateH;
|
||||
coderateL = CoderateL;
|
||||
guard = Guard;
|
||||
transmission = Transmission;
|
||||
schedule = NULL;
|
||||
if (Number()) {
|
||||
if (Number() && !Quiet) {
|
||||
dsyslog("changing transponder data of channel %d from %s to %s", Number(), *OldTransponderData, *TransponderDataToString());
|
||||
modification |= CHANNELMOD_TRANSP;
|
||||
Channels.SetModified();
|
||||
@ -634,90 +448,11 @@ void cChannel::SetRefChannel(cChannel *RefChannel)
|
||||
refChannel = RefChannel;
|
||||
}
|
||||
|
||||
static int PrintParameter(char *p, char Name, int Value)
|
||||
{
|
||||
return Value >= 0 && Value != 999 ? sprintf(p, "%c%d", Name, Value) : 0;
|
||||
}
|
||||
|
||||
cString cChannel::TransponderDataToString(void) const
|
||||
{
|
||||
if (cSource::IsTerr(source))
|
||||
return cString::sprintf("%d:%s:%s", frequency, *ParametersToString(), *cSource::ToString(source));
|
||||
return cString::sprintf("%d:%s:%s:%d", frequency, *ParametersToString(), *cSource::ToString(source), srate);
|
||||
}
|
||||
|
||||
cString cChannel::ParametersToString(void) const
|
||||
{
|
||||
char type = **cSource::ToString(source);
|
||||
if (isdigit(type))
|
||||
type = 'S';
|
||||
#define ST(s) if (strchr(s, type))
|
||||
char buffer[64];
|
||||
char *q = buffer;
|
||||
*q = 0;
|
||||
ST(" S ") q += sprintf(q, "%c", polarization);
|
||||
ST(" T") q += PrintParameter(q, 'B', MapToUser(bandwidth, BandwidthValues));
|
||||
ST("CST") q += PrintParameter(q, 'C', MapToUser(coderateH, CoderateValues));
|
||||
ST(" T") q += PrintParameter(q, 'D', MapToUser(coderateL, CoderateValues));
|
||||
ST(" T") q += PrintParameter(q, 'G', MapToUser(guard, GuardValues));
|
||||
ST("CST") q += PrintParameter(q, 'I', MapToUser(inversion, InversionValues));
|
||||
ST("CST") q += PrintParameter(q, 'M', MapToUser(modulation, ModulationValues));
|
||||
ST(" S ") q += PrintParameter(q, 'O', MapToUser(rollOff, RollOffValues));
|
||||
ST(" S ") q += PrintParameter(q, 'S', MapToUser(system, SystemValues));
|
||||
ST(" T") q += PrintParameter(q, 'T', MapToUser(transmission, TransmissionValues));
|
||||
ST(" T") q += PrintParameter(q, 'Y', MapToUser(hierarchy, HierarchyValues));
|
||||
return buffer;
|
||||
}
|
||||
|
||||
static const char *ParseParameter(const char *s, int &Value, const tChannelParameterMap *Map)
|
||||
{
|
||||
if (*++s) {
|
||||
char *p = NULL;
|
||||
errno = 0;
|
||||
int n = strtol(s, &p, 10);
|
||||
if (!errno && p != s) {
|
||||
Value = MapToDriver(n, Map);
|
||||
if (Value >= 0)
|
||||
return p;
|
||||
}
|
||||
}
|
||||
esyslog("ERROR: invalid value for parameter '%c'", *(s - 1));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static const char *SkipDigits(const char *s)
|
||||
{
|
||||
while (*++s && isdigit(*s))
|
||||
;
|
||||
return s;
|
||||
}
|
||||
|
||||
bool cChannel::StringToParameters(const char *s)
|
||||
{
|
||||
while (s && *s) {
|
||||
switch (toupper(*s)) {
|
||||
case 'A': s = SkipDigits(s); break; // for compatibility with the "multiproto" approach - may be removed in future versions
|
||||
case 'B': s = ParseParameter(s, bandwidth, BandwidthValues); break;
|
||||
case 'C': s = ParseParameter(s, coderateH, CoderateValues); break;
|
||||
case 'D': s = ParseParameter(s, coderateL, CoderateValues); break;
|
||||
case 'G': s = ParseParameter(s, guard, GuardValues); break;
|
||||
case 'H': polarization = *s++; break;
|
||||
case 'I': s = ParseParameter(s, inversion, InversionValues); break;
|
||||
case 'L': polarization = *s++; break;
|
||||
case 'M': s = ParseParameter(s, modulation, ModulationValues); break;
|
||||
case 'O': s = ParseParameter(s, rollOff, RollOffValues); break;
|
||||
case 'P': s = SkipDigits(s); break; // for compatibility with the "multiproto" approach - may be removed in future versions
|
||||
case 'R': polarization = *s++; break;
|
||||
case 'S': s = ParseParameter(s, system, SystemValues); break;
|
||||
case 'T': s = ParseParameter(s, transmission, TransmissionValues); break;
|
||||
case 'V': polarization = *s++; break;
|
||||
case 'Y': s = ParseParameter(s, hierarchy, HierarchyValues); break;
|
||||
case 'Z': s = SkipDigits(s); break; // for compatibility with the original DVB-S2 patch - may be removed in future versions
|
||||
default: esyslog("ERROR: unknown parameter key '%c'", *s);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
return cString::sprintf("%d:%s:%s", frequency, *parameters, *cSource::ToString(source));
|
||||
return cString::sprintf("%d:%s:%s:%d", frequency, *parameters, *cSource::ToString(source), srate);
|
||||
}
|
||||
|
||||
cString cChannel::ToText(const cChannel *Channel)
|
||||
@ -762,7 +497,7 @@ cString cChannel::ToText(const cChannel *Channel)
|
||||
q = caidbuf;
|
||||
q += IntArrayToString(q, Channel->caids, 16);
|
||||
*q = 0;
|
||||
buffer = cString::sprintf("%s:%d:%s:%s:%d:%s:%s:%d:%s:%d:%d:%d:%d\n", FullName, Channel->frequency, *Channel->ParametersToString(), *cSource::ToString(Channel->source), Channel->srate, vpidbuf, apidbuf, Channel->tpid, caidbuf, Channel->sid, Channel->nid, Channel->tid, Channel->rid);
|
||||
buffer = cString::sprintf("%s:%d:%s:%s:%d:%s:%s:%d:%s:%d:%d:%d:%d\n", FullName, Channel->frequency, *Channel->parameters, *cSource::ToString(Channel->source), Channel->srate, vpidbuf, apidbuf, Channel->tpid, caidbuf, Channel->sid, Channel->nid, Channel->tid, Channel->rid);
|
||||
}
|
||||
return buffer;
|
||||
}
|
||||
@ -814,7 +549,8 @@ bool cChannel::Parse(const char *s)
|
||||
dpids[0] = 0;
|
||||
ok = false;
|
||||
if (parambuf && sourcebuf && vpidbuf && apidbuf) {
|
||||
ok = StringToParameters(parambuf) && (source = cSource::FromString(sourcebuf)) >= 0;
|
||||
parameters = parambuf;
|
||||
ok = (source = cSource::FromString(sourcebuf)) >= 0;
|
||||
|
||||
char *p;
|
||||
if ((p = strchr(vpidbuf, '=')) != NULL) {
|
||||
|
54
channels.h
54
channels.h
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: channels.h 2.7 2009/12/06 12:57:45 kls Exp $
|
||||
* $Id: channels.h 2.8 2010/02/21 14:05:49 kls Exp $
|
||||
*/
|
||||
|
||||
#ifndef __CHANNELS_H
|
||||
@ -47,27 +47,6 @@
|
||||
#define CA_ENCRYPTED_MIN 0x0100
|
||||
#define CA_ENCRYPTED_MAX 0xFFFF
|
||||
|
||||
struct tChannelParameterMap {
|
||||
int userValue;
|
||||
int driverValue;
|
||||
const char *userString;
|
||||
};
|
||||
|
||||
int MapToUser(int Value, const tChannelParameterMap *Map, const char **String = NULL);
|
||||
int MapToDriver(int Value, const tChannelParameterMap *Map);
|
||||
int UserIndex(int Value, const tChannelParameterMap *Map);
|
||||
int DriverIndex(int Value, const tChannelParameterMap *Map);
|
||||
|
||||
extern const tChannelParameterMap InversionValues[];
|
||||
extern const tChannelParameterMap BandwidthValues[];
|
||||
extern const tChannelParameterMap CoderateValues[];
|
||||
extern const tChannelParameterMap ModulationValues[];
|
||||
extern const tChannelParameterMap SystemValues[];
|
||||
extern const tChannelParameterMap TransmissionValues[];
|
||||
extern const tChannelParameterMap GuardValues[];
|
||||
extern const tChannelParameterMap HierarchyValues[];
|
||||
extern const tChannelParameterMap RollOffValues[];
|
||||
|
||||
struct tChannelID {
|
||||
private:
|
||||
int source;
|
||||
@ -110,6 +89,7 @@ class cSchedule;
|
||||
class cChannel : public cListObject {
|
||||
friend class cSchedules;
|
||||
friend class cMenuEditChannel;
|
||||
friend class cDvbSourceParam;
|
||||
private:
|
||||
static cString ToText(const cChannel *Channel);
|
||||
char *name;
|
||||
@ -140,25 +120,13 @@ private:
|
||||
int rid;
|
||||
int number; // Sequence number assigned on load
|
||||
bool groupSep;
|
||||
char polarization;
|
||||
int inversion;
|
||||
int bandwidth;
|
||||
int coderateH;
|
||||
int coderateL;
|
||||
int modulation;
|
||||
int system;
|
||||
int transmission;
|
||||
int guard;
|
||||
int hierarchy;
|
||||
int rollOff;
|
||||
int __EndData__;
|
||||
cString parameters;
|
||||
int modification;
|
||||
mutable const cSchedule *schedule;
|
||||
cLinkChannels *linkChannels;
|
||||
cChannel *refChannel;
|
||||
cString TransponderDataToString(void) const;
|
||||
cString ParametersToString(void) const;
|
||||
bool StringToParameters(const char *s);
|
||||
public:
|
||||
cChannel(void);
|
||||
cChannel(const cChannel &Channel);
|
||||
@ -201,17 +169,7 @@ public:
|
||||
int Number(void) const { return number; }
|
||||
void SetNumber(int Number) { number = Number; }
|
||||
bool GroupSep(void) const { return groupSep; }
|
||||
char Polarization(void) const { return polarization; }
|
||||
int Inversion(void) const { return inversion; }
|
||||
int Bandwidth(void) const { return bandwidth; }
|
||||
int CoderateH(void) const { return coderateH; }
|
||||
int CoderateL(void) const { return coderateL; }
|
||||
int Modulation(void) const { return modulation; }
|
||||
int System(void) const { return system; }
|
||||
int Transmission(void) const { return transmission; }
|
||||
int Guard(void) const { return guard; }
|
||||
int Hierarchy(void) const { return hierarchy; }
|
||||
int RollOff(void) const { return rollOff; }
|
||||
const char *Parameters(void) const { return parameters; }
|
||||
const cLinkChannels* LinkChannels(void) const { return linkChannels; }
|
||||
const cChannel *RefChannel(void) const { return refChannel; }
|
||||
bool IsCable(void) const { return cSource::IsCable(source); }
|
||||
@ -221,9 +179,7 @@ public:
|
||||
bool HasTimer(void) const;
|
||||
int Modification(int Mask = CHANNELMOD_ALL);
|
||||
void CopyTransponderData(const cChannel *Channel);
|
||||
bool SetSatTransponderData(int Source, int Frequency, char Polarization, int Srate, int CoderateH, int Modulation, int System, int RollOff);
|
||||
bool SetCableTransponderData(int Source, int Frequency, int Modulation, int Srate, int CoderateH);
|
||||
bool SetTerrTransponderData(int Source, int Frequency, int Bandwidth, int Modulation, int Hierarchy, int CodeRateH, int CodeRateL, int Guard, int Transmission);
|
||||
bool SetTransponderData(int Source, int Frequency, int Srate, const char *Parameters, bool Quiet = false);
|
||||
void SetId(int Nid, int Tid, int Sid, int Rid = 0);
|
||||
void SetName(const char *Name, const char *ShortName, const char *Provider);
|
||||
void SetPortalName(const char *PortalName);
|
||||
|
335
dvbdevice.c
335
dvbdevice.c
@ -4,10 +4,11 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: dvbdevice.c 2.28 2010/02/07 13:21:05 kls Exp $
|
||||
* $Id: dvbdevice.c 2.29 2010/02/21 17:10:35 kls Exp $
|
||||
*/
|
||||
|
||||
#include "dvbdevice.h"
|
||||
#include <ctype.h>
|
||||
#include <errno.h>
|
||||
#include <limits.h>
|
||||
#include <linux/dvb/dmx.h>
|
||||
@ -17,6 +18,8 @@
|
||||
#include "channels.h"
|
||||
#include "diseqc.h"
|
||||
#include "dvbci.h"
|
||||
#include "menuitems.h"
|
||||
#include "sourceparams.h"
|
||||
|
||||
#define DVBS_TUNE_TIMEOUT 9000 //ms
|
||||
#define DVBS_LOCK_TIMEOUT 2000 //ms
|
||||
@ -25,6 +28,217 @@
|
||||
#define DVBT_TUNE_TIMEOUT 9000 //ms
|
||||
#define DVBT_LOCK_TIMEOUT 2000 //ms
|
||||
|
||||
// --- DVB Parameter Maps ----------------------------------------------------
|
||||
|
||||
const tDvbParameterMap InversionValues[] = {
|
||||
{ 0, INVERSION_OFF, trNOOP("off") },
|
||||
{ 1, INVERSION_ON, trNOOP("on") },
|
||||
{ 999, INVERSION_AUTO, trNOOP("auto") },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
const tDvbParameterMap BandwidthValues[] = {
|
||||
{ 6, 6000000, "6 MHz" },
|
||||
{ 7, 7000000, "7 MHz" },
|
||||
{ 8, 8000000, "8 MHz" },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
const tDvbParameterMap CoderateValues[] = {
|
||||
{ 0, FEC_NONE, trNOOP("none") },
|
||||
{ 12, FEC_1_2, "1/2" },
|
||||
{ 23, FEC_2_3, "2/3" },
|
||||
{ 34, FEC_3_4, "3/4" },
|
||||
{ 35, FEC_3_5, "3/5" },
|
||||
{ 45, FEC_4_5, "4/5" },
|
||||
{ 56, FEC_5_6, "5/6" },
|
||||
{ 67, FEC_6_7, "6/7" },
|
||||
{ 78, FEC_7_8, "7/8" },
|
||||
{ 89, FEC_8_9, "8/9" },
|
||||
{ 910, FEC_9_10, "9/10" },
|
||||
{ 999, FEC_AUTO, trNOOP("auto") },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
const tDvbParameterMap ModulationValues[] = {
|
||||
{ 16, QAM_16, "QAM16" },
|
||||
{ 32, QAM_32, "QAM32" },
|
||||
{ 64, QAM_64, "QAM64" },
|
||||
{ 128, QAM_128, "QAM128" },
|
||||
{ 256, QAM_256, "QAM256" },
|
||||
{ 2, QPSK, "QPSK" },
|
||||
{ 5, PSK_8, "8PSK" },
|
||||
{ 6, APSK_16, "16APSK" },
|
||||
{ 10, VSB_8, "VSB8" },
|
||||
{ 11, VSB_16, "VSB16" },
|
||||
{ 998, QAM_AUTO, "QAMAUTO" },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
const tDvbParameterMap SystemValues[] = {
|
||||
{ 0, SYS_DVBS, "DVB-S" },
|
||||
{ 1, SYS_DVBS2, "DVB-S2" },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
const tDvbParameterMap TransmissionValues[] = {
|
||||
{ 2, TRANSMISSION_MODE_2K, "2K" },
|
||||
{ 8, TRANSMISSION_MODE_8K, "8K" },
|
||||
{ 999, TRANSMISSION_MODE_AUTO, trNOOP("auto") },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
const tDvbParameterMap GuardValues[] = {
|
||||
{ 4, GUARD_INTERVAL_1_4, "1/4" },
|
||||
{ 8, GUARD_INTERVAL_1_8, "1/8" },
|
||||
{ 16, GUARD_INTERVAL_1_16, "1/16" },
|
||||
{ 32, GUARD_INTERVAL_1_32, "1/32" },
|
||||
{ 999, GUARD_INTERVAL_AUTO, trNOOP("auto") },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
const tDvbParameterMap HierarchyValues[] = {
|
||||
{ 0, HIERARCHY_NONE, trNOOP("none") },
|
||||
{ 1, HIERARCHY_1, "1" },
|
||||
{ 2, HIERARCHY_2, "2" },
|
||||
{ 4, HIERARCHY_4, "4" },
|
||||
{ 999, HIERARCHY_AUTO, trNOOP("auto") },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
const tDvbParameterMap RollOffValues[] = {
|
||||
{ 0, ROLLOFF_AUTO, trNOOP("auto") },
|
||||
{ 20, ROLLOFF_20, "0.20" },
|
||||
{ 25, ROLLOFF_25, "0.25" },
|
||||
{ 35, ROLLOFF_35, "0.35" },
|
||||
{ -1, 0, NULL }
|
||||
};
|
||||
|
||||
int UserIndex(int Value, const tDvbParameterMap *Map)
|
||||
{
|
||||
const tDvbParameterMap *map = Map;
|
||||
while (map && map->userValue != -1) {
|
||||
if (map->userValue == Value)
|
||||
return map - Map;
|
||||
map++;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
int DriverIndex(int Value, const tDvbParameterMap *Map)
|
||||
{
|
||||
const tDvbParameterMap *map = Map;
|
||||
while (map && map->userValue != -1) {
|
||||
if (map->driverValue == Value)
|
||||
return map - Map;
|
||||
map++;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
int MapToUser(int Value, const tDvbParameterMap *Map, const char **String)
|
||||
{
|
||||
int n = DriverIndex(Value, Map);
|
||||
if (n >= 0) {
|
||||
if (String)
|
||||
*String = tr(Map[n].userString);
|
||||
return Map[n].userValue;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
int MapToDriver(int Value, const tDvbParameterMap *Map)
|
||||
{
|
||||
int n = UserIndex(Value, Map);
|
||||
if (n >= 0)
|
||||
return Map[n].driverValue;
|
||||
return -1;
|
||||
}
|
||||
|
||||
// --- cDvbTransponderParameters ---------------------------------------------
|
||||
|
||||
cDvbTransponderParameters::cDvbTransponderParameters(const char *Parameters)
|
||||
{
|
||||
polarization = 0;
|
||||
inversion = INVERSION_AUTO;
|
||||
bandwidth = 8000000;
|
||||
coderateH = FEC_AUTO;
|
||||
coderateL = FEC_AUTO;
|
||||
modulation = QPSK;
|
||||
system = SYS_DVBS;
|
||||
transmission = TRANSMISSION_MODE_AUTO;
|
||||
guard = GUARD_INTERVAL_AUTO;
|
||||
hierarchy = HIERARCHY_AUTO;
|
||||
rollOff = ROLLOFF_AUTO;
|
||||
Parse(Parameters);
|
||||
}
|
||||
|
||||
int cDvbTransponderParameters::PrintParameter(char *p, char Name, int Value) const
|
||||
{
|
||||
return Value >= 0 && Value != 999 ? sprintf(p, "%c%d", Name, Value) : 0;
|
||||
}
|
||||
|
||||
cString cDvbTransponderParameters::ToString(char Type) const
|
||||
{
|
||||
#define ST(s) if (strchr(s, Type))
|
||||
char buffer[64];
|
||||
char *q = buffer;
|
||||
*q = 0;
|
||||
ST(" S ") q += sprintf(q, "%c", polarization);
|
||||
ST(" T") q += PrintParameter(q, 'B', MapToUser(bandwidth, BandwidthValues));
|
||||
ST("CST") q += PrintParameter(q, 'C', MapToUser(coderateH, CoderateValues));
|
||||
ST(" T") q += PrintParameter(q, 'D', MapToUser(coderateL, CoderateValues));
|
||||
ST(" T") q += PrintParameter(q, 'G', MapToUser(guard, GuardValues));
|
||||
ST("CST") q += PrintParameter(q, 'I', MapToUser(inversion, InversionValues));
|
||||
ST("CST") q += PrintParameter(q, 'M', MapToUser(modulation, ModulationValues));
|
||||
ST(" S ") q += PrintParameter(q, 'O', MapToUser(rollOff, RollOffValues));
|
||||
ST(" S ") q += PrintParameter(q, 'S', MapToUser(system, SystemValues));
|
||||
ST(" T") q += PrintParameter(q, 'T', MapToUser(transmission, TransmissionValues));
|
||||
ST(" T") q += PrintParameter(q, 'Y', MapToUser(hierarchy, HierarchyValues));
|
||||
return buffer;
|
||||
}
|
||||
|
||||
const char *cDvbTransponderParameters::ParseParameter(const char *s, int &Value, const tDvbParameterMap *Map)
|
||||
{
|
||||
if (*++s) {
|
||||
char *p = NULL;
|
||||
errno = 0;
|
||||
int n = strtol(s, &p, 10);
|
||||
if (!errno && p != s) {
|
||||
Value = MapToDriver(n, Map);
|
||||
if (Value >= 0)
|
||||
return p;
|
||||
}
|
||||
}
|
||||
esyslog("ERROR: invalid value for parameter '%c'", *(s - 1));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
bool cDvbTransponderParameters::Parse(const char *s)
|
||||
{
|
||||
while (s && *s) {
|
||||
switch (toupper(*s)) {
|
||||
case 'B': s = ParseParameter(s, bandwidth, BandwidthValues); break;
|
||||
case 'C': s = ParseParameter(s, coderateH, CoderateValues); break;
|
||||
case 'D': s = ParseParameter(s, coderateL, CoderateValues); break;
|
||||
case 'G': s = ParseParameter(s, guard, GuardValues); break;
|
||||
case 'H': polarization = *s++; break;
|
||||
case 'I': s = ParseParameter(s, inversion, InversionValues); break;
|
||||
case 'L': polarization = *s++; break;
|
||||
case 'M': s = ParseParameter(s, modulation, ModulationValues); break;
|
||||
case 'O': s = ParseParameter(s, rollOff, RollOffValues); break;
|
||||
case 'R': polarization = *s++; break;
|
||||
case 'S': s = ParseParameter(s, system, SystemValues); break;
|
||||
case 'T': s = ParseParameter(s, transmission, TransmissionValues); break;
|
||||
case 'V': polarization = *s++; break;
|
||||
case 'Y': s = ParseParameter(s, hierarchy, HierarchyValues); break;
|
||||
default: esyslog("ERROR: unknown parameter key '%c'", *s);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// --- cDvbTuner -------------------------------------------------------------
|
||||
|
||||
class cDvbTuner : public cThread {
|
||||
@ -87,21 +301,8 @@ bool cDvbTuner::IsTunedTo(const cChannel *Channel) const
|
||||
return false; // not tuned to
|
||||
if (channel.Source() != Channel->Source() || channel.Transponder() != Channel->Transponder())
|
||||
return false; // sufficient mismatch
|
||||
char Type = **cSource::ToString(Channel->Source());
|
||||
#define ST(s, p) if (strchr(s, Type)) if (channel.p() != Channel->p()) return false;
|
||||
// Polarization is already checked as part of the Transponder.
|
||||
ST(" T", Bandwidth);
|
||||
ST("CST", CoderateH);
|
||||
ST(" T", CoderateL);
|
||||
ST(" T", Guard);
|
||||
ST("CST", Inversion);
|
||||
ST("CST", Modulation);
|
||||
ST(" S ", RollOff);
|
||||
ST(" S ", System);
|
||||
ST("CS ", Srate);
|
||||
ST(" T", Transmission);
|
||||
ST(" T", Hierarchy);
|
||||
return true;
|
||||
return strcmp(channel.Parameters(), Channel->Parameters()) == 0;
|
||||
}
|
||||
|
||||
void cDvbTuner::Set(const cChannel *Channel)
|
||||
@ -174,10 +375,12 @@ bool cDvbTuner::SetFrontend(void)
|
||||
}
|
||||
CmdSeq.num = 0;
|
||||
|
||||
cDvbTransponderParameters dtp(channel.Parameters());
|
||||
|
||||
if (frontendType == SYS_DVBS || frontendType == SYS_DVBS2) {
|
||||
unsigned int frequency = channel.Frequency();
|
||||
if (Setup.DiSEqC) {
|
||||
cDiseqc *diseqc = Diseqcs.Get(device, channel.Source(), channel.Frequency(), channel.Polarization());
|
||||
cDiseqc *diseqc = Diseqcs.Get(device, channel.Source(), channel.Frequency(), dtp.Polarization());
|
||||
if (diseqc) {
|
||||
if (diseqc->Commands() && (!diseqcCommands || strcmp(diseqcCommands, diseqc->Commands()) != 0)) {
|
||||
cDiseqc::eDiseqcActions da;
|
||||
@ -223,24 +426,24 @@ bool cDvbTuner::SetFrontend(void)
|
||||
frequency -= Setup.LnbFrequHi;
|
||||
tone = SEC_TONE_ON;
|
||||
}
|
||||
int volt = (channel.Polarization() == 'v' || channel.Polarization() == 'V' || channel.Polarization() == 'r' || channel.Polarization() == 'R') ? SEC_VOLTAGE_13 : SEC_VOLTAGE_18;
|
||||
int volt = (dtp.Polarization() == 'v' || dtp.Polarization() == 'V' || dtp.Polarization() == 'r' || dtp.Polarization() == 'R') ? SEC_VOLTAGE_13 : SEC_VOLTAGE_18;
|
||||
CHECK(ioctl(fd_frontend, FE_SET_VOLTAGE, volt));
|
||||
CHECK(ioctl(fd_frontend, FE_SET_TONE, tone));
|
||||
}
|
||||
frequency = abs(frequency); // Allow for C-band, where the frequency is less than the LOF
|
||||
|
||||
// DVB-S/DVB-S2 (common parts)
|
||||
SETCMD(DTV_DELIVERY_SYSTEM, channel.System());
|
||||
SETCMD(DTV_DELIVERY_SYSTEM, dtp.System());
|
||||
SETCMD(DTV_FREQUENCY, frequency * 1000UL);
|
||||
SETCMD(DTV_MODULATION, channel.Modulation());
|
||||
SETCMD(DTV_MODULATION, dtp.Modulation());
|
||||
SETCMD(DTV_SYMBOL_RATE, channel.Srate() * 1000UL);
|
||||
SETCMD(DTV_INNER_FEC, channel.CoderateH());
|
||||
SETCMD(DTV_INVERSION, channel.Inversion());
|
||||
if (channel.System() == SYS_DVBS2) {
|
||||
SETCMD(DTV_INNER_FEC, dtp.CoderateH());
|
||||
SETCMD(DTV_INVERSION, dtp.Inversion());
|
||||
if (dtp.System() == SYS_DVBS2) {
|
||||
if (frontendType == SYS_DVBS2) {
|
||||
// DVB-S2
|
||||
SETCMD(DTV_PILOT, PILOT_AUTO);
|
||||
SETCMD(DTV_ROLLOFF, channel.RollOff());
|
||||
SETCMD(DTV_ROLLOFF, dtp.RollOff());
|
||||
}
|
||||
else {
|
||||
esyslog("ERROR: frontend %d/%d doesn't provide DVB-S2", adapter, frontend);
|
||||
@ -259,10 +462,10 @@ bool cDvbTuner::SetFrontend(void)
|
||||
// DVB-C
|
||||
SETCMD(DTV_DELIVERY_SYSTEM, frontendType);
|
||||
SETCMD(DTV_FREQUENCY, FrequencyToHz(channel.Frequency()));
|
||||
SETCMD(DTV_INVERSION, channel.Inversion());
|
||||
SETCMD(DTV_INVERSION, dtp.Inversion());
|
||||
SETCMD(DTV_SYMBOL_RATE, channel.Srate() * 1000UL);
|
||||
SETCMD(DTV_INNER_FEC, channel.CoderateH());
|
||||
SETCMD(DTV_MODULATION, channel.Modulation());
|
||||
SETCMD(DTV_INNER_FEC, dtp.CoderateH());
|
||||
SETCMD(DTV_MODULATION, dtp.Modulation());
|
||||
|
||||
tuneTimeout = DVBC_TUNE_TIMEOUT;
|
||||
lockTimeout = DVBC_LOCK_TIMEOUT;
|
||||
@ -271,14 +474,14 @@ bool cDvbTuner::SetFrontend(void)
|
||||
// DVB-T
|
||||
SETCMD(DTV_DELIVERY_SYSTEM, frontendType);
|
||||
SETCMD(DTV_FREQUENCY, FrequencyToHz(channel.Frequency()));
|
||||
SETCMD(DTV_INVERSION, channel.Inversion());
|
||||
SETCMD(DTV_BANDWIDTH_HZ, channel.Bandwidth());
|
||||
SETCMD(DTV_CODE_RATE_HP, channel.CoderateH());
|
||||
SETCMD(DTV_CODE_RATE_LP, channel.CoderateL());
|
||||
SETCMD(DTV_MODULATION, channel.Modulation());
|
||||
SETCMD(DTV_TRANSMISSION_MODE, channel.Transmission());
|
||||
SETCMD(DTV_GUARD_INTERVAL, channel.Guard());
|
||||
SETCMD(DTV_HIERARCHY, channel.Hierarchy());
|
||||
SETCMD(DTV_INVERSION, dtp.Inversion());
|
||||
SETCMD(DTV_BANDWIDTH_HZ, dtp.Bandwidth());
|
||||
SETCMD(DTV_CODE_RATE_HP, dtp.CoderateH());
|
||||
SETCMD(DTV_CODE_RATE_LP, dtp.CoderateL());
|
||||
SETCMD(DTV_MODULATION, dtp.Modulation());
|
||||
SETCMD(DTV_TRANSMISSION_MODE, dtp.Transmission());
|
||||
SETCMD(DTV_GUARD_INTERVAL, dtp.Guard());
|
||||
SETCMD(DTV_HIERARCHY, dtp.Hierarchy());
|
||||
|
||||
tuneTimeout = DVBT_TUNE_TIMEOUT;
|
||||
lockTimeout = DVBT_LOCK_TIMEOUT;
|
||||
@ -356,6 +559,62 @@ void cDvbTuner::Action(void)
|
||||
}
|
||||
}
|
||||
|
||||
// --- cDvbSourceParam -------------------------------------------------------
|
||||
|
||||
class cDvbSourceParam : public cSourceParam {
|
||||
private:
|
||||
int param;
|
||||
cChannel data;
|
||||
cDvbTransponderParameters dtp;
|
||||
public:
|
||||
cDvbSourceParam(char Source, const char *Description);
|
||||
virtual void SetData(cChannel *Channel);
|
||||
virtual void GetData(cChannel *Channel);
|
||||
virtual cOsdItem *GetOsdItem(void);
|
||||
};
|
||||
|
||||
cDvbSourceParam::cDvbSourceParam(char Source, const char *Description)
|
||||
:cSourceParam(Source, Description)
|
||||
{
|
||||
param = 0;
|
||||
}
|
||||
|
||||
void cDvbSourceParam::SetData(cChannel *Channel)
|
||||
{
|
||||
data = *Channel;
|
||||
dtp.Parse(data.Parameters());
|
||||
param = 0;
|
||||
}
|
||||
|
||||
void cDvbSourceParam::GetData(cChannel *Channel)
|
||||
{
|
||||
data.SetTransponderData(Channel->Source(), Channel->Frequency(), data.Srate(), dtp.ToString(Source()), true);
|
||||
*Channel = data;
|
||||
}
|
||||
|
||||
cOsdItem *cDvbSourceParam::GetOsdItem(void)
|
||||
{
|
||||
char type = Source();
|
||||
#undef ST
|
||||
#define ST(s) if (strchr(s, type))
|
||||
switch (param++) {
|
||||
case 0: ST(" S ") return new cMenuEditChrItem( tr("Polarization"), &dtp.polarization, "hvlr"); else return GetOsdItem();
|
||||
case 1: ST(" S ") return new cMenuEditMapItem( tr("System"), &dtp.system, SystemValues); else return GetOsdItem();
|
||||
case 2: ST("CS ") return new cMenuEditIntItem( tr("Srate"), &data.srate); else return GetOsdItem();
|
||||
case 3: ST("CST") return new cMenuEditMapItem( tr("Inversion"), &dtp.inversion, InversionValues); else return GetOsdItem();
|
||||
case 4: ST("CST") return new cMenuEditMapItem( tr("CoderateH"), &dtp.coderateH, CoderateValues); else return GetOsdItem();
|
||||
case 5: ST(" T") return new cMenuEditMapItem( tr("CoderateL"), &dtp.coderateL, CoderateValues); else return GetOsdItem();
|
||||
case 6: ST("CST") return new cMenuEditMapItem( tr("Modulation"), &dtp.modulation, ModulationValues); else return GetOsdItem();
|
||||
case 7: ST(" T") return new cMenuEditMapItem( tr("Bandwidth"), &dtp.bandwidth, BandwidthValues); else return GetOsdItem();
|
||||
case 8: ST(" T") return new cMenuEditMapItem( tr("Transmission"), &dtp.transmission, TransmissionValues); else return GetOsdItem();
|
||||
case 9: ST(" T") return new cMenuEditMapItem( tr("Guard"), &dtp.guard, GuardValues); else return GetOsdItem();
|
||||
case 10: ST(" T") return new cMenuEditMapItem( tr("Hierarchy"), &dtp.hierarchy, HierarchyValues); else return GetOsdItem();
|
||||
case 11: ST(" S ") return new cMenuEditMapItem( tr("Rolloff"), &dtp.rollOff, RollOffValues); else return GetOsdItem();
|
||||
default: return NULL;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
// --- cDvbDevice ------------------------------------------------------------
|
||||
|
||||
int cDvbDevice::setTransferModeForDolbyDigital = 1;
|
||||
@ -486,6 +745,9 @@ bool cDvbDevice::Probe(int Adapter, int Frontend)
|
||||
|
||||
bool cDvbDevice::Initialize(void)
|
||||
{
|
||||
new cDvbSourceParam('C', "DVB-C");
|
||||
new cDvbSourceParam('S', "DVB-S");
|
||||
new cDvbSourceParam('T', "DVB-T");
|
||||
int Checked = 0;
|
||||
int Found = 0;
|
||||
for (int Adapter = 0; ; Adapter++) {
|
||||
@ -612,9 +874,10 @@ bool cDvbDevice::ProvidesTransponder(const cChannel *Channel) const
|
||||
return false; // doesn't provide source
|
||||
if (!cSource::IsSat(Channel->Source()))
|
||||
return DeviceHooksProvidesTransponder(Channel); // source is sufficient for non sat
|
||||
if (frontendType == SYS_DVBS && Channel->System() == SYS_DVBS2)
|
||||
cDvbTransponderParameters dtp(Channel->Parameters());
|
||||
if (frontendType == SYS_DVBS && dtp.System() == SYS_DVBS2)
|
||||
return false; // requires modulation system which frontend doesn't provide
|
||||
if (!Setup.DiSEqC || Diseqcs.Get(CardIndex() + 1, Channel->Source(), Channel->Frequency(), Channel->Polarization()))
|
||||
if (!Setup.DiSEqC || Diseqcs.Get(CardIndex() + 1, Channel->Source(), Channel->Frequency(), dtp.Polarization()))
|
||||
return DeviceHooksProvidesTransponder(Channel);
|
||||
return false;
|
||||
}
|
||||
|
67
dvbdevice.h
67
dvbdevice.h
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: dvbdevice.h 2.12 2010/02/06 14:36:24 kls Exp $
|
||||
* $Id: dvbdevice.h 2.13 2010/02/21 14:06:08 kls Exp $
|
||||
*/
|
||||
|
||||
#ifndef __DVBDEVICE_H
|
||||
@ -31,6 +31,71 @@
|
||||
#define DEV_DVB_AUDIO "audio"
|
||||
#define DEV_DVB_CA "ca"
|
||||
|
||||
struct tDvbParameterMap {
|
||||
int userValue;
|
||||
int driverValue;
|
||||
const char *userString;
|
||||
};
|
||||
|
||||
int MapToUser(int Value, const tDvbParameterMap *Map, const char **String = NULL);
|
||||
int MapToDriver(int Value, const tDvbParameterMap *Map);
|
||||
int UserIndex(int Value, const tDvbParameterMap *Map);
|
||||
int DriverIndex(int Value, const tDvbParameterMap *Map);
|
||||
|
||||
extern const tDvbParameterMap InversionValues[];
|
||||
extern const tDvbParameterMap BandwidthValues[];
|
||||
extern const tDvbParameterMap CoderateValues[];
|
||||
extern const tDvbParameterMap ModulationValues[];
|
||||
extern const tDvbParameterMap SystemValues[];
|
||||
extern const tDvbParameterMap TransmissionValues[];
|
||||
extern const tDvbParameterMap GuardValues[];
|
||||
extern const tDvbParameterMap HierarchyValues[];
|
||||
extern const tDvbParameterMap RollOffValues[];
|
||||
|
||||
class cDvbTransponderParameters {
|
||||
friend class cDvbSourceParam;
|
||||
private:
|
||||
char polarization;
|
||||
int inversion;
|
||||
int bandwidth;
|
||||
int coderateH;
|
||||
int coderateL;
|
||||
int modulation;
|
||||
int system;
|
||||
int transmission;
|
||||
int guard;
|
||||
int hierarchy;
|
||||
int rollOff;
|
||||
int PrintParameter(char *p, char Name, int Value) const;
|
||||
const char *ParseParameter(const char *s, int &Value, const tDvbParameterMap *Map);
|
||||
public:
|
||||
cDvbTransponderParameters(const char *Parameters = NULL);
|
||||
char Polarization(void) const { return polarization; }
|
||||
int Inversion(void) const { return inversion; }
|
||||
int Bandwidth(void) const { return bandwidth; }
|
||||
int CoderateH(void) const { return coderateH; }
|
||||
int CoderateL(void) const { return coderateL; }
|
||||
int Modulation(void) const { return modulation; }
|
||||
int System(void) const { return system; }
|
||||
int Transmission(void) const { return transmission; }
|
||||
int Guard(void) const { return guard; }
|
||||
int Hierarchy(void) const { return hierarchy; }
|
||||
int RollOff(void) const { return rollOff; }
|
||||
void SetPolarization(char Polarization) { polarization = Polarization; }
|
||||
void SetInversion(int Inversion) { inversion = Inversion; }
|
||||
void SetBandwidth(int Bandwidth) { bandwidth = Bandwidth; }
|
||||
void SetCoderateH(int CoderateH) { coderateH = CoderateH; }
|
||||
void SetCoderateL(int CoderateL) { coderateL = CoderateL; }
|
||||
void SetModulation(int Modulation) { modulation = Modulation; }
|
||||
void SetSystem(int System) { system = System; }
|
||||
void SetTransmission(int Transmission) { transmission = Transmission; }
|
||||
void SetGuard(int Guard) { guard = Guard; }
|
||||
void SetHierarchy(int Hierarchy) { hierarchy = Hierarchy; }
|
||||
void SetRollOff(int RollOff) { rollOff = RollOff; }
|
||||
cString ToString(char Type) const;
|
||||
bool Parse(const char *s);
|
||||
};
|
||||
|
||||
class cDvbTuner;
|
||||
|
||||
/// The cDvbDevice implements a DVB device which can be accessed through the Linux DVB driver API.
|
||||
|
33
menu.c
33
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 2.16 2010/02/07 13:31:49 kls Exp $
|
||||
* $Id: menu.c 2.17 2010/02/21 14:09:19 kls Exp $
|
||||
*/
|
||||
|
||||
#include "menu.h"
|
||||
@ -24,6 +24,7 @@
|
||||
#include "recording.h"
|
||||
#include "remote.h"
|
||||
#include "shutdown.h"
|
||||
#include "sourceparams.h"
|
||||
#include "sources.h"
|
||||
#include "status.h"
|
||||
#include "themes.h"
|
||||
@ -189,6 +190,7 @@ class cMenuEditChannel : public cOsdMenu {
|
||||
private:
|
||||
cChannel *channel;
|
||||
cChannel data;
|
||||
cSourceParam *sourceParam;
|
||||
char name[256];
|
||||
void Setup(void);
|
||||
public:
|
||||
@ -200,6 +202,7 @@ cMenuEditChannel::cMenuEditChannel(cChannel *Channel, bool New)
|
||||
:cOsdMenu(tr("Edit channel"), 16)
|
||||
{
|
||||
channel = Channel;
|
||||
sourceParam = NULL;
|
||||
if (channel) {
|
||||
data = *channel;
|
||||
if (New) {
|
||||
@ -215,8 +218,6 @@ cMenuEditChannel::cMenuEditChannel(cChannel *Channel, bool New)
|
||||
void cMenuEditChannel::Setup(void)
|
||||
{
|
||||
int current = Current();
|
||||
char type = **cSource::ToString(data.source);
|
||||
#define ST(s) if (strchr(s, type))
|
||||
|
||||
Clear();
|
||||
|
||||
@ -242,18 +243,13 @@ void cMenuEditChannel::Setup(void)
|
||||
Add(new cMenuEditIntItem( tr("Rid"), &data.rid, 0));
|
||||
XXX*/
|
||||
// Parameters for specific types of sources:
|
||||
ST(" S ") Add(new cMenuEditChrItem( tr("Polarization"), &data.polarization, "hvlr"));
|
||||
ST(" S ") Add(new cMenuEditMapItem( tr("System"), &data.system, SystemValues));
|
||||
ST("CS ") Add(new cMenuEditIntItem( tr("Srate"), &data.srate));
|
||||
ST("CST") Add(new cMenuEditMapItem( tr("Inversion"), &data.inversion, InversionValues));
|
||||
ST("CST") Add(new cMenuEditMapItem( tr("CoderateH"), &data.coderateH, CoderateValues));
|
||||
ST(" T") Add(new cMenuEditMapItem( tr("CoderateL"), &data.coderateL, CoderateValues));
|
||||
ST("CST") Add(new cMenuEditMapItem( tr("Modulation"), &data.modulation, ModulationValues));
|
||||
ST(" T") Add(new cMenuEditMapItem( tr("Bandwidth"), &data.bandwidth, BandwidthValues));
|
||||
ST(" T") Add(new cMenuEditMapItem( tr("Transmission"), &data.transmission, TransmissionValues));
|
||||
ST(" T") Add(new cMenuEditMapItem( tr("Guard"), &data.guard, GuardValues));
|
||||
ST(" T") Add(new cMenuEditMapItem( tr("Hierarchy"), &data.hierarchy, HierarchyValues));
|
||||
ST(" S ") Add(new cMenuEditMapItem( tr("Rolloff"), &data.rollOff, RollOffValues));
|
||||
sourceParam = SourceParams.Get(**cSource::ToString(data.source));
|
||||
if (sourceParam) {
|
||||
sourceParam->SetData(&data);
|
||||
cOsdItem *Item;
|
||||
while ((Item = sourceParam->GetOsdItem()) != NULL)
|
||||
Add(Item);
|
||||
}
|
||||
|
||||
SetCurrent(Get(current));
|
||||
Display();
|
||||
@ -266,6 +262,8 @@ eOSState cMenuEditChannel::ProcessKey(eKeys Key)
|
||||
|
||||
if (state == osUnknown) {
|
||||
if (Key == kOk) {
|
||||
if (sourceParam)
|
||||
sourceParam->GetData(&data);
|
||||
if (Channels.HasUniqueChannelID(&data, channel)) {
|
||||
data.name = strcpyrealloc(data.name, name);
|
||||
if (channel) {
|
||||
@ -289,8 +287,11 @@ eOSState cMenuEditChannel::ProcessKey(eKeys Key)
|
||||
}
|
||||
}
|
||||
}
|
||||
if (Key != kNone && (data.source & cSource::st_Mask) != (oldSource & cSource::st_Mask))
|
||||
if (Key != kNone && (data.source & cSource::st_Mask) != (oldSource & cSource::st_Mask)) {
|
||||
if (sourceParam)
|
||||
sourceParam->GetData(&data);
|
||||
Setup();
|
||||
}
|
||||
return state;
|
||||
}
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: menuitems.c 2.5 2009/12/06 11:31:20 kls Exp $
|
||||
* $Id: menuitems.c 2.6 2010/02/16 14:44:35 kls Exp $
|
||||
*/
|
||||
|
||||
#include "menuitems.h"
|
||||
@ -1007,7 +1007,7 @@ eOSState cMenuEditTimeItem::ProcessKey(eKeys Key)
|
||||
|
||||
// --- cMenuEditMapItem ------------------------------------------------------
|
||||
|
||||
cMenuEditMapItem::cMenuEditMapItem(const char *Name, int *Value, const tChannelParameterMap *Map, const char *ZeroString)
|
||||
cMenuEditMapItem::cMenuEditMapItem(const char *Name, int *Value, const tDvbParameterMap *Map, const char *ZeroString)
|
||||
:cMenuEditItem(Name)
|
||||
{
|
||||
value = Value;
|
||||
|
@ -4,13 +4,14 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: menuitems.h 2.2 2009/05/03 12:50:34 kls Exp $
|
||||
* $Id: menuitems.h 2.3 2010/02/21 13:58:21 kls Exp $
|
||||
*/
|
||||
|
||||
#ifndef __MENUITEMS_H
|
||||
#define __MENUITEMS_H
|
||||
|
||||
#include <limits.h>
|
||||
#include "dvbdevice.h"
|
||||
#include "osdbase.h"
|
||||
|
||||
extern const char *FileNameChars;
|
||||
@ -175,11 +176,11 @@ public:
|
||||
class cMenuEditMapItem : public cMenuEditItem {
|
||||
protected:
|
||||
int *value;
|
||||
const tChannelParameterMap *map;
|
||||
const tDvbParameterMap *map;
|
||||
const char *zeroString;
|
||||
virtual void Set(void);
|
||||
public:
|
||||
cMenuEditMapItem(const char *Name, int *Value, const tChannelParameterMap *Map, const char *ZeroString = NULL);
|
||||
cMenuEditMapItem(const char *Name, int *Value, const tDvbParameterMap *Map, const char *ZeroString = NULL);
|
||||
virtual eOSState ProcessKey(eKeys Key);
|
||||
};
|
||||
|
||||
|
56
nit.c
56
nit.c
@ -4,12 +4,13 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: nit.c 2.4 2009/12/06 11:36:16 kls Exp $
|
||||
* $Id: nit.c 2.5 2010/02/16 15:37:05 kls Exp $
|
||||
*/
|
||||
|
||||
#include "nit.h"
|
||||
#include <linux/dvb/frontend.h>
|
||||
#include "channels.h"
|
||||
#include "dvbdevice.h"
|
||||
#include "eitscan.h"
|
||||
#include "libsi/section.h"
|
||||
#include "libsi/descriptor.h"
|
||||
@ -124,21 +125,22 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
|
||||
switch (d->getDescriptorTag()) {
|
||||
case SI::SatelliteDeliverySystemDescriptorTag: {
|
||||
SI::SatelliteDeliverySystemDescriptor *sd = (SI::SatelliteDeliverySystemDescriptor *)d;
|
||||
cDvbTransponderParameters dtp;
|
||||
int Source = cSource::FromData(cSource::stSat, BCD2INT(sd->getOrbitalPosition()), sd->getWestEastFlag());
|
||||
int Frequency = Frequencies[0] = BCD2INT(sd->getFrequency()) / 100;
|
||||
static char Polarizations[] = { 'h', 'v', 'l', 'r' };
|
||||
char Polarization = Polarizations[sd->getPolarization()];
|
||||
static char Polarizations[] = { 'H', 'V', 'L', 'R' };
|
||||
dtp.SetPolarization(Polarizations[sd->getPolarization()]);
|
||||
static int CodeRates[] = { FEC_NONE, FEC_1_2, FEC_2_3, FEC_3_4, FEC_5_6, FEC_7_8, FEC_8_9, FEC_3_5, FEC_4_5, FEC_9_10, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_NONE };
|
||||
int CodeRate = CodeRates[sd->getFecInner()];
|
||||
dtp.SetCoderateH(CodeRates[sd->getFecInner()]);
|
||||
static int Modulations[] = { QAM_AUTO, QPSK, PSK_8, QAM_16 };
|
||||
int Modulation = Modulations[sd->getModulationType()];
|
||||
int System = sd->getModulationSystem() ? SYS_DVBS2 : SYS_DVBS;
|
||||
dtp.SetModulation(Modulations[sd->getModulationType()]);
|
||||
dtp.SetSystem(sd->getModulationSystem() ? SYS_DVBS2 : SYS_DVBS);
|
||||
static int RollOffs[] = { ROLLOFF_35, ROLLOFF_25, ROLLOFF_20, ROLLOFF_AUTO };
|
||||
int RollOff = sd->getModulationSystem() ? RollOffs[sd->getRollOff()] : ROLLOFF_AUTO;
|
||||
dtp.SetRollOff(sd->getModulationSystem() ? RollOffs[sd->getRollOff()] : ROLLOFF_AUTO);
|
||||
int SymbolRate = BCD2INT(sd->getSymbolRate()) / 10;
|
||||
if (ThisNIT >= 0) {
|
||||
for (int n = 0; n < NumFrequencies; n++) {
|
||||
if (ISTRANSPONDER(cChannel::Transponder(Frequencies[n], Polarization), Transponder())) {
|
||||
if (ISTRANSPONDER(cChannel::Transponder(Frequencies[n], dtp.Polarization()), Transponder())) {
|
||||
nits[ThisNIT].hasTransponder = true;
|
||||
//printf("has transponder %d\n", Transponder());
|
||||
break;
|
||||
@ -152,23 +154,23 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
|
||||
if (!Channel->GroupSep() && Channel->Source() == Source && Channel->Nid() == ts.getOriginalNetworkId() && Channel->Tid() == ts.getTransportStreamId()) {
|
||||
int transponder = Channel->Transponder();
|
||||
found = true;
|
||||
if (!ISTRANSPONDER(cChannel::Transponder(Frequency, Polarization), transponder)) {
|
||||
if (!ISTRANSPONDER(cChannel::Transponder(Frequency, dtp.Polarization()), transponder)) {
|
||||
for (int n = 0; n < NumFrequencies; n++) {
|
||||
if (ISTRANSPONDER(cChannel::Transponder(Frequencies[n], Polarization), transponder)) {
|
||||
if (ISTRANSPONDER(cChannel::Transponder(Frequencies[n], dtp.Polarization()), transponder)) {
|
||||
Frequency = Frequencies[n];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (ISTRANSPONDER(cChannel::Transponder(Frequency, Polarization), Transponder())) // only modify channels if we're actually receiving this transponder
|
||||
Channel->SetSatTransponderData(Source, Frequency, Polarization, SymbolRate, CodeRate, Modulation, System, RollOff);
|
||||
if (ISTRANSPONDER(cChannel::Transponder(Frequency, dtp.Polarization()), Transponder())) // only modify channels if we're actually receiving this transponder
|
||||
Channel->SetTransponderData(Source, Frequency, SymbolRate, dtp.ToString('S'));
|
||||
}
|
||||
}
|
||||
if (!found) {
|
||||
for (int n = 0; n < NumFrequencies; n++) {
|
||||
cChannel *Channel = new cChannel;
|
||||
Channel->SetId(ts.getOriginalNetworkId(), ts.getTransportStreamId(), 0, 0);
|
||||
if (Channel->SetSatTransponderData(Source, Frequencies[n], Polarization, SymbolRate, CodeRate, Modulation, System, RollOff))
|
||||
if (Channel->SetTransponderData(Source, Frequencies[n], SymbolRate, dtp.ToString('S')))
|
||||
EITScanner.AddTransponder(Channel);
|
||||
else
|
||||
delete Channel;
|
||||
@ -179,13 +181,14 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
|
||||
break;
|
||||
case SI::CableDeliverySystemDescriptorTag: {
|
||||
SI::CableDeliverySystemDescriptor *sd = (SI::CableDeliverySystemDescriptor *)d;
|
||||
cDvbTransponderParameters dtp;
|
||||
int Source = cSource::FromData(cSource::stCable);
|
||||
int Frequency = Frequencies[0] = BCD2INT(sd->getFrequency()) / 10;
|
||||
//XXX FEC_outer???
|
||||
static int CodeRates[] = { FEC_NONE, FEC_1_2, FEC_2_3, FEC_3_4, FEC_5_6, FEC_7_8, FEC_8_9, FEC_3_5, FEC_4_5, FEC_9_10, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_NONE };
|
||||
int CodeRate = CodeRates[sd->getFecInner()];
|
||||
dtp.SetCoderateH(CodeRates[sd->getFecInner()]);
|
||||
static int Modulations[] = { QPSK, QAM_16, QAM_32, QAM_64, QAM_128, QAM_256, QAM_AUTO };
|
||||
int Modulation = Modulations[min(sd->getModulation(), 6)];
|
||||
dtp.SetModulation(Modulations[min(sd->getModulation(), 6)]);
|
||||
int SymbolRate = BCD2INT(sd->getSymbolRate()) / 10;
|
||||
if (ThisNIT >= 0) {
|
||||
for (int n = 0; n < NumFrequencies; n++) {
|
||||
@ -212,14 +215,14 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
|
||||
}
|
||||
}
|
||||
if (ISTRANSPONDER(Frequency / 1000, Transponder())) // only modify channels if we're actually receiving this transponder
|
||||
Channel->SetCableTransponderData(Source, Frequency, Modulation, SymbolRate, CodeRate);
|
||||
Channel->SetTransponderData(Source, Frequency, SymbolRate, dtp.ToString('C'));
|
||||
}
|
||||
}
|
||||
if (!found) {
|
||||
for (int n = 0; n < NumFrequencies; n++) {
|
||||
cChannel *Channel = new cChannel;
|
||||
Channel->SetId(ts.getOriginalNetworkId(), ts.getTransportStreamId(), 0, 0);
|
||||
if (Channel->SetCableTransponderData(Source, Frequencies[n], Modulation, SymbolRate, CodeRate))
|
||||
if (Channel->SetTransponderData(Source, Frequencies[n], SymbolRate, dtp.ToString('C')))
|
||||
EITScanner.AddTransponder(Channel);
|
||||
else
|
||||
delete Channel;
|
||||
@ -230,21 +233,22 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
|
||||
break;
|
||||
case SI::TerrestrialDeliverySystemDescriptorTag: {
|
||||
SI::TerrestrialDeliverySystemDescriptor *sd = (SI::TerrestrialDeliverySystemDescriptor *)d;
|
||||
cDvbTransponderParameters dtp;
|
||||
int Source = cSource::FromData(cSource::stTerr);
|
||||
int Frequency = Frequencies[0] = sd->getFrequency() * 10;
|
||||
static int Bandwidths[] = { 8000000, 7000000, 6000000, 0, 0, 0, 0, 0 };
|
||||
int Bandwidth = Bandwidths[sd->getBandwidth()];
|
||||
dtp.SetBandwidth(Bandwidths[sd->getBandwidth()]);
|
||||
static int Constellations[] = { QPSK, QAM_16, QAM_64, QAM_AUTO };
|
||||
int Constellation = Constellations[sd->getConstellation()];
|
||||
dtp.SetModulation(Constellations[sd->getConstellation()]);
|
||||
static int Hierarchies[] = { HIERARCHY_NONE, HIERARCHY_1, HIERARCHY_2, HIERARCHY_4, HIERARCHY_AUTO, HIERARCHY_AUTO, HIERARCHY_AUTO, HIERARCHY_AUTO };
|
||||
int Hierarchy = Hierarchies[sd->getHierarchy()];
|
||||
dtp.SetHierarchy(Hierarchies[sd->getHierarchy()]);
|
||||
static int CodeRates[] = { FEC_1_2, FEC_2_3, FEC_3_4, FEC_5_6, FEC_7_8, FEC_AUTO, FEC_AUTO, FEC_AUTO };
|
||||
int CodeRateHP = CodeRates[sd->getCodeRateHP()];
|
||||
int CodeRateLP = CodeRates[sd->getCodeRateLP()];
|
||||
dtp.SetCoderateH(CodeRates[sd->getCodeRateHP()]);
|
||||
dtp.SetCoderateL(CodeRates[sd->getCodeRateLP()]);
|
||||
static int GuardIntervals[] = { GUARD_INTERVAL_1_32, GUARD_INTERVAL_1_16, GUARD_INTERVAL_1_8, GUARD_INTERVAL_1_4 };
|
||||
int GuardInterval = GuardIntervals[sd->getGuardInterval()];
|
||||
dtp.SetGuard(GuardIntervals[sd->getGuardInterval()]);
|
||||
static int TransmissionModes[] = { TRANSMISSION_MODE_2K, TRANSMISSION_MODE_8K, TRANSMISSION_MODE_AUTO, TRANSMISSION_MODE_AUTO };
|
||||
int TransmissionMode = TransmissionModes[sd->getTransmissionMode()];
|
||||
dtp.SetTransmission(TransmissionModes[sd->getTransmissionMode()]);
|
||||
if (ThisNIT >= 0) {
|
||||
for (int n = 0; n < NumFrequencies; n++) {
|
||||
if (ISTRANSPONDER(Frequencies[n] / 1000000, Transponder())) {
|
||||
@ -270,14 +274,14 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
|
||||
}
|
||||
}
|
||||
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);
|
||||
Channel->SetTransponderData(Source, Frequency, 0, dtp.ToString('T'));
|
||||
}
|
||||
}
|
||||
if (!found) {
|
||||
for (int n = 0; n < NumFrequencies; n++) {
|
||||
cChannel *Channel = new cChannel;
|
||||
Channel->SetId(ts.getOriginalNetworkId(), ts.getTransportStreamId(), 0, 0);
|
||||
if (Channel->SetTerrTransponderData(Source, Frequencies[n], Bandwidth, Constellation, Hierarchy, CodeRateHP, CodeRateLP, GuardInterval, TransmissionMode))
|
||||
if (Channel->SetTransponderData(Source, Frequencies[n], 0, dtp.ToString('T')))
|
||||
EITScanner.AddTransponder(Channel);
|
||||
else
|
||||
delete Channel;
|
||||
|
86
po/ca_ES.po
86
po/ca_ES.po
@ -10,7 +10,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2008-03-02 19:02+0100\n"
|
||||
"Last-Translator: Luca Olivetti <luca@ventoso.org>\n"
|
||||
"Language-Team: Catalanian\n"
|
||||
@ -18,6 +18,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-1\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Canal incorrecte ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Canal no disponible!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "No puc iniciar el mode de transferència!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "off"
|
||||
|
||||
@ -30,14 +39,41 @@ msgstr "auto"
|
||||
msgid "none"
|
||||
msgstr "cap"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Canal incorrecte ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarització"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Canal no disponible!"
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "No puc iniciar el mode de transferència!"
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversió"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulació"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Amplada de banda"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmissió"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Protegir"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Jerarquia"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Iniciant exploració EPG"
|
||||
@ -526,42 +562,6 @@ msgstr "Acc
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarització"
|
||||
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversió"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulació"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Amplada de banda"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmissió"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Protegir"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Jerarquia"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Propietats del canal duplicades!"
|
||||
|
||||
|
86
po/cs_CZ.po
86
po/cs_CZ.po
@ -8,7 +8,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2008-02-28 15:00+0200\n"
|
||||
"Last-Translator: Vladimír Bárta <vladimir.barta@k2atmitec.cz>, Jiøí Dobrý <jdobry@centrum.cz>\n"
|
||||
"Language-Team: Czech\n"
|
||||
@ -16,6 +16,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-2\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Neplatný kanál ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanál není dostupný!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Nelze zaèít s pøenosem"
|
||||
|
||||
msgid "off"
|
||||
msgstr "vyp."
|
||||
|
||||
@ -28,14 +37,41 @@ msgstr "auto"
|
||||
msgid "none"
|
||||
msgstr "¾ádný"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Neplatný kanál ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarizace"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanál není dostupný!"
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Nelze zaèít s pøenosem"
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulace"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "©íøka pásma"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Pøenos"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarchy"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Zaèíná prohledávání EPG"
|
||||
@ -524,42 +560,6 @@ msgstr "CA"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarizace"
|
||||
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulace"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "©íøka pásma"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Pøenos"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarchy"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Nastavení kanálù nejsou unikátní!"
|
||||
|
||||
|
86
po/da_DK.po
86
po/da_DK.po
@ -7,7 +7,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
|
||||
"Last-Translator: Mogens Elneff <mogens@elneff.dk>\n"
|
||||
"Language-Team: Danish\n"
|
||||
@ -15,6 +15,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-15\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Ugyldig kanal! ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanal er ikke tilgængelig!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Kan ikke starte Transfer Mode!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "fra"
|
||||
|
||||
@ -27,14 +36,41 @@ msgstr "automatisk"
|
||||
msgid "none"
|
||||
msgstr "ingen"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Ugyldig kanal! ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarisation"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanal er ikke tilgængelig!"
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Kan ikke starte Transfer Mode!"
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulation"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Båndbredde"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmission"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarki"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Starter EPG skanning"
|
||||
@ -523,42 +559,6 @@ msgstr "CA"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarisation"
|
||||
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulation"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Båndbredde"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmission"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarki"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Kanalindstillinger er ikke entydige!"
|
||||
|
||||
|
86
po/de_DE.po
86
po/de_DE.po
@ -7,7 +7,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2010-01-16 16:46+0100\n"
|
||||
"Last-Translator: Klaus Schmidinger <kls@tvdr.de>\n"
|
||||
"Language-Team: German\n"
|
||||
@ -15,6 +15,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-15\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Ungültiger Kanal ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanal nicht verfügbar!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Transfer-Mode kann nicht gestartet werden!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "aus"
|
||||
|
||||
@ -27,14 +36,41 @@ msgstr "auto"
|
||||
msgid "none"
|
||||
msgstr "keine"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Ungültiger Kanal ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarisation"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanal nicht verfügbar!"
|
||||
msgid "System"
|
||||
msgstr "System"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Transfer-Mode kann nicht gestartet werden!"
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulation"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Bandbreite"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmission"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarchie"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "Rolloff"
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Aktualisiere EPG-Daten"
|
||||
@ -523,42 +559,6 @@ msgstr "CA"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarisation"
|
||||
|
||||
msgid "System"
|
||||
msgstr "System"
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulation"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Bandbreite"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmission"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarchie"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "Rolloff"
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Kanaleinstellungen sind nicht eindeutig!"
|
||||
|
||||
|
86
po/el_GR.po
86
po/el_GR.po
@ -7,7 +7,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
|
||||
"Last-Translator: Dimitrios Dimitrakos <mail@dimitrios.de>\n"
|
||||
"Language-Team: Greek\n"
|
||||
@ -15,6 +15,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-7\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Áêõñï êáíÜëç ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Ôï êáíÜëç äÝí åßíáé äéáèÝóéìï!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Áäõíáìßá åêêßíçóçò êáôÜóôáóçò ìåôáöïñÜò!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "êëåéóôü"
|
||||
|
||||
@ -27,14 +36,41 @@ msgstr "
|
||||
msgid "none"
|
||||
msgstr "êáíÝíá"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Áêõñï êáíÜëç ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Ðüëùóç"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Ôï êáíÜëç äÝí åßíáé äéáèÝóéìï!"
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Áäõíáìßá åêêßíçóçò êáôÜóôáóçò ìåôáöïñÜò!"
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "ÁíôéóôñïöÞ"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "Ñõèìüò Êþäéêá H"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "Ñõèìüò Êþäéêá L"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Äéáìüñöùóç"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Åýñïò Óõ÷íïôÞôùí"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "ÌåôÜäïóç"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Ðñïóôáóßá"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Éåñáñ÷åßá"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Áñ÷Þ óÜñùóç EPG"
|
||||
@ -523,42 +559,6 @@ msgstr "CA"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Ðüëùóç"
|
||||
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "ÁíôéóôñïöÞ"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "Ñõèìüò Êþäéêá H"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "Ñõèìüò Êþäéêá L"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Äéáìüñöùóç"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Åýñïò Óõ÷íïôÞôùí"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "ÌåôÜäïóç"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Ðñïóôáóßá"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Éåñáñ÷åßá"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Ïé ñéèìýóåéò ôïí êáíáëéþí áëëõëïóõìðßðôïõí!"
|
||||
|
||||
|
86
po/es_ES.po
86
po/es_ES.po
@ -8,7 +8,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2008-03-02 19:02+0100\n"
|
||||
"Last-Translator: Luca Olivetti <luca@ventoso.org>\n"
|
||||
"Language-Team: Spanish\n"
|
||||
@ -16,6 +16,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-15\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Canal no válido ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "!Canal no disponible!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "¡No se puede iniciar el modo de transferencia!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "off"
|
||||
|
||||
@ -28,14 +37,41 @@ msgstr "auto"
|
||||
msgid "none"
|
||||
msgstr "ninguno"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Canal no válido ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarización"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "!Canal no disponible!"
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "¡No se puede iniciar el modo de transferencia!"
|
||||
msgid "Srate"
|
||||
msgstr "T.símbolos"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulación"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Ancho de banda"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmisión"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Int.Guarda"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Jerarquía"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Iniciando la exploración de EPG"
|
||||
@ -524,42 +560,6 @@ msgstr "Acceso condicional (CA)"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarización"
|
||||
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "T.símbolos"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulación"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Ancho de banda"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmisión"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Int.Guarda"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Jerarquía"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "!Propiedades de canal duplicadas!"
|
||||
|
||||
|
86
po/et_EE.po
86
po/et_EE.po
@ -7,7 +7,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
|
||||
"Last-Translator: Arthur Konovalov <artlov@gmail.com>\n"
|
||||
"Language-Team: Estonian\n"
|
||||
@ -15,6 +15,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-13\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Vigane kanal ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanal ei ole kättesaadav!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Ülekandemooduse start nurjus!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "väljas"
|
||||
|
||||
@ -27,14 +36,41 @@ msgstr "automaatne"
|
||||
msgid "none"
|
||||
msgstr "puudu"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Vigane kanal ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarisatsioon"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanal ei ole kättesaadav!"
|
||||
msgid "System"
|
||||
msgstr "Süsteem"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Ülekandemooduse start nurjus!"
|
||||
msgid "Srate"
|
||||
msgstr "Sümbolikiirus"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversioon"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "VeaparandusH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "VeaparandusL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulatsioon"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Ribalaius"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmissioon"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Kaitseintervall"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarhia"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "Rolloff"
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "EPG skaneerimine käivitatud"
|
||||
@ -523,42 +559,6 @@ msgstr "CA"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarisatsioon"
|
||||
|
||||
msgid "System"
|
||||
msgstr "Süsteem"
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Sümbolikiirus"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversioon"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "VeaparandusH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "VeaparandusL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulatsioon"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Ribalaius"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmissioon"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Kaitseintervall"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarhia"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "Rolloff"
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Kanaliseaded ei ole unikaalsed!"
|
||||
|
||||
|
86
po/fi_FI.po
86
po/fi_FI.po
@ -10,7 +10,7 @@ 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-28 13:19+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"
|
||||
@ -18,6 +18,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-15\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Virheellinen kanavavalinta ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanava ei ole käytettävissä!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Siirtotilan aloitus epäonnistui!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "poissa"
|
||||
|
||||
@ -30,14 +39,41 @@ msgstr "auto"
|
||||
msgid "none"
|
||||
msgstr "tyhjä"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Virheellinen kanavavalinta ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarisaatio"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanava ei ole käytettävissä!"
|
||||
msgid "System"
|
||||
msgstr "Systeemi"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Siirtotilan aloitus epäonnistui!"
|
||||
msgid "Srate"
|
||||
msgstr "Symbolinopeus"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversio"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "Suojaustaso (HP)"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "Suojaustaso (LP)"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulaatio"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Kaistanleveys"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmissio"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Suojaväli"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarkia"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "Rolloff"
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Ohjelmaoppaan päivitys aloitettu"
|
||||
@ -526,42 +562,6 @@ msgstr "Salaus (CA)"
|
||||
msgid "Sid"
|
||||
msgstr "Palvelu-ID"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarisaatio"
|
||||
|
||||
msgid "System"
|
||||
msgstr "Systeemi"
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Symbolinopeus"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversio"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "Suojaustaso (HP)"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "Suojaustaso (LP)"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulaatio"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Kaistanleveys"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmissio"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Suojaväli"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarkia"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "Rolloff"
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Kanava-asetukset eivät ole yksilölliset!"
|
||||
|
||||
|
86
po/fr_FR.po
86
po/fr_FR.po
@ -13,7 +13,7 @@ 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-28 13:19+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"
|
||||
@ -21,6 +21,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-1\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Chaîne invalide ! ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Chaîne non disponible !"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Impossible d'utiliser le mode transfert !"
|
||||
|
||||
msgid "off"
|
||||
msgstr "off"
|
||||
|
||||
@ -33,14 +42,41 @@ msgstr "auto"
|
||||
msgid "none"
|
||||
msgstr "aucun"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Chaîne invalide ! ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarisation"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Chaîne non disponible !"
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Impossible d'utiliser le mode transfert !"
|
||||
msgid "Srate"
|
||||
msgstr "Fréq. symbole"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulation"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Bande passante"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmission"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Intervalle de garde"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hiérarchie"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Mise à jour du guide des programmes"
|
||||
@ -529,42 +565,6 @@ msgstr "Acc
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarisation"
|
||||
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Fréq. symbole"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulation"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Bande passante"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmission"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Intervalle de garde"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hiérarchie"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Caractéristiques des chaînes non uniques"
|
||||
|
||||
|
86
po/hr_HR.po
86
po/hr_HR.po
@ -9,7 +9,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2008-03-17 19:00+0100\n"
|
||||
"Last-Translator: Adrian Caval <anrxc@sysphere.org>\n"
|
||||
"Language-Team: Croatian\n"
|
||||
@ -17,6 +17,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-2\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Neispravan Program ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Program nije dostupan!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Nemoguæe zapoèeti Prijenos!!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "iskljuèi"
|
||||
|
||||
@ -29,14 +38,41 @@ msgstr "automatski"
|
||||
msgid "none"
|
||||
msgstr "ni¹ta"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Neispravan Program ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarizacija"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Program nije dostupan!"
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Nemoguæe zapoèeti Prijenos!!"
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inverzija"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulacija"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Propusnost"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Prijenos"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Za¹tita"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hijerarhija"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Poèinjem EPG pretragu"
|
||||
@ -525,42 +561,6 @@ msgstr "Kodiranje (CA)"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarizacija"
|
||||
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inverzija"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulacija"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Propusnost"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Prijenos"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Za¹tita"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hijerarhija"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Postavke programa nisu jedinstvene!"
|
||||
|
||||
|
86
po/hu_HU.po
86
po/hu_HU.po
@ -10,7 +10,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2007-12-01 21:42+0200\n"
|
||||
"Last-Translator: István Füley <ifuley@tigercomp.ro>\n"
|
||||
"Language-Team: Hungarian\n"
|
||||
@ -18,6 +18,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-2\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Érvénytelen csatorna ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Az adó nem elérhetõ"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Transfer-Mode nem indítható!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "ki"
|
||||
|
||||
@ -30,14 +39,41 @@ msgstr "auto"
|
||||
msgid "none"
|
||||
msgstr "semmi"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Érvénytelen csatorna ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarizáció"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Az adó nem elérhetõ"
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Transfer-Mode nem indítható!"
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Moduláció"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Sávszélesség"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Átvitel"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarhia"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "EPG adatok aktualizálása"
|
||||
@ -526,42 +562,6 @@ msgstr "CA"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarizáció"
|
||||
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Moduláció"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Sávszélesség"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Átvitel"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarhia"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Az adóbeállítások nem egyértelmûek"
|
||||
|
||||
|
86
po/it_IT.po
86
po/it_IT.po
@ -11,7 +11,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2010-01-31 23:06+0100\n"
|
||||
"Last-Translator: Diego Pierotto <vdr-italian@tiscali.it>\n"
|
||||
"Language-Team: Italian\n"
|
||||
@ -22,6 +22,15 @@ msgstr ""
|
||||
"X-Poedit-Country: ITALY\n"
|
||||
"X-Poedit-SourceCharset: utf-8\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Canale NON valido ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Canale non disponibile!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Impossibile avviare mod. trasferimento!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "off"
|
||||
|
||||
@ -34,14 +43,41 @@ msgstr "automatico"
|
||||
msgid "none"
|
||||
msgstr "nessuno"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Canale NON valido ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarizzazione"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Canale non disponibile!"
|
||||
msgid "System"
|
||||
msgstr "Sistema"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Impossibile avviare mod. trasferimento!"
|
||||
msgid "Srate"
|
||||
msgstr "SymbolRate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversione"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulazione"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Banda passante"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Trasmissione"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Gerarchia"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "Rolloff"
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Inizio scansione EPG"
|
||||
@ -530,42 +566,6 @@ msgstr "CA"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarizzazione"
|
||||
|
||||
msgid "System"
|
||||
msgstr "Sistema"
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "SymbolRate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversione"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulazione"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Banda passante"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Trasmissione"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Gerarchia"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "Rolloff"
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Parametri canale non univoci!"
|
||||
|
||||
|
86
po/lt_LT.po
86
po/lt_LT.po
@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2009-10-17 14:19+0200\n"
|
||||
"Last-Translator: Valdemaras Pipiras <varas@ambernet.lt>\n"
|
||||
"Language-Team: Lithuanian\n"
|
||||
@ -15,6 +15,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Klaidingas kanalas ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanalas neegzistuoja!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Negali pradėti perdavimo"
|
||||
|
||||
msgid "off"
|
||||
msgstr "įjungt"
|
||||
|
||||
@ -27,14 +36,41 @@ msgstr "auto"
|
||||
msgid "none"
|
||||
msgstr "nėra"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Klaidingas kanalas ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Poliarizacija"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanalas neegzistuoja!"
|
||||
msgid "System"
|
||||
msgstr "Sistema"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Negali pradėti perdavimo"
|
||||
msgid "Srate"
|
||||
msgstr "Perdavimo greitis (Symbol rate)"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversija"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Moduliacija"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Pralaidumas"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Perdavimas"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Apsauga"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarchija"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "Rolloff"
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Pradedamas EPG skanavimas"
|
||||
@ -523,42 +559,6 @@ msgstr "CA (dekodavimo sistema)"
|
||||
msgid "Sid"
|
||||
msgstr "Serviso id"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Poliarizacija"
|
||||
|
||||
msgid "System"
|
||||
msgstr "Sistema"
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Perdavimo greitis (Symbol rate)"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversija"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Moduliacija"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Pralaidumas"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Perdavimas"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Apsauga"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarchija"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "Rolloff"
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Kanalų nustatymai neunikalūs!"
|
||||
|
||||
|
86
po/nl_NL.po
86
po/nl_NL.po
@ -11,7 +11,7 @@ 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-28 13:19+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"
|
||||
@ -19,6 +19,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-15\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Ongeldig kanaal ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanaal niet beschikbaar"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Kan Transfer-Mode niet starten"
|
||||
|
||||
msgid "off"
|
||||
msgstr "uit"
|
||||
|
||||
@ -31,14 +40,41 @@ msgstr "auto"
|
||||
msgid "none"
|
||||
msgstr "geen"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Ongeldig kanaal ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarisatie"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanaal niet beschikbaar"
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Kan Transfer-Mode niet starten"
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulatie"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Bandbreedte"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmissie"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarchie"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Bezig met starten EPG scan"
|
||||
@ -527,42 +563,6 @@ msgstr "CA"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarisatie"
|
||||
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulatie"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Bandbreedte"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmissie"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarchie"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Kanaalinstellingen zijn niet uniek!"
|
||||
|
||||
|
84
po/nn_NO.po
84
po/nn_NO.po
@ -8,7 +8,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
|
||||
"Last-Translator: Truls Slevigen <truls@slevigen.no>\n"
|
||||
"Language-Team: Norwegian\n"
|
||||
@ -16,6 +16,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-1\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Ugyldig Kanal! ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr ""
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Kan ikke starte transfer modus!"
|
||||
|
||||
msgid "off"
|
||||
msgstr ""
|
||||
|
||||
@ -28,14 +37,41 @@ msgstr ""
|
||||
msgid "none"
|
||||
msgstr ""
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Ugyldig Kanal! ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarisasjon"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Kan ikke starte transfer modus!"
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulation"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Bandwidth"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmission"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarchy"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr ""
|
||||
@ -524,42 +560,6 @@ msgstr "Kortleser"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarisasjon"
|
||||
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulation"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Bandwidth"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmission"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarchy"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr ""
|
||||
|
||||
|
86
po/pl_PL.po
86
po/pl_PL.po
@ -8,7 +8,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2008-03-09 12:59+0100\n"
|
||||
"Last-Translator: Michael Rakowski <mrak@gmx.de>\n"
|
||||
"Language-Team: Polish\n"
|
||||
@ -16,6 +16,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-2\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Niepoprawny kana³ ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kana³ nie jest dostêpny!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Nie mo¿na uruchomiæ trybu transferu!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "wy³±cz"
|
||||
|
||||
@ -28,14 +37,41 @@ msgstr "auto"
|
||||
msgid "none"
|
||||
msgstr "brak"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Niepoprawny kana³ ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polaryzacja"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kana³ nie jest dostêpny!"
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Nie mo¿na uruchomiæ trybu transferu!"
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inwersja"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulacja"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Pasmo"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmisja"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarchia"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Rozpoczynam skanowanie EPG"
|
||||
@ -524,42 +560,6 @@ msgstr "CA"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polaryzacja"
|
||||
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inwersja"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulacja"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Pasmo"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmisja"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarchia"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Ustawienia kana³u nie s± unikalne!"
|
||||
|
||||
|
86
po/pt_PT.po
86
po/pt_PT.po
@ -7,7 +7,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2008-03-18 17:04+0100\n"
|
||||
"Last-Translator: anonymous\n"
|
||||
"Language-Team: Portuguese\n"
|
||||
@ -15,6 +15,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-1\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Canal inválido ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Canal indisponivel!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Impossível iniciar modo de transferência!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "off"
|
||||
|
||||
@ -27,14 +36,41 @@ msgstr "Autom
|
||||
msgid "none"
|
||||
msgstr "nenhum"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Canal inválido ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarização"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Canal indisponivel!"
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Impossível iniciar modo de transferência!"
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversão"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulação"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Bandwidth"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmissão"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarquia"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Iniciar a procura de EPG"
|
||||
@ -523,42 +559,6 @@ msgstr "CA"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarização"
|
||||
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversão"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulação"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Bandwidth"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmissão"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarquia"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Propriedades do canal não são únicas!"
|
||||
|
||||
|
86
po/ro_RO.po
86
po/ro_RO.po
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: VDR 1.7.12\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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2010-02-11 13:38+0100\n"
|
||||
"Last-Translator: Lucian Muresan <lucianm@users.sourceforge.net>\n"
|
||||
"Language-Team: Romanian\n"
|
||||
@ -18,6 +18,15 @@ msgstr ""
|
||||
"X-Poedit-Language: Romanian\n"
|
||||
"X-Poedit-Country: ROMANIA\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Canal invalid ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Canal indisponibil"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Nu pot porni modul de transfer!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "oprit"
|
||||
|
||||
@ -30,14 +39,41 @@ msgstr "automat"
|
||||
msgid "none"
|
||||
msgstr "niciuna(ul)"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Canal invalid ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarizare"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Canal indisponibil"
|
||||
msgid "System"
|
||||
msgstr "Sistem"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Nu pot porni modul de transfer!"
|
||||
msgid "Srate"
|
||||
msgstr "Ratã simboluri"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversiune"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulaþie"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Lãrgime de bandã"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmisie"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Ierarhie"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "Rolloff"
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Pornesc achiziþia EPG"
|
||||
@ -526,42 +562,6 @@ msgstr "CA (Acces Condi
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarizare"
|
||||
|
||||
msgid "System"
|
||||
msgstr "Sistem"
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Ratã simboluri"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversiune"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulaþie"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Lãrgime de bandã"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmisie"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Ierarhie"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "Rolloff"
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Parametrii canalului nu sunt univoci!"
|
||||
|
||||
|
86
po/ru_RU.po
86
po/ru_RU.po
@ -8,7 +8,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2008-12-15 14:37+0100\n"
|
||||
"Last-Translator: Oleg Roitburd <oleg@roitburd.de>\n"
|
||||
"Language-Team: Russian\n"
|
||||
@ -16,6 +16,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-5\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** ½ÕßàÐÒØÛìÝëÙ ÚÐÝÐÛ ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "ºÐÝÐÛ ÝÕÔÞáâãßÕÝ!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "½ÕÒÞ×ÜÞÖÝÞ ÒÚÛîçØâì àÕÖØÜ ßàÞßãáÚÐ!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "ÒëÚÛ"
|
||||
|
||||
@ -28,14 +37,41 @@ msgstr "
|
||||
msgid "none"
|
||||
msgstr "ÝØçÕÓÞ"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** ½ÕßàÐÒØÛìÝëÙ ÚÐÝÐÛ ***"
|
||||
msgid "Polarization"
|
||||
msgstr "¿ÞÛïàØ×ÐæØï"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "ºÐÝÐÛ ÝÕÔÞáâãßÕÝ!"
|
||||
msgid "System"
|
||||
msgstr "ÁØáâÕÜÐ"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "½ÕÒÞ×ÜÞÖÝÞ ÒÚÛîçØâì àÕÖØÜ ßàÞßãáÚÐ!"
|
||||
msgid "Srate"
|
||||
msgstr "ÁØÜÒ. áÚÞàÞáâì"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "¸ÝÒÕàáØï"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "¼ÞÔãÛïæØï"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "´ØÐßÐ×ÞÝ"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "¿ÕàÕÔÐçÐ"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "·ÐéØâÐ"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "¸ÕàÐàåØï"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "Rolloff"
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "½ÐçØÝÐî EPG-áÚÐÝØàÞÒÐÝØÕ"
|
||||
@ -524,42 +560,6 @@ msgstr "CA (
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "¿ÞÛïàØ×ÐæØï"
|
||||
|
||||
msgid "System"
|
||||
msgstr "ÁØáâÕÜÐ"
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "ÁØÜÒ. áÚÞàÞáâì"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "¸ÝÒÕàáØï"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "¼ÞÔãÛïæØï"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "´ØÐßÐ×ÞÝ"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "¿ÕàÕÔÐçÐ"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "·ÐéØâÐ"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "¸ÕàÐàåØï"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "Rolloff"
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "½ÐáâàÞÙÚØ ÚÐÝÐÛÐ ÝÕ ãÝØÚÐÛìÝë!"
|
||||
|
||||
|
86
po/sk_SK.po
86
po/sk_SK.po
@ -8,7 +8,7 @@ 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-28 13:19+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"
|
||||
@ -16,6 +16,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-2\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Neplatný kanál ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanál nie je dostupný!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Nemô¾e spusti» prenos!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "vypnuté"
|
||||
|
||||
@ -28,14 +37,41 @@ msgstr "automaticky"
|
||||
msgid "none"
|
||||
msgstr "¾iadny"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Neplatný kanál ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarizácia"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanál nie je dostupný!"
|
||||
msgid "System"
|
||||
msgstr "systém"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Nemô¾e spusti» prenos!"
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulácia"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "©írka pásma"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Prenos"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Ochrana"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarchia"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Zaèína prehµadáva» EPG"
|
||||
@ -524,42 +560,6 @@ msgstr "CA"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarizácia"
|
||||
|
||||
msgid "System"
|
||||
msgstr "systém"
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulácia"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "©írka pásma"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Prenos"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Ochrana"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarchia"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Nastavenia kanálu nie sú obyèajné!"
|
||||
|
||||
|
86
po/sl_SI.po
86
po/sl_SI.po
@ -8,7 +8,7 @@ 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-28 13:19+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"
|
||||
@ -16,6 +16,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-2\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Neznan kanal ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanal ni razpolo¾ljiv!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Ne morem zaèeti s prenosnim naèinom!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "izklop"
|
||||
|
||||
@ -28,14 +37,41 @@ msgstr "avtomatsko"
|
||||
msgid "none"
|
||||
msgstr "nobeden"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Neznan kanal ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarizacija"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanal ni razpolo¾ljiv!"
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Ne morem zaèeti s prenosnim naèinom!"
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inverzija"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulacija"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Pasovna ¹irina"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Prenos"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Za¹èita"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarhija"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Prièenjam EPG-scan"
|
||||
@ -524,42 +560,6 @@ msgstr "CA"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarizacija"
|
||||
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inverzija"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulacija"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Pasovna ¹irina"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Prenos"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Za¹èita"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarhija"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Nastavitve kanala niso edinstvene!"
|
||||
|
||||
|
86
po/sv_SE.po
86
po/sv_SE.po
@ -10,7 +10,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2008-03-12 18:25+0100\n"
|
||||
"Last-Translator: Magnus Andersson <svankan@bahnhof.se>\n"
|
||||
"Language-Team: Swedish\n"
|
||||
@ -18,6 +18,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-1\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Felaktig kanal ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanalen är inte tillgänglig!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Kan inte starta Transfer Mode!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "av"
|
||||
|
||||
@ -30,14 +39,41 @@ msgstr "automatisk"
|
||||
msgid "none"
|
||||
msgstr "ingen"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Felaktig kanal ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Polarisation"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanalen är inte tillgänglig!"
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Kan inte starta Transfer Mode!"
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulation"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Bandbredd"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmission"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarchy"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Påbörjar EPG skanning"
|
||||
@ -526,42 +562,6 @@ msgstr "Kortl
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Polarisation"
|
||||
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Inversion"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modulation"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Bandbredd"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Transmission"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Guard"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hierarchy"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Kanalinställningarna är ej unika!"
|
||||
|
||||
|
86
po/tr_TR.po
86
po/tr_TR.po
@ -7,7 +7,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2008-02-28 00:33+0100\n"
|
||||
"Last-Translator: Oktay Yolgeçen <oktay_73@yahoo.de>\n"
|
||||
"Language-Team: Turkish\n"
|
||||
@ -15,6 +15,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=ISO-8859-9\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Geçersiz kanal ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanal kullanýlamýyor!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Transfer modu baþlatýlamýyor!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "kapalý"
|
||||
|
||||
@ -27,14 +36,41 @@ msgstr "otomatik"
|
||||
msgid "none"
|
||||
msgstr "hiç"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Geçersiz kanal ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Kutuplaþma"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Kanal kullanýlamýyor!"
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Transfer modu baþlatýlamýyor!"
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Ýnversiyon"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modülasyon"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Bant geniþliði"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Ýletim"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Koruma"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hiyerarþi"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "EPG tarama baþlýyor"
|
||||
@ -523,42 +559,6 @@ msgstr "CA"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Kutuplaþma"
|
||||
|
||||
msgid "System"
|
||||
msgstr ""
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Srate"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Ýnversiyon"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Modülasyon"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Bant geniþliði"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Ýletim"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Koruma"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Hiyerarþi"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr ""
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Kanal ayarlarý belli deðýl!"
|
||||
|
||||
|
86
po/uk_UA.po
86
po/uk_UA.po
@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"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-28 13:19+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"
|
||||
@ -15,6 +15,15 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Неправильний канал ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Канал недоступний!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Неможливо включити режим пропуску!"
|
||||
|
||||
msgid "off"
|
||||
msgstr "викл"
|
||||
|
||||
@ -27,14 +36,41 @@ msgstr "авто"
|
||||
msgid "none"
|
||||
msgstr "нічого"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "*** Неправильний канал ***"
|
||||
msgid "Polarization"
|
||||
msgstr "Поляризація"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "Канал недоступний!"
|
||||
msgid "System"
|
||||
msgstr "Система"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "Неможливо включити режим пропуску!"
|
||||
msgid "Srate"
|
||||
msgstr "Симв. швидкість"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Інверсія"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Модуляція"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Діапазон"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Передача"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Захист"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Ієрархія"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "Крен"
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "Починаю EPG-сканування"
|
||||
@ -523,42 +559,6 @@ msgstr "CA (декодер)"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "Поляризація"
|
||||
|
||||
msgid "System"
|
||||
msgstr "Система"
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "Симв. швидкість"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "Інверсія"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "CoderateH"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "CoderateL"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "Модуляція"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "Діапазон"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "Передача"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "Захист"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "Ієрархія"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "Крен"
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "Настройки каналу не єдині!"
|
||||
|
||||
|
86
po/zh_CN.po
86
po/zh_CN.po
@ -7,7 +7,7 @@ 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-28 13:19+0100\n"
|
||||
"PO-Revision-Date: 2009-09-23 23:50+0800\n"
|
||||
"Last-Translator: Nan Feng <nfgx@21cn.com>\n"
|
||||
"Language-Team: Chinese\n"
|
||||
@ -18,6 +18,15 @@ msgstr ""
|
||||
"X-Poedit-Country: CHINA\n"
|
||||
"X-Poedit-SourceCharset: utf-8\n"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "***无效的频道 ***"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "频道不可用!"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "不能启动传送模式"
|
||||
|
||||
msgid "off"
|
||||
msgstr "关"
|
||||
|
||||
@ -30,14 +39,41 @@ msgstr "自动"
|
||||
msgid "none"
|
||||
msgstr "无"
|
||||
|
||||
msgid "*** Invalid Channel ***"
|
||||
msgstr "***无效的频道 ***"
|
||||
msgid "Polarization"
|
||||
msgstr "极化方式"
|
||||
|
||||
msgid "Channel not available!"
|
||||
msgstr "频道不可用!"
|
||||
msgid "System"
|
||||
msgstr "卫星系统"
|
||||
|
||||
msgid "Can't start Transfer Mode!"
|
||||
msgstr "不能启动传送模式"
|
||||
msgid "Srate"
|
||||
msgstr "符号率"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "反向"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "高符号频率"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "论符号频率"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "调制"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "带宽"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "传送"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "防护"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "层次"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "越零率"
|
||||
|
||||
msgid "Starting EPG scan"
|
||||
msgstr "开始节目单扫描"
|
||||
@ -526,42 +562,6 @@ msgstr "CA"
|
||||
msgid "Sid"
|
||||
msgstr "Sid"
|
||||
|
||||
msgid "Polarization"
|
||||
msgstr "极化方式"
|
||||
|
||||
msgid "System"
|
||||
msgstr "卫星系统"
|
||||
|
||||
msgid "Srate"
|
||||
msgstr "符号率"
|
||||
|
||||
msgid "Inversion"
|
||||
msgstr "反向"
|
||||
|
||||
msgid "CoderateH"
|
||||
msgstr "高符号频率"
|
||||
|
||||
msgid "CoderateL"
|
||||
msgstr "论符号频率"
|
||||
|
||||
msgid "Modulation"
|
||||
msgstr "调制"
|
||||
|
||||
msgid "Bandwidth"
|
||||
msgstr "带宽"
|
||||
|
||||
msgid "Transmission"
|
||||
msgstr "传送"
|
||||
|
||||
msgid "Guard"
|
||||
msgstr "防护"
|
||||
|
||||
msgid "Hierarchy"
|
||||
msgstr "层次"
|
||||
|
||||
msgid "Rolloff"
|
||||
msgstr "越零率"
|
||||
|
||||
msgid "Channel settings are not unique!"
|
||||
msgstr "频道设置不是唯一的!"
|
||||
|
||||
|
43
sourceparams.c
Normal file
43
sourceparams.c
Normal file
@ -0,0 +1,43 @@
|
||||
/*
|
||||
* sourceparams.c: Source parameter handling
|
||||
*
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: sourceparams.c 1.1 2010/02/28 12:15:49 kls Exp $
|
||||
*/
|
||||
|
||||
#include "sourceparams.h"
|
||||
#include "sources.h"
|
||||
|
||||
// --- cSourceParam ----------------------------------------------------------
|
||||
|
||||
cSourceParam::cSourceParam(char Source, const char *Description)
|
||||
{
|
||||
source = Source;
|
||||
if ('A' <= source && source <= 'Z') {
|
||||
if (SourceParams.Get(source)) {
|
||||
esyslog("ERROR: source parameters for '%c' already defined", source);
|
||||
return;
|
||||
}
|
||||
SourceParams.Add(this);
|
||||
if (Source != 'C' && Source != 'S' && Source != 'T')
|
||||
Sources.Add(new cSource(Source, Description));
|
||||
dsyslog("registered source parameters for '%c - %s'", source, Description);
|
||||
}
|
||||
else
|
||||
esyslog("ERROR: invalid source '%c'", source);
|
||||
}
|
||||
|
||||
// --- cSourceParams ---------------------------------------------------------
|
||||
|
||||
cSourceParams SourceParams;
|
||||
|
||||
cSourceParam *cSourceParams::Get(char Source) const
|
||||
{
|
||||
for (cSourceParam *sp = First(); sp; sp = Next(sp)) {
|
||||
if (sp->Source() == Source)
|
||||
return sp;
|
||||
}
|
||||
return NULL;
|
||||
}
|
53
sourceparams.h
Normal file
53
sourceparams.h
Normal file
@ -0,0 +1,53 @@
|
||||
/*
|
||||
* sourceparams.h: Source parameter handling
|
||||
*
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: sourceparams.h 1.1 2010/02/28 11:58:03 kls Exp $
|
||||
*/
|
||||
|
||||
#ifndef __SOURCEPARAMS_H
|
||||
#define __SOURCEPARAMS_H
|
||||
|
||||
#include "channels.h"
|
||||
#include "osdbase.h"
|
||||
#include "tools.h"
|
||||
|
||||
class cSourceParam : public cListObject {
|
||||
private:
|
||||
char source;
|
||||
public:
|
||||
cSourceParam(char Source, const char *Description);
|
||||
///< Sets up a parameter handler for the given Source.
|
||||
///< Source must be in the range 'A'...'Z', and there can only
|
||||
///< be one cSourceParam for any given source.
|
||||
///< Description contains a short, one line description of this source.
|
||||
///< If a plugin sets up a new cSourceParam, this will also trigger
|
||||
///< defining the appropriate cSource automatically.
|
||||
///< Objects of cSourceParam shall only be created on the heap, and
|
||||
///< shall never be deleted (they will be deleted automatically when
|
||||
///< the program ends).
|
||||
char Source(void) const { return source; }
|
||||
virtual void SetData(cChannel *Channel) = 0;
|
||||
///< Sets all source specific parameters to those of the given Channel.
|
||||
///< Must also reset a counter to use with later calls to GetOsdItem().
|
||||
virtual void GetData(cChannel *Channel) = 0;
|
||||
///< Copies all source specific parameters to the given Channel.
|
||||
virtual cOsdItem *GetOsdItem(void) = 0;
|
||||
///< Returns all the OSD items necessary for editing the source
|
||||
///< specific parameters of the channel that was given in the last
|
||||
///< call to SetData(). Each call to GetOsdItem() returns exactly
|
||||
///< one such item. After all items have been fetched, any further
|
||||
///< calls to GetOsdItem() return NULL. After another call to
|
||||
///< SetData(), the OSD items can be fetched again.
|
||||
};
|
||||
|
||||
class cSourceParams : public cList<cSourceParam> {
|
||||
public:
|
||||
cSourceParam *Get(char Source) const;
|
||||
};
|
||||
|
||||
extern cSourceParams SourceParams;
|
||||
|
||||
#endif //__SOURCEPARAMS_H
|
53
sources.c
53
sources.c
@ -4,11 +4,10 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: sources.c 1.4 2008/02/10 14:07:26 kls Exp $
|
||||
* $Id: sources.c 2.1 2010/02/28 12:00:31 kls Exp $
|
||||
*/
|
||||
|
||||
#include "sources.h"
|
||||
#include <ctype.h>
|
||||
|
||||
// --- cSource ---------------------------------------------------------------
|
||||
|
||||
@ -18,6 +17,12 @@ cSource::cSource(void)
|
||||
description = NULL;
|
||||
}
|
||||
|
||||
cSource::cSource(char Source, const char *Description)
|
||||
{
|
||||
code = int(Source) << 24;
|
||||
description = strdup(Description);
|
||||
}
|
||||
|
||||
cSource::~cSource()
|
||||
{
|
||||
free(description);
|
||||
@ -36,17 +41,13 @@ cString cSource::ToString(int Code)
|
||||
{
|
||||
char buffer[16];
|
||||
char *q = buffer;
|
||||
switch (Code & st_Mask) {
|
||||
case stCable: *q++ = 'C'; break;
|
||||
case stSat: *q++ = 'S';
|
||||
{
|
||||
int pos = Code & ~st_Mask;
|
||||
q += snprintf(q, sizeof(buffer) - 2, "%u.%u", (pos & ~st_Neg) / 10, (pos & ~st_Neg) % 10); // can't simply use "%g" here since the silly 'locale' messes up the decimal point
|
||||
*q++ = (Code & st_Neg) ? 'E' : 'W';
|
||||
}
|
||||
break;
|
||||
case stTerr: *q++ = 'T'; break;
|
||||
default: *q++ = Code + '0'; // backward compatibility
|
||||
*q++ = (Code & st_Mask) >> 24;
|
||||
int n = (Code & st_Pos);
|
||||
if (n > 0x00007FFF)
|
||||
n |= 0xFFFF0000;
|
||||
if (n) {
|
||||
q += snprintf(q, sizeof(buffer) - 2, "%u.%u", abs(n) / 10, abs(n) % 10); // can't simply use "%g" here since the silly 'locale' messes up the decimal point
|
||||
*q++ = (n < 0) ? 'E' : 'W';
|
||||
}
|
||||
*q = 0;
|
||||
return buffer;
|
||||
@ -54,22 +55,14 @@ cString cSource::ToString(int Code)
|
||||
|
||||
int cSource::FromString(const char *s)
|
||||
{
|
||||
int type = stNone;
|
||||
switch (toupper(*s)) {
|
||||
case 'C': type = stCable; break;
|
||||
case 'S': type = stSat; break;
|
||||
case 'T': type = stTerr; break;
|
||||
case '0' ... '9': type = *s - '0'; break; // backward compatibility
|
||||
default: esyslog("ERROR: unknown source key '%c'", *s);
|
||||
return stNone;
|
||||
}
|
||||
int code = type;
|
||||
if (type == stSat) {
|
||||
if ('A' <= *s && *s <= 'Z') {
|
||||
int code = int(*s) << 24;
|
||||
if (code == stSat) {
|
||||
int pos = 0;
|
||||
bool dot = false;
|
||||
bool neg = false;
|
||||
while (*++s) {
|
||||
switch (toupper(*s)) {
|
||||
switch (*s) {
|
||||
case '0' ... '9': pos *= 10;
|
||||
pos += *s - '0';
|
||||
break;
|
||||
@ -84,10 +77,14 @@ int cSource::FromString(const char *s)
|
||||
}
|
||||
}
|
||||
if (neg)
|
||||
pos |= st_Neg;
|
||||
code |= pos;
|
||||
pos = -pos;
|
||||
code |= (pos & st_Pos);
|
||||
}
|
||||
return code;
|
||||
}
|
||||
else
|
||||
esyslog("ERROR: unknown source key '%c'", *s);
|
||||
return stNone;
|
||||
}
|
||||
|
||||
int cSource::FromData(eSourceType SourceType, int Position, bool East)
|
||||
@ -95,7 +92,7 @@ int cSource::FromData(eSourceType SourceType, int Position, bool East)
|
||||
int code = SourceType;
|
||||
if (SourceType == stSat) {
|
||||
if (East)
|
||||
code |= st_Neg;
|
||||
Position = -Position;
|
||||
code |= (Position & st_Pos);;
|
||||
}
|
||||
return code;
|
||||
|
@ -190,8 +190,8 @@ S148W Echostar 1/2
|
||||
|
||||
# Cable
|
||||
|
||||
C Cable
|
||||
C DVB-C
|
||||
|
||||
# Terrestrial
|
||||
|
||||
T Terrestrial
|
||||
T DVB-T
|
||||
|
16
sources.h
16
sources.h
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: sources.h 1.4 2005/05/14 09:30:41 kls Exp $
|
||||
* $Id: sources.h 2.1 2010/02/21 16:11:19 kls Exp $
|
||||
*/
|
||||
|
||||
#ifndef __SOURCES_H
|
||||
@ -15,19 +15,19 @@
|
||||
class cSource : public cListObject {
|
||||
public:
|
||||
enum eSourceType {
|
||||
stNone = 0x0000,
|
||||
stCable = 0x4000,
|
||||
stSat = 0x8000,
|
||||
stTerr = 0xC000,
|
||||
st_Mask = 0xC000,
|
||||
st_Neg = 0x0800,
|
||||
st_Pos = 0x07FF,
|
||||
stNone = 0x00000000,
|
||||
stCable = ('C' << 24),
|
||||
stSat = ('S' << 24),
|
||||
stTerr = ('T' << 24),
|
||||
st_Mask = 0xFF000000,
|
||||
st_Pos = 0x0000FFFF,
|
||||
};
|
||||
private:
|
||||
int code;
|
||||
char *description;
|
||||
public:
|
||||
cSource(void);
|
||||
cSource(char Source, const char *Description);
|
||||
~cSource();
|
||||
int Code(void) const { return code; }
|
||||
const char *Description(void) const { return description; }
|
||||
|
13
vdr.5
13
vdr.5
@ -8,7 +8,7 @@
|
||||
.\" License as specified in the file COPYING that comes with the
|
||||
.\" vdr distribution.
|
||||
.\"
|
||||
.\" $Id: vdr.5 2.14 2010/02/06 15:52:38 kls Exp $
|
||||
.\" $Id: vdr.5 2.15 2010/02/21 14:29:06 kls Exp $
|
||||
.\"
|
||||
.TH vdr 5 "10 Feb 2008" "1.6" "Video Disk Recorder Files"
|
||||
.SH NAME
|
||||
@ -142,7 +142,7 @@ If in doubt, try 0 (off). (DVB-T only).
|
||||
\fBDelivery System:\fR The satellite delivery system (0 = DVB-S, 1 = DVB-S2).
|
||||
|
||||
\fBPolarization:\fR Satellite antenna polarization.
|
||||
h = horizontal, v = vertical, r = circular right, l = circular left.
|
||||
H = horizontal, V = vertical, R = circular right, L = circular left.
|
||||
|
||||
The polarization parameters have no integer numbers following them. This is for
|
||||
compatibility with files from older versions and also to keep the DVB-S entries
|
||||
@ -163,13 +163,13 @@ An example of a parameter field for a DVB-S channel might look like this:
|
||||
An example of a parameter field for a DVB-S2 channel might look like this:
|
||||
\fBhC910M2O35S1\fR
|
||||
|
||||
Plugins that implement devices that need their own set of parameters may
|
||||
store those in the parameters string in arbitrary format (not necessarily
|
||||
the "character/number" format listed above). The only condition is that
|
||||
the string may not contain colons (':') or newline characters.
|
||||
.TP
|
||||
.B Source
|
||||
The signal source of this channel, as defined in the file \fIsources.conf\fR.
|
||||
For compatibility with files from older versions numeric values will be accepted
|
||||
and also written back correctly, but they will have no meaning for the \fBDiSEqC\fR
|
||||
settings. You should replace the numerical values with the proper source identifiers
|
||||
defined in \fIsources.conf\fR.
|
||||
.TP
|
||||
.B Srate
|
||||
The symbol rate of this channel (DVB-S and DVB-C only).
|
||||
@ -406,6 +406,7 @@ l l.
|
||||
\fBC\fR@Cable
|
||||
\fBT\fR@Terrestrial
|
||||
.TE
|
||||
|
||||
and is followed by further data pertaining to that particular source. In case of
|
||||
\fBS\fRatellite this is the orbital position in degrees, followed by \fBE\fR for
|
||||
east or \fBW\fR for west.
|
||||
|
4
vdr.c
4
vdr.c
@ -22,7 +22,7 @@
|
||||
*
|
||||
* The project's page is at http://www.tvdr.de
|
||||
*
|
||||
* $Id: vdr.c 2.16 2010/01/31 11:14:40 kls Exp $
|
||||
* $Id: vdr.c 2.17 2010/02/21 14:08:09 kls Exp $
|
||||
*/
|
||||
|
||||
#include <getopt.h>
|
||||
@ -58,6 +58,7 @@
|
||||
#include "shutdown.h"
|
||||
#include "skinclassic.h"
|
||||
#include "skinsttng.h"
|
||||
#include "sourceparams.h"
|
||||
#include "sources.h"
|
||||
#include "themes.h"
|
||||
#include "timers.h"
|
||||
@ -1303,6 +1304,7 @@ Exit:
|
||||
Remotes.Clear();
|
||||
Audios.Clear();
|
||||
Skins.Clear();
|
||||
SourceParams.Clear();
|
||||
if (ShutdownHandler.GetExitCode() != 2) {
|
||||
Setup.CurrentChannel = cDevice::CurrentChannel();
|
||||
Setup.CurrentVolume = cDevice::CurrentVolume();
|
||||
|
Loading…
Reference in New Issue
Block a user