1
0
mirror of https://github.com/VDR4Arch/vdr.git synced 2023-10-10 13:36:52 +02:00

Using '>' as separator for short channel names on cable channels

This commit is contained in:
Klaus Schmidinger 2005-05-14 09:47:06 +02:00
parent 06e038b6fb
commit d7053e30ac
5 changed files with 23 additions and 6 deletions

View File

@ -603,6 +603,8 @@ Gerhard Steiner <steiner@mail.austria.com>
for reporting a problem with newly created timers in case they are not confirmed for reporting a problem with newly created timers in case they are not confirmed
with "Ok" with "Ok"
for reporting an occasional "Broken pipe" error in SVDRP connections for reporting an occasional "Broken pipe" error in SVDRP connections
for reporting that some cable channels don't mark short channel names according
to the standard
Jaakko Hyvätti <jaakko@hyvatti.iki.fi> Jaakko Hyvätti <jaakko@hyvatti.iki.fi>
for translating OSD texts to the Finnish language for translating OSD texts to the Finnish language

View File

@ -3516,3 +3516,6 @@ Video Disk Recorder Revision History
2005-05-14: Version 1.3.25 2005-05-14: Version 1.3.25
- Updated the Estonian OSD texts (thanks to Arthur Konovalov). - Updated the Estonian OSD texts (thanks to Arthur Konovalov).
- Some cable providers don't mark short channel names according to the standard,
but rather go their own way and use "name>short name". VDR now splits at this
character for cable channels (thanks to Gerhard Steiner for reporting this one).

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and * See the main source file 'vdr.c' for copyright information and
* how to reach the author. * how to reach the author.
* *
* $Id: channels.h 1.28 2005/05/07 13:07:09 kls Exp $ * $Id: channels.h 1.29 2005/05/14 09:31:45 kls Exp $
*/ */
#ifndef __CHANNELS_H #ifndef __CHANNELS_H
@ -176,9 +176,9 @@ public:
int Transmission(void) const { return transmission; } int Transmission(void) const { return transmission; }
int Guard(void) const { return guard; } int Guard(void) const { return guard; }
int Hierarchy(void) const { return hierarchy; } int Hierarchy(void) const { return hierarchy; }
bool IsCable(void) const { return (source & cSource::st_Mask) == cSource::stCable; } bool IsCable(void) const { return cSource::IsCable(source); }
bool IsSat(void) const { return (source & cSource::st_Mask) == cSource::stSat; } bool IsSat(void) const { return cSource::IsSat(source); }
bool IsTerr(void) const { return (source & cSource::st_Mask) == cSource::stTerr; } bool IsTerr(void) const { return cSource::IsTerr(source); }
tChannelID GetChannelID(void) const; tChannelID GetChannelID(void) const;
int Modification(int Mask = CHANNELMOD_ALL); int Modification(int Mask = CHANNELMOD_ALL);
bool SetSatTransponderData(int Source, int Frequency, char Polarization, int Srate, int CoderateH); bool SetSatTransponderData(int Source, int Frequency, char Polarization, int Srate, int CoderateH);

11
sdt.c
View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and * See the main source file 'vdr.c' for copyright information and
* how to reach the author. * how to reach the author.
* *
* $Id: sdt.c 1.13 2004/10/31 12:10:20 kls Exp $ * $Id: sdt.c 1.14 2005/05/14 09:39:46 kls Exp $
*/ */
#include "sdt.h" #include "sdt.h"
@ -62,6 +62,15 @@ void cSdtFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
sd->serviceName.getText(NameBuf, ShortNameBuf, sizeof(NameBuf), sizeof(ShortNameBuf)); sd->serviceName.getText(NameBuf, ShortNameBuf, sizeof(NameBuf), sizeof(ShortNameBuf));
char *pn = compactspace(NameBuf); char *pn = compactspace(NameBuf);
char *ps = compactspace(ShortNameBuf); char *ps = compactspace(ShortNameBuf);
if (!*ps && cSource::IsCable(Source())) {
// Some cable providers don't mark short channel names according to the
// standard, but rather go their own way and use "name>short name":
char *p = strchr(pn, '>');
if (p && p > pn) {
*p++ = 0;
strcpy(ShortNameBuf, p);
}
}
sd->providerName.getText(ProviderNameBuf, sizeof(ProviderNameBuf)); sd->providerName.getText(ProviderNameBuf, sizeof(ProviderNameBuf));
char *pp = compactspace(ProviderNameBuf); char *pp = compactspace(ProviderNameBuf);
if (channel) { if (channel) {

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and * See the main source file 'vdr.c' for copyright information and
* how to reach the author. * how to reach the author.
* *
* $Id: sources.h 1.3 2004/12/26 11:59:21 kls Exp $ * $Id: sources.h 1.4 2005/05/14 09:30:41 kls Exp $
*/ */
#ifndef __SOURCES_H #ifndef __SOURCES_H
@ -35,6 +35,9 @@ public:
static cString ToString(int Code); static cString ToString(int Code);
static int FromString(const char *s); static int FromString(const char *s);
static int FromData(eSourceType SourceType, int Position = 0, bool East = false); static int FromData(eSourceType SourceType, int Position = 0, bool East = false);
static bool IsCable(int Code) { return (Code & st_Mask) == stCable; }
static bool IsSat(int Code) { return (Code & st_Mask) == stSat; }
static bool IsTerr(int Code) { return (Code & st_Mask) == stTerr; }
}; };
class cSources : public cConfig<cSource> { class cSources : public cConfig<cSource> {