mirror of
https://github.com/rofafor/vdr-plugin-femon.git
synced 2023-10-10 13:36:53 +02:00
Updated for vdr-1.3.21.
Minor modification for DEBUG mode. Added preliminary support for themes and some GUI tweaks. Added horizontal offset setup option.
This commit is contained in:
parent
825755281f
commit
ca954757db
7
HISTORY
7
HISTORY
@ -130,3 +130,10 @@ VDR Plugin 'femon' Revision History
|
||||
2005-01-24: Version 0.8.1
|
||||
|
||||
- Added Estonian translations (Thanks to Arthur Konovalov).
|
||||
|
||||
2005-02-24: Version 0.8.5
|
||||
|
||||
- Updated for vdr-1.3.21.
|
||||
- Minor modification for DEBUG mode.
|
||||
- Added preliminary support for themes and some GUI tweaks.
|
||||
- Added horizontal offset setup option.
|
||||
|
4
Makefile
4
Makefile
@ -48,6 +48,10 @@ ifdef NTSC_SYSTEM
|
||||
DEFINES += -DNTSC_SYSTEM
|
||||
endif
|
||||
|
||||
ifdef DEBUG
|
||||
DEFINES += -DDEBUG
|
||||
endif
|
||||
|
||||
### The object files (add further files here):
|
||||
|
||||
OBJS = femon.o femonosd.o femonreceiver.o femoncfg.o femoni18n.o
|
||||
|
50
femon.c
50
femon.c
@ -12,7 +12,7 @@
|
||||
#include "femonosd.h"
|
||||
#include "femon.h"
|
||||
|
||||
#if VDRVERSNUM && VDRVERSNUM < 10319
|
||||
#if VDRVERSNUM && VDRVERSNUM < 10321
|
||||
#error "You don't exist! Go away!"
|
||||
#endif
|
||||
|
||||
@ -53,6 +53,11 @@ bool cPluginFemon::Start(void)
|
||||
return true;
|
||||
}
|
||||
|
||||
void cPluginFemon::Stop(void)
|
||||
{
|
||||
// Stop the background activities.
|
||||
}
|
||||
|
||||
void cPluginFemon::Housekeeping(void)
|
||||
{
|
||||
// Perform any cleanup or other regular tasks.
|
||||
@ -72,6 +77,8 @@ bool cPluginFemon::SetupParse(const char *Name, const char *Value)
|
||||
else if (!strcasecmp(Name, "DisplayMode")) femonConfig.displaymode = atoi(Value);
|
||||
else if (!strcasecmp(Name, "Position")) femonConfig.position = atoi(Value);
|
||||
else if (!strcasecmp(Name, "OSDHeight")) femonConfig.osdheight = atoi(Value);
|
||||
else if (!strcasecmp(Name, "OSDOffset")) femonConfig.osdoffset = atoi(Value);
|
||||
else if (!strcasecmp(Name, "Theme")) femonConfig.theme = atoi(Value);
|
||||
else if (!strcasecmp(Name, "ShowCASystem")) femonConfig.showcasystem = atoi(Value);
|
||||
else if (!strcasecmp(Name, "RedLimit")) femonConfig.redlimit = atoi(Value);
|
||||
else if (!strcasecmp(Name, "GreenLimit")) femonConfig.greenlimit = atoi(Value);
|
||||
@ -80,17 +87,22 @@ bool cPluginFemon::SetupParse(const char *Name, const char *Value)
|
||||
else if (!strcasecmp(Name, "CalcInterval")) femonConfig.calcinterval = atoi(Value);
|
||||
else
|
||||
return false;
|
||||
if (femonConfig.displaymode < 0 || femonConfig.displaymode >= modeMaxNumber) femonConfig.displaymode = 0;
|
||||
if (femonConfig.displaymode < 0 || femonConfig.displaymode >= eFemonModeMaxNumber) femonConfig.displaymode = 0;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
cMenuFemonSetup::cMenuFemonSetup(void)
|
||||
{
|
||||
dispmodes[modeBasic] = tr("basic");
|
||||
dispmodes[modeTransponder] = tr("transponder");
|
||||
dispmodes[modeStream] = tr("stream");
|
||||
dispmodes[modeAC3] = tr("AC-3");
|
||||
dispmodes[eFemonModeBasic] = tr("basic");
|
||||
dispmodes[eFemonModeTransponder] = tr("transponder");
|
||||
dispmodes[eFemonModeStream] = tr("stream");
|
||||
dispmodes[eFemonModeAC3] = tr("AC-3");
|
||||
|
||||
themes[eFemonThemeClassic] = tr("Classic");
|
||||
themes[eFemonThemeElchi] = tr("Elchi");
|
||||
themes[eFemonThemeDeepBlue] = tr("DeepBlue");
|
||||
|
||||
Setup();
|
||||
}
|
||||
|
||||
@ -99,18 +111,20 @@ void cMenuFemonSetup::Setup(void)
|
||||
int current = Current();
|
||||
|
||||
Clear();
|
||||
Add(new cMenuEditBoolItem( tr("Hide Mainmenu Entry"), &femonConfig.hidemenu, tr("no"), tr("yes")));
|
||||
Add(new cMenuEditBoolItem( tr("Use Syslog Output"), &femonConfig.syslogoutput, tr("no"), tr("yes")));
|
||||
Add(new cMenuEditStraItem( tr("Default Display Mode"), &femonConfig.displaymode, modeMaxNumber, dispmodes));
|
||||
Add(new cMenuEditBoolItem( tr("Position"), &femonConfig.position, tr("bottom"), tr("top")));
|
||||
Add(new cMenuEditIntItem( tr("Height"), &femonConfig.osdheight, 400, 500));
|
||||
Add(new cMenuEditBoolItem( tr("Show CA System"), &femonConfig.showcasystem, tr("no"), tr("yes")));
|
||||
Add(new cMenuEditIntItem( tr("Red Limit [%]"), &femonConfig.redlimit, 1, 50));
|
||||
Add(new cMenuEditIntItem( tr("Green Limit [%]"), &femonConfig.greenlimit, 51, 100));
|
||||
Add(new cMenuEditIntItem( tr("OSD Update Interval [0.1s]"), &femonConfig.updateinterval, 1, 100));
|
||||
Add(new cMenuEditBoolItem( tr("Analyze Stream"), &femonConfig.analyzestream, tr("no"), tr("yes")));
|
||||
Add(new cMenuEditBoolItem( tr("Hide main menu entry"), &femonConfig.hidemenu, tr("no"), tr("yes")));
|
||||
Add(new cMenuEditBoolItem( tr("Use syslog output"), &femonConfig.syslogoutput, tr("no"), tr("yes")));
|
||||
Add(new cMenuEditStraItem( tr("Default display mode"), &femonConfig.displaymode, eFemonModeMaxNumber, dispmodes));
|
||||
Add(new cMenuEditStraItem( tr("Theme"), &femonConfig.theme, eFemonThemeMaxNumber,themes));
|
||||
Add(new cMenuEditBoolItem( tr("Position"), &femonConfig.position, tr("bottom"), tr("top")));
|
||||
Add(new cMenuEditIntItem( tr("Height"), &femonConfig.osdheight, 400, 500));
|
||||
Add(new cMenuEditIntItem( tr("Horizontal offset"), &femonConfig.osdoffset, -50, 50));
|
||||
Add(new cMenuEditBoolItem( tr("Show CA system"), &femonConfig.showcasystem, tr("no"), tr("yes")));
|
||||
Add(new cMenuEditIntItem( tr("Red limit [%]"), &femonConfig.redlimit, 1, 50));
|
||||
Add(new cMenuEditIntItem( tr("Green limit [%]"), &femonConfig.greenlimit, 51, 100));
|
||||
Add(new cMenuEditIntItem( tr("OSD update interval [0.1s]"), &femonConfig.updateinterval, 1, 100));
|
||||
Add(new cMenuEditBoolItem( tr("Analyze stream"), &femonConfig.analyzestream, tr("no"), tr("yes")));
|
||||
if (femonConfig.analyzestream)
|
||||
Add(new cMenuEditIntItem(tr("Calculation Interval [0.1s]"), &femonConfig.calcinterval, 1, 100));
|
||||
Add(new cMenuEditIntItem(tr("Calculation interval [0.1s]"), &femonConfig.calcinterval, 1, 100));
|
||||
|
||||
SetCurrent(Get(current));
|
||||
Display();
|
||||
@ -121,8 +135,10 @@ void cMenuFemonSetup::Store(void)
|
||||
SetupStore("HideMenu", femonConfig.hidemenu);
|
||||
SetupStore("SyslogOutput", femonConfig.syslogoutput);
|
||||
SetupStore("DisplayMode", femonConfig.displaymode);
|
||||
SetupStore("Theme", femonConfig.theme);
|
||||
SetupStore("Position", femonConfig.position);
|
||||
SetupStore("OSDHeight", femonConfig.osdheight);
|
||||
SetupStore("OSDOffset", femonConfig.osdoffset);
|
||||
SetupStore("ShowCASystem", femonConfig.showcasystem);
|
||||
SetupStore("RedLimit", femonConfig.redlimit);
|
||||
SetupStore("GreenLimit", femonConfig.greenlimit);
|
||||
|
6
femon.h
6
femon.h
@ -11,7 +11,7 @@
|
||||
|
||||
#include <vdr/plugin.h>
|
||||
|
||||
static const char *VERSION = "0.8.1";
|
||||
static const char *VERSION = "0.8.5";
|
||||
static const char *DESCRIPTION = "DVB Signal Information Monitor (OSD)";
|
||||
static const char *MAINMENUENTRY = "Signal Information";
|
||||
|
||||
@ -27,6 +27,7 @@ public:
|
||||
virtual bool ProcessArgs(int argc, char *argv[]);
|
||||
virtual bool Initialize(void);
|
||||
virtual bool Start(void);
|
||||
virtual void Stop(void);
|
||||
virtual void Housekeeping(void);
|
||||
virtual const char *MainMenuEntry(void) { return (femonConfig.hidemenu ? NULL : tr(MAINMENUENTRY)); }
|
||||
virtual cOsdObject *MainMenuAction(void);
|
||||
@ -36,7 +37,8 @@ public:
|
||||
|
||||
class cMenuFemonSetup : public cMenuSetupPage {
|
||||
private:
|
||||
const char *dispmodes[modeMaxNumber];
|
||||
const char *dispmodes[eFemonModeMaxNumber];
|
||||
const char *themes[eFemonThemeMaxNumber];
|
||||
virtual void Setup(void);
|
||||
protected:
|
||||
virtual eOSState ProcessKey(eKeys Key);
|
||||
|
40
femoncfg.c
40
femoncfg.c
@ -14,6 +14,7 @@ cFemonConfig::cFemonConfig(void)
|
||||
{
|
||||
hidemenu = 0;
|
||||
displaymode = 0;
|
||||
theme = 0;
|
||||
position = 1;
|
||||
redlimit = 33;
|
||||
greenlimit = 66;
|
||||
@ -27,4 +28,43 @@ cFemonConfig::cFemonConfig(void)
|
||||
#else
|
||||
osdheight = 480;
|
||||
#endif
|
||||
osdoffset = 0;
|
||||
}
|
||||
|
||||
const cFemonTheme femonTheme[eFemonThemeMaxNumber] =
|
||||
{
|
||||
{
|
||||
// eFemonThemeClassic
|
||||
0x7F000000, // clrBackground
|
||||
0xFFFCFCFC, // clrTitleBackground
|
||||
0xFF000000, // clrTitleText
|
||||
0xFFFCC024, // clrActiveText
|
||||
0xFFFCFCFC, // clrInactiveText
|
||||
0xFFFC1414, // clrRed
|
||||
0xFFFCC024, // clrYellow
|
||||
0xFF24FC24, // clrGreen
|
||||
},
|
||||
{
|
||||
// eFemonThemeElchi
|
||||
0xC8000066, // clrBackground
|
||||
0xC833AAEE, // clrTitleBackground
|
||||
0xFF000000, // clrTitleText
|
||||
0xFFCCBB22, // clrActiveText
|
||||
0xFFFFFFFF, // clrInactiveText
|
||||
0xFFFF0000, // clrRed
|
||||
0xFFFFEE00, // clrYellow
|
||||
0xFF33CC33, // clrGreen
|
||||
},
|
||||
{
|
||||
// eFemonThemeDeepBlue
|
||||
0xC80C0C0C, // clrBackground
|
||||
0xC832557A, // clrTitleBackground
|
||||
0xFF000000, // clrTitleText
|
||||
0xFFCE7B00, // clrActiveText
|
||||
0xFF9A9A9A, // clrInactiveText
|
||||
0xFF992900, // clrRed
|
||||
0xFFCE7B00, // clrYellow
|
||||
0xFF336600, // clrGreen
|
||||
},
|
||||
};
|
||||
|
||||
|
43
femoncfg.h
43
femoncfg.h
@ -10,18 +10,19 @@
|
||||
#define __FEMONCFG_H
|
||||
|
||||
#ifdef DEBUG
|
||||
#define debug(x) (x);
|
||||
#define Dprintf(x...) printf(x);
|
||||
#else
|
||||
#define debug(x) ;
|
||||
#define Dprintf(x...) ;
|
||||
#endif
|
||||
|
||||
enum dispModes {
|
||||
modeBasic,
|
||||
modeTransponder,
|
||||
modeStream,
|
||||
modeAC3,
|
||||
modeMaxNumber
|
||||
};
|
||||
enum eFemonModes
|
||||
{
|
||||
eFemonModeBasic,
|
||||
eFemonModeTransponder,
|
||||
eFemonModeStream,
|
||||
eFemonModeAC3,
|
||||
eFemonModeMaxNumber
|
||||
};
|
||||
|
||||
struct cFemonConfig
|
||||
{
|
||||
@ -29,6 +30,7 @@ public:
|
||||
cFemonConfig(void);
|
||||
int hidemenu;
|
||||
int displaymode;
|
||||
int theme;
|
||||
int position;
|
||||
int redlimit;
|
||||
int greenlimit;
|
||||
@ -38,8 +40,31 @@ public:
|
||||
int syslogoutput;
|
||||
int showcasystem;
|
||||
int osdheight;
|
||||
int osdoffset;
|
||||
};
|
||||
|
||||
extern cFemonConfig femonConfig;
|
||||
|
||||
enum eFemonThemes
|
||||
{
|
||||
eFemonThemeClassic,
|
||||
eFemonThemeElchi,
|
||||
eFemonThemeDeepBlue,
|
||||
eFemonThemeMaxNumber
|
||||
};
|
||||
|
||||
struct cFemonTheme
|
||||
{
|
||||
int clrBackground;
|
||||
int clrTitleBackground;
|
||||
int clrTitleText;
|
||||
int clrActiveText;
|
||||
int clrInactiveText;
|
||||
int clrRed;
|
||||
int clrYellow;
|
||||
int clrGreen;
|
||||
};
|
||||
|
||||
extern const cFemonTheme femonTheme[eFemonThemeMaxNumber];
|
||||
|
||||
#endif // __FEMONCFG_H
|
||||
|
228
femoni18n.c
228
femoni18n.c
@ -93,7 +93,28 @@ const tI18nPhrase Phrases[] = {
|
||||
"Kõrgus", // Eesti
|
||||
"", // Dansk
|
||||
},
|
||||
{ "Default Display Mode", // English
|
||||
{ "Horizontal offset", // English
|
||||
"", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Vaakakeskitys", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // ÅëëçíéêÜ (Greek)
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Català
|
||||
"", // ÀãááÚØÙ (Russian)
|
||||
"", // Hrvatski (Croatian)
|
||||
"", // Eesti
|
||||
"", // Dansk
|
||||
},
|
||||
{ "Default display mode", // English
|
||||
"Standard Anzeigemodus", // Deutsch
|
||||
"", // Slovenski
|
||||
"Modo di visualizzazione standard", // Italiano
|
||||
@ -177,7 +198,91 @@ const tI18nPhrase Phrases[] = {
|
||||
"striim", // Eesti
|
||||
"", // Dansk
|
||||
},
|
||||
{ "Hide Mainmenu Entry", // English
|
||||
{ "Theme", // English
|
||||
"Thema", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Teema", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // ÅëëçíéêÜ (Greek)
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Català
|
||||
"", // ÀãááÚØÙ (Russian)
|
||||
"", // Hrvatski (Croatian)
|
||||
"Teema", // Eesti
|
||||
"", // Dansk
|
||||
},
|
||||
{ "Classic", // English
|
||||
"Klassischer", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Klassinen", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // ÅëëçíéêÜ (Greek)
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Català
|
||||
"", // ÀãááÚØÙ (Russian)
|
||||
"", // Hrvatski (Croatian)
|
||||
"Klassikaline", // Eesti
|
||||
"", // Dansk
|
||||
},
|
||||
{ "Elchi", // English
|
||||
"Elchi", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"Elchi", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // ÅëëçíéêÜ (Greek)
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Català
|
||||
"", // ÀãááÚØÙ (Russian)
|
||||
"", // Hrvatski (Croatian)
|
||||
"Elchi", // Eesti
|
||||
"", // Dansk
|
||||
},
|
||||
{ "DeepBlue", // English
|
||||
"DeepBlue", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
"", // Nederlands
|
||||
"", // Português
|
||||
"", // Français
|
||||
"", // Norsk
|
||||
"DeepBlue", // suomi
|
||||
"", // Polski
|
||||
"", // Español
|
||||
"", // ÅëëçíéêÜ (Greek)
|
||||
"", // Svenska
|
||||
"", // Romaneste
|
||||
"", // Magyar
|
||||
"", // Català
|
||||
"", // ÀãááÚØÙ (Russian)
|
||||
"", // Hrvatski (Croatian)
|
||||
"DeepBlue", // Eesti
|
||||
"", // Dansk
|
||||
},
|
||||
{ "Hide main menu entry", // English
|
||||
"Hauptmenüeintrag verstecken", // Deutsch
|
||||
"", // Slovenski
|
||||
"Nascondi voce menù", // Italiano
|
||||
@ -198,7 +303,7 @@ const tI18nPhrase Phrases[] = {
|
||||
"Peida valik peamenüüs", // Eesti
|
||||
"", // Dansk
|
||||
},
|
||||
{ "OSD Update Interval [0.1s]", // English
|
||||
{ "OSD update interval [0.1s]", // English
|
||||
"OSD Updateintervall [0.1s]", // Deutsch
|
||||
"", // Slovenski
|
||||
"Intervallo di aggiornamento [0.1s]", // Italiano
|
||||
@ -219,7 +324,7 @@ const tI18nPhrase Phrases[] = {
|
||||
"Uuendusintervall [0,1s]", // Eesti
|
||||
"", // Dansk
|
||||
},
|
||||
{ "Analyze Stream", // English
|
||||
{ "Analyze stream", // English
|
||||
"Stream analysieren", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
@ -240,7 +345,7 @@ const tI18nPhrase Phrases[] = {
|
||||
"Striimi analüüs", // Eesti
|
||||
"", // Dansk
|
||||
},
|
||||
{ "Calculation Interval [0.1s]", // English
|
||||
{ "Calculation interval [0.1s]", // English
|
||||
"Berechnungsintervall [0.1s]", // Deutsch
|
||||
"", // Slovenski
|
||||
"Intervallo di calcolo [0.1s]", // Italiano
|
||||
@ -261,7 +366,7 @@ const tI18nPhrase Phrases[] = {
|
||||
"Kalkulatsiooni intervall [0,1s]", // Eesti
|
||||
"", // Dansk
|
||||
},
|
||||
{ "Red Limit [%]", // English
|
||||
{ "Red limit [%]", // English
|
||||
"Grenze Rot [%]", // Deutsch
|
||||
"", // Slovenski
|
||||
"Limite rosso [%]", // Italiano
|
||||
@ -282,7 +387,7 @@ const tI18nPhrase Phrases[] = {
|
||||
"Punase limiit [%]", // Eesti
|
||||
"", // Dansk
|
||||
},
|
||||
{ "Green Limit [%]", // English
|
||||
{ "Green limit [%]", // English
|
||||
"Grenze Grün [%]", // Deutsch
|
||||
"", // Slovenski
|
||||
"Limite verde [%]", // Italiano
|
||||
@ -387,7 +492,7 @@ const tI18nPhrase Phrases[] = {
|
||||
"Terrestiaalkaart", // Eesti
|
||||
"", // Dansk
|
||||
},
|
||||
{ "Use Syslog Output", // English
|
||||
{ "Use syslog output", // English
|
||||
"Benutze syslog Ausgabe", // Deutsch
|
||||
"", // Slovenski
|
||||
"Registra su syslog", // Italiano
|
||||
@ -408,111 +513,6 @@ const tI18nPhrase Phrases[] = {
|
||||
"Kirjuta süsteemilogisse", // Eesti
|
||||
"", // Dansk
|
||||
},
|
||||
{ "LOCK", // English
|
||||
"LOCK", // Deutsch
|
||||
"LOCK", // Slovenski
|
||||
"LOCK", // Italiano
|
||||
"LOCK", // Nederlands
|
||||
"LOCK", // Português
|
||||
"LOCK", // Français
|
||||
"LOCK", // Norsk
|
||||
"LOCK", // suomi
|
||||
"LOCK", // Polski
|
||||
"LOCK", // Español
|
||||
"LOCK", // ÅëëçíéêÜ (Greek)
|
||||
"LOCK", // Svenska
|
||||
"LOCK", // Romaneste
|
||||
"LOCK", // Magyar
|
||||
"LOCK", // Català
|
||||
"·°Å²°Â", // ÀãááÚØÙ (Russian)
|
||||
"LOCK", // Hrvatski (Croatian)
|
||||
"LOCK", // Eesti
|
||||
"LOCK", // Dansk
|
||||
},
|
||||
{ "SIGNAL", // English
|
||||
"SIGNAL", // Deutsch
|
||||
"SIGNAL", // Slovenski
|
||||
"SIGNAL", // Italiano
|
||||
"SIGNAL", // Nederlands
|
||||
"SIGNAL", // Português
|
||||
"SIGNAL", // Français
|
||||
"SIGNAL", // Norsk
|
||||
"SIGNAL", // suomi
|
||||
"SIGNAL", // Polski
|
||||
"SIGNAL", // Español
|
||||
"SIGNAL", // ÅëëçíéêÜ (Greek)
|
||||
"SIGNAL", // Svenska
|
||||
"SIGNAL", // Romaneste
|
||||
"SIGNAL", // Magyar
|
||||
"SIGNAL", // Català
|
||||
"Á¸³½°»", // ÀãááÚØÙ (Russian)
|
||||
"SIGNAL", // Hrvatski (Croatian)
|
||||
"SIGNAL", // Eesti
|
||||
"SIGNAL", // Dansk
|
||||
},
|
||||
{ "CARRIER", // English
|
||||
"CARRIER", // Deutsch
|
||||
"CARRIER", // Slovenski
|
||||
"CARRIER", // Italiano
|
||||
"CARRIER", // Nederlands
|
||||
"CARRIER", // Português
|
||||
"CARRIER", // Français
|
||||
"CARRIER", // Norsk
|
||||
"CARRIER", // suomi
|
||||
"CARRIER", // Polski
|
||||
"CARRIER", // Español
|
||||
"CARRIER", // ÅëëçíéêÜ (Greek)
|
||||
"CARRIER", // Svenska
|
||||
"CARRIER", // Romaneste
|
||||
"CARRIER", // Magyar
|
||||
"CARRIER", // Català
|
||||
"½µÁÃÉ°Ï", // ÀãááÚØÙ (Russian)
|
||||
"CARRIER", // Hrvatski (Croatian)
|
||||
"CARRIER", // Eesti
|
||||
"CARRIER", // Dansk
|
||||
},
|
||||
{ "VITERBI", // English
|
||||
"VITERBI", // Deutsch
|
||||
"VITERBI", // Slovenski
|
||||
"VITERBI", // Italiano
|
||||
"VITERBI", // Nederlands
|
||||
"VITERBI", // Português
|
||||
"VITERBI", // Français
|
||||
"VITERBI", // Norsk
|
||||
"VITERBI", // suomi
|
||||
"VITERBI", // Polski
|
||||
"VITERBI", // Español
|
||||
"VITERBI", // ÅëëçíéêÜ
|
||||
"VITERBI", // Svenska
|
||||
"VITERBI", // Romaneste
|
||||
"VITERBI", // Magyar
|
||||
"VITERBI", // Català
|
||||
"²¸ÂµÀ±¸", // ÀãááÚØÙ (Russian)
|
||||
"VITERBI", // Hrvatski (Croatian)
|
||||
"VITERBI", // Eesti
|
||||
"VITERBI", // Dansk
|
||||
},
|
||||
{ "SYNC", // English
|
||||
"SYNC", // Deutsch
|
||||
"SYNC", // Slovenski
|
||||
"SYNC", // Italiano
|
||||
"SYNC", // Nederlands
|
||||
"SYNC", // Português
|
||||
"SYNC", // Français
|
||||
"SYNC", // Norsk
|
||||
"SYNC", // suomi
|
||||
"SYNC", // Polski
|
||||
"SYNC", // Español
|
||||
"SYNC", // ÅëëçíéêÜ (Greek)
|
||||
"SYNC", // Svenska
|
||||
"SYNC", // Romaneste
|
||||
"SYNC", // Magyar
|
||||
"SYNC", // Català
|
||||
"Á¸½ÅÀ", // ÀãááÚØÙ (Russian)
|
||||
"SYNC", // Hrvatski (Croatian)
|
||||
"SYNC", // Eesti
|
||||
"SYNC", // Dansk
|
||||
},
|
||||
{ "Audio", // English
|
||||
"Audio", // Deutsch
|
||||
"Audio", // Slovenski
|
||||
@ -1773,7 +1773,7 @@ const tI18nPhrase Phrases[] = {
|
||||
"SR", // Eesti
|
||||
"", // Dansk
|
||||
},
|
||||
{ "Show CA System", // English
|
||||
{ "Show CA system", // English
|
||||
"CA System anzeigen", // Deutsch
|
||||
"", // Slovenski
|
||||
"", // Italiano
|
||||
|
624
femonosd.c
624
femonosd.c
File diff suppressed because it is too large
Load Diff
@ -40,6 +40,7 @@ private:
|
||||
static cBitmap bmStereo, bmMonoLeft, bmMonoRight, bmDD, bmDD20, bmDD51;
|
||||
static cBitmap bmZero, bmDevice, bmPAL, bmNTSC, bmOne, bmTwo, bmThree, bmFour, bmFive;
|
||||
static cBitmap bmAspectRatio_1_1, bmAspectRatio_16_9, bmAspectRatio_2_21_1, bmAspectRatio_4_3;
|
||||
static cBitmap bmLock, bmSignal, bmCarrier, bmViterbi, bmSync;
|
||||
void DrawStatusWindow(void);
|
||||
void DrawInfoWindow(void);
|
||||
|
||||
|
@ -20,11 +20,11 @@
|
||||
cFemonReceiver::cFemonReceiver(int Ca, int Vpid, int Apid[], int Dpid[])
|
||||
:cReceiver(Ca, -1, Vpid, Apid, Dpid, NULL), cThread("femon receiver")
|
||||
{
|
||||
debug(printf("cFemonReceiver::cFemonReceiver()\n"));
|
||||
Dprintf("%s()\n", __PRETTY_FUNCTION__);
|
||||
m_Active = false;
|
||||
m_VideoPid = Vpid;
|
||||
m_AudioPid = Apid[0];
|
||||
m_AC3Pid = Dpid[0];
|
||||
m_AC3Pid = Dpid[0];
|
||||
m_VideoValid = false;
|
||||
m_VideoPacketCount = 0;
|
||||
m_VideoHorizontalSize = 0;
|
||||
@ -58,7 +58,7 @@ cFemonReceiver::cFemonReceiver(int Ca, int Vpid, int Apid[], int Dpid[])
|
||||
|
||||
cFemonReceiver::~cFemonReceiver(void)
|
||||
{
|
||||
debug(printf("cFemonReceiver::~cFemonReceiver()\n"));
|
||||
Dprintf("%s()\n", __PRETTY_FUNCTION__);
|
||||
Detach();
|
||||
if (m_Active) {
|
||||
m_Active = false;
|
||||
@ -69,7 +69,6 @@ cFemonReceiver::~cFemonReceiver(void)
|
||||
/* The following function originates from libdvbmpeg: */
|
||||
void cFemonReceiver::GetVideoInfo(uint8_t *mbuf, int count)
|
||||
{
|
||||
debug(printf("cFemonReceiver::GetVideoInfo()\n"));
|
||||
uint8_t *headr;
|
||||
int found = 0;
|
||||
int c = 0;
|
||||
@ -162,7 +161,6 @@ static unsigned int samplerates[4] =
|
||||
/* The following function originates from libdvbmpeg: */
|
||||
void cFemonReceiver::GetAudioInfo(uint8_t *mbuf, int count)
|
||||
{
|
||||
debug(printf("cFemonReceiver::GetAudioInfo()\n"));
|
||||
uint8_t *headr;
|
||||
int found = 0;
|
||||
int c = 0;
|
||||
@ -254,7 +252,7 @@ void cFemonReceiver::GetAC3Info(uint8_t *mbuf, int count)
|
||||
|
||||
void cFemonReceiver::Activate(bool On)
|
||||
{
|
||||
debug(printf("cFemonReceiver::Activate()\n"));
|
||||
Dprintf("%s(%d)\n", __PRETTY_FUNCTION__, On);
|
||||
if (On) {
|
||||
if (!m_Active)
|
||||
Start();
|
||||
@ -267,7 +265,6 @@ void cFemonReceiver::Activate(bool On)
|
||||
|
||||
void cFemonReceiver::Receive(uchar *Data, int Length)
|
||||
{
|
||||
debug(printf("cFemonReceiver::Receive()\n"));
|
||||
// TS packet length: TS_SIZE
|
||||
if (Length == TS_SIZE) {
|
||||
int pid = ((Data[1] & 0x1f) << 8) | (Data[2]);
|
||||
@ -310,7 +307,7 @@ void cFemonReceiver::Receive(uchar *Data, int Length)
|
||||
|
||||
void cFemonReceiver::Action(void)
|
||||
{
|
||||
debug(printf("cFemonReceiver::Action()\n"));
|
||||
Dprintf("%s()\n", __PRETTY_FUNCTION__);
|
||||
cTimeMs t;
|
||||
m_Active = true;
|
||||
while (m_Active) {
|
||||
|
24
symbols/carrier.xpm
Normal file
24
symbols/carrier.xpm
Normal file
@ -0,0 +1,24 @@
|
||||
/* XPM */
|
||||
static char * carrier_xpm[] = {
|
||||
"96 19 2 1",
|
||||
". c #FFFFFF",
|
||||
"+ c #000000",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++",
|
||||
"++............................................................................................++",
|
||||
"++............................................................................................++",
|
||||
"++...........+++++.......+++++.....++++++++....++++++++....+++...++++++++...++++++++..........++",
|
||||
"++..........+++++++......+++++.....+++++++++...+++++++++...+++...++++++++...+++++++++.........++",
|
||||
"++..........+++.++++.....+++++.....+++...+++...+++...+++...+++...+++........+++...+++.........++",
|
||||
"++.........+++...++.....+++.+++....+++...+++...+++...+++...+++...+++........+++...+++.........++",
|
||||
"++.........+++..........+++.+++....++++++++....++++++++....+++...+++++++....++++++++..........++",
|
||||
"++.........+++..........+++.+++....+++++++.....+++++++.....+++...+++++++....+++++++...........++",
|
||||
"++.........+++.........+++...+++...+++..+++....+++..+++....+++...+++........+++..+++..........++",
|
||||
"++.........+++...++....+++++++++...+++..+++....+++..+++....+++...+++........+++..+++..........++",
|
||||
"++..........+++.++++...+++++++++...+++...+++...+++...+++...+++...+++........+++...+++.........++",
|
||||
"++..........+++++++...+++.....+++..+++...+++...+++...+++...+++...++++++++...+++...+++.........++",
|
||||
"++...........+++++....+++.....+++..+++....+++..+++....+++..+++...++++++++...+++....+++........++",
|
||||
"++............................................................................................++",
|
||||
"++............................................................................................++",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"};
|
24
symbols/lock.xpm
Normal file
24
symbols/lock.xpm
Normal file
@ -0,0 +1,24 @@
|
||||
/* XPM */
|
||||
static char * lock_xpm[] = {
|
||||
"96 19 2 1",
|
||||
". c #FFFFFF",
|
||||
"+ c #000000",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++",
|
||||
"++............................................................................................++",
|
||||
"++............................................................................................++",
|
||||
"++........................+++........+++++........+++++.....+++....+++........................++",
|
||||
"++........................+++.......++++++++.....+++++++....+++...+++.........................++",
|
||||
"++........................+++.......+++..+++.....+++.++++...+++..+++..........................++",
|
||||
"++........................+++......+++....+++...+++...++....+++.+++...........................++",
|
||||
"++........................+++......+++....+++...+++.........+++++++...........................++",
|
||||
"++........................+++......+++....+++...+++.........++++.+++..........................++",
|
||||
"++........................+++......+++....+++...+++.........+++..+++..........................++",
|
||||
"++........................+++......+++....+++...+++...++....+++...+++.........................++",
|
||||
"++........................+++.......+++..+++.....+++.++++...+++...+++.........................++",
|
||||
"++........................+++++++...++++++++.....+++++++....+++....+++........................++",
|
||||
"++........................+++++++.....++++........+++++.....+++.....+++.......................++",
|
||||
"++............................................................................................++",
|
||||
"++............................................................................................++",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"};
|
24
symbols/signal.xpm
Normal file
24
symbols/signal.xpm
Normal file
@ -0,0 +1,24 @@
|
||||
/* XPM */
|
||||
static char * signal_xpm[] = {
|
||||
"96 19 2 1",
|
||||
". c #FFFFFF",
|
||||
"+ c #000000",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++",
|
||||
"++............................................................................................++",
|
||||
"++............................................................................................++",
|
||||
"++.................+++++....+++......+++++.....+++....+++.....+++++.....+++...................++",
|
||||
"++...............++++++++...+++....++++++++....++++...+++.....+++++.....+++...................++",
|
||||
"++...............+++..+++...+++....+++..++++...+++++..+++.....+++++.....+++...................++",
|
||||
"++...............+++........+++...+++....++....+++++..+++....+++.+++....+++...................++",
|
||||
"++...............++++++.....+++...+++..........++++++.+++....+++.+++....+++...................++",
|
||||
"++................++++++....+++...+++..+++++...+++.++.+++....+++.+++....+++...................++",
|
||||
"++..................+++++...+++...+++..+++++...+++.++++++...+++...+++...+++...................++",
|
||||
"++...............+++..+++...+++...+++....+++...+++..+++++...+++++++++...+++...................++",
|
||||
"++...............+++..+++...+++....+++...+++...+++..+++++...+++++++++...+++...................++",
|
||||
"++................++++++....+++....+++++++++...+++...++++..+++.....+++..+++++++...............++",
|
||||
"++.................++++.....+++......+++++.....+++....+++..+++.....+++..+++++++...............++",
|
||||
"++............................................................................................++",
|
||||
"++............................................................................................++",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"};
|
24
symbols/sync.xpm
Normal file
24
symbols/sync.xpm
Normal file
@ -0,0 +1,24 @@
|
||||
/* XPM */
|
||||
static char * sync_xpm[] = {
|
||||
"96 19 2 1",
|
||||
". c #FFFFFF",
|
||||
"+ c #000000",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++",
|
||||
"++............................................................................................++",
|
||||
"++............................................................................................++",
|
||||
"++.........................+++++...+++.....+++..+++....+++.....+++++..........................++",
|
||||
"++.......................++++++++...+++...+++...++++...+++....+++++++.........................++",
|
||||
"++.......................+++..+++....+++.+++....+++++..+++....+++.++++........................++",
|
||||
"++.......................+++.........+++.+++....+++++..+++...+++...++.........................++",
|
||||
"++.......................++++++.......+++++.....++++++.+++...+++..............................++",
|
||||
"++........................++++++......+++++.....+++.++.+++...+++..............................++",
|
||||
"++..........................+++++......+++......+++.++++++...+++..............................++",
|
||||
"++.......................+++..+++......+++......+++..+++++...+++...++.........................++",
|
||||
"++.......................+++..+++......+++......+++..+++++....+++.++++........................++",
|
||||
"++........................++++++.......+++......+++...++++....+++++++.........................++",
|
||||
"++.........................++++........+++......+++....+++.....+++++..........................++",
|
||||
"++............................................................................................++",
|
||||
"++............................................................................................++",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"};
|
24
symbols/viterbi.xpm
Normal file
24
symbols/viterbi.xpm
Normal file
@ -0,0 +1,24 @@
|
||||
/* XPM */
|
||||
static char * viterbi_xpm[] = {
|
||||
"96 19 2 1",
|
||||
". c #FFFFFF",
|
||||
"+ c #000000",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++",
|
||||
"++............................................................................................++",
|
||||
"++............................................................................................++",
|
||||
"++............+++.....+++..+++...+++++++++..++++++++...++++++++....++++++++....+++............++",
|
||||
"++.............++.....++...+++...+++++++++..++++++++...+++++++++...+++++++++...+++............++",
|
||||
"++.............+++...+++...+++......+++.....+++........+++...+++...+++...+++...+++............++",
|
||||
"++.............+++...+++...+++......+++.....+++........+++...+++...+++...+++...+++............++",
|
||||
"++..............++...++....+++......+++.....+++++++....++++++++....++++++++....+++............++",
|
||||
"++..............+++.+++....+++......+++.....+++++++....+++++++.....++++++++....+++............++",
|
||||
"++..............+++.+++....+++......+++.....+++........+++..+++....+++...+++...+++............++",
|
||||
"++...............++.++.....+++......+++.....+++........+++..+++....+++...+++...+++............++",
|
||||
"++...............+++++.....+++......+++.....+++........+++...+++...+++...+++...+++............++",
|
||||
"++...............+++++.....+++......+++.....++++++++...+++...+++...+++++++++...+++............++",
|
||||
"++................+++......+++......+++.....++++++++...+++....+++..++++++++....+++............++",
|
||||
"++............................................................................................++",
|
||||
"++............................................................................................++",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++",
|
||||
"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"};
|
Loading…
x
Reference in New Issue
Block a user