mirror of
https://github.com/rofafor/vdr-plugin-femon.git
synced 2023-10-10 11:36:53 +00: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
|
2005-01-24: Version 0.8.1
|
||||||
|
|
||||||
- Added Estonian translations (Thanks to Arthur Konovalov).
|
- 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
|
DEFINES += -DNTSC_SYSTEM
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifdef DEBUG
|
||||||
|
DEFINES += -DDEBUG
|
||||||
|
endif
|
||||||
|
|
||||||
### The object files (add further files here):
|
### The object files (add further files here):
|
||||||
|
|
||||||
OBJS = femon.o femonosd.o femonreceiver.o femoncfg.o femoni18n.o
|
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 "femonosd.h"
|
||||||
#include "femon.h"
|
#include "femon.h"
|
||||||
|
|
||||||
#if VDRVERSNUM && VDRVERSNUM < 10319
|
#if VDRVERSNUM && VDRVERSNUM < 10321
|
||||||
#error "You don't exist! Go away!"
|
#error "You don't exist! Go away!"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -53,6 +53,11 @@ bool cPluginFemon::Start(void)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void cPluginFemon::Stop(void)
|
||||||
|
{
|
||||||
|
// Stop the background activities.
|
||||||
|
}
|
||||||
|
|
||||||
void cPluginFemon::Housekeeping(void)
|
void cPluginFemon::Housekeeping(void)
|
||||||
{
|
{
|
||||||
// Perform any cleanup or other regular tasks.
|
// 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, "DisplayMode")) femonConfig.displaymode = atoi(Value);
|
||||||
else if (!strcasecmp(Name, "Position")) femonConfig.position = atoi(Value);
|
else if (!strcasecmp(Name, "Position")) femonConfig.position = atoi(Value);
|
||||||
else if (!strcasecmp(Name, "OSDHeight")) femonConfig.osdheight = 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, "ShowCASystem")) femonConfig.showcasystem = atoi(Value);
|
||||||
else if (!strcasecmp(Name, "RedLimit")) femonConfig.redlimit = atoi(Value);
|
else if (!strcasecmp(Name, "RedLimit")) femonConfig.redlimit = atoi(Value);
|
||||||
else if (!strcasecmp(Name, "GreenLimit")) femonConfig.greenlimit = 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 if (!strcasecmp(Name, "CalcInterval")) femonConfig.calcinterval = atoi(Value);
|
||||||
else
|
else
|
||||||
return false;
|
return false;
|
||||||
if (femonConfig.displaymode < 0 || femonConfig.displaymode >= modeMaxNumber) femonConfig.displaymode = 0;
|
if (femonConfig.displaymode < 0 || femonConfig.displaymode >= eFemonModeMaxNumber) femonConfig.displaymode = 0;
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
cMenuFemonSetup::cMenuFemonSetup(void)
|
cMenuFemonSetup::cMenuFemonSetup(void)
|
||||||
{
|
{
|
||||||
dispmodes[modeBasic] = tr("basic");
|
dispmodes[eFemonModeBasic] = tr("basic");
|
||||||
dispmodes[modeTransponder] = tr("transponder");
|
dispmodes[eFemonModeTransponder] = tr("transponder");
|
||||||
dispmodes[modeStream] = tr("stream");
|
dispmodes[eFemonModeStream] = tr("stream");
|
||||||
dispmodes[modeAC3] = tr("AC-3");
|
dispmodes[eFemonModeAC3] = tr("AC-3");
|
||||||
|
|
||||||
|
themes[eFemonThemeClassic] = tr("Classic");
|
||||||
|
themes[eFemonThemeElchi] = tr("Elchi");
|
||||||
|
themes[eFemonThemeDeepBlue] = tr("DeepBlue");
|
||||||
|
|
||||||
Setup();
|
Setup();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -99,18 +111,20 @@ void cMenuFemonSetup::Setup(void)
|
|||||||
int current = Current();
|
int current = Current();
|
||||||
|
|
||||||
Clear();
|
Clear();
|
||||||
Add(new cMenuEditBoolItem( tr("Hide Mainmenu Entry"), &femonConfig.hidemenu, 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 cMenuEditBoolItem( tr("Use syslog output"), &femonConfig.syslogoutput, tr("no"), tr("yes")));
|
||||||
Add(new cMenuEditStraItem( tr("Default Display Mode"), &femonConfig.displaymode, modeMaxNumber, dispmodes));
|
Add(new cMenuEditStraItem( tr("Default display mode"), &femonConfig.displaymode, eFemonModeMaxNumber, dispmodes));
|
||||||
Add(new cMenuEditBoolItem( tr("Position"), &femonConfig.position, tr("bottom"), tr("top")));
|
Add(new cMenuEditStraItem( tr("Theme"), &femonConfig.theme, eFemonThemeMaxNumber,themes));
|
||||||
Add(new cMenuEditIntItem( tr("Height"), &femonConfig.osdheight, 400, 500));
|
Add(new cMenuEditBoolItem( tr("Position"), &femonConfig.position, tr("bottom"), tr("top")));
|
||||||
Add(new cMenuEditBoolItem( tr("Show CA System"), &femonConfig.showcasystem, tr("no"), tr("yes")));
|
Add(new cMenuEditIntItem( tr("Height"), &femonConfig.osdheight, 400, 500));
|
||||||
Add(new cMenuEditIntItem( tr("Red Limit [%]"), &femonConfig.redlimit, 1, 50));
|
Add(new cMenuEditIntItem( tr("Horizontal offset"), &femonConfig.osdoffset, -50, 50));
|
||||||
Add(new cMenuEditIntItem( tr("Green Limit [%]"), &femonConfig.greenlimit, 51, 100));
|
Add(new cMenuEditBoolItem( tr("Show CA system"), &femonConfig.showcasystem, tr("no"), tr("yes")));
|
||||||
Add(new cMenuEditIntItem( tr("OSD Update Interval [0.1s]"), &femonConfig.updateinterval, 1, 100));
|
Add(new cMenuEditIntItem( tr("Red limit [%]"), &femonConfig.redlimit, 1, 50));
|
||||||
Add(new cMenuEditBoolItem( tr("Analyze Stream"), &femonConfig.analyzestream, tr("no"), tr("yes")));
|
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)
|
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));
|
SetCurrent(Get(current));
|
||||||
Display();
|
Display();
|
||||||
@ -121,8 +135,10 @@ void cMenuFemonSetup::Store(void)
|
|||||||
SetupStore("HideMenu", femonConfig.hidemenu);
|
SetupStore("HideMenu", femonConfig.hidemenu);
|
||||||
SetupStore("SyslogOutput", femonConfig.syslogoutput);
|
SetupStore("SyslogOutput", femonConfig.syslogoutput);
|
||||||
SetupStore("DisplayMode", femonConfig.displaymode);
|
SetupStore("DisplayMode", femonConfig.displaymode);
|
||||||
|
SetupStore("Theme", femonConfig.theme);
|
||||||
SetupStore("Position", femonConfig.position);
|
SetupStore("Position", femonConfig.position);
|
||||||
SetupStore("OSDHeight", femonConfig.osdheight);
|
SetupStore("OSDHeight", femonConfig.osdheight);
|
||||||
|
SetupStore("OSDOffset", femonConfig.osdoffset);
|
||||||
SetupStore("ShowCASystem", femonConfig.showcasystem);
|
SetupStore("ShowCASystem", femonConfig.showcasystem);
|
||||||
SetupStore("RedLimit", femonConfig.redlimit);
|
SetupStore("RedLimit", femonConfig.redlimit);
|
||||||
SetupStore("GreenLimit", femonConfig.greenlimit);
|
SetupStore("GreenLimit", femonConfig.greenlimit);
|
||||||
|
6
femon.h
6
femon.h
@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
#include <vdr/plugin.h>
|
#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 *DESCRIPTION = "DVB Signal Information Monitor (OSD)";
|
||||||
static const char *MAINMENUENTRY = "Signal Information";
|
static const char *MAINMENUENTRY = "Signal Information";
|
||||||
|
|
||||||
@ -27,6 +27,7 @@ public:
|
|||||||
virtual bool ProcessArgs(int argc, char *argv[]);
|
virtual bool ProcessArgs(int argc, char *argv[]);
|
||||||
virtual bool Initialize(void);
|
virtual bool Initialize(void);
|
||||||
virtual bool Start(void);
|
virtual bool Start(void);
|
||||||
|
virtual void Stop(void);
|
||||||
virtual void Housekeeping(void);
|
virtual void Housekeeping(void);
|
||||||
virtual const char *MainMenuEntry(void) { return (femonConfig.hidemenu ? NULL : tr(MAINMENUENTRY)); }
|
virtual const char *MainMenuEntry(void) { return (femonConfig.hidemenu ? NULL : tr(MAINMENUENTRY)); }
|
||||||
virtual cOsdObject *MainMenuAction(void);
|
virtual cOsdObject *MainMenuAction(void);
|
||||||
@ -36,7 +37,8 @@ public:
|
|||||||
|
|
||||||
class cMenuFemonSetup : public cMenuSetupPage {
|
class cMenuFemonSetup : public cMenuSetupPage {
|
||||||
private:
|
private:
|
||||||
const char *dispmodes[modeMaxNumber];
|
const char *dispmodes[eFemonModeMaxNumber];
|
||||||
|
const char *themes[eFemonThemeMaxNumber];
|
||||||
virtual void Setup(void);
|
virtual void Setup(void);
|
||||||
protected:
|
protected:
|
||||||
virtual eOSState ProcessKey(eKeys Key);
|
virtual eOSState ProcessKey(eKeys Key);
|
||||||
|
40
femoncfg.c
40
femoncfg.c
@ -14,6 +14,7 @@ cFemonConfig::cFemonConfig(void)
|
|||||||
{
|
{
|
||||||
hidemenu = 0;
|
hidemenu = 0;
|
||||||
displaymode = 0;
|
displaymode = 0;
|
||||||
|
theme = 0;
|
||||||
position = 1;
|
position = 1;
|
||||||
redlimit = 33;
|
redlimit = 33;
|
||||||
greenlimit = 66;
|
greenlimit = 66;
|
||||||
@ -27,4 +28,43 @@ cFemonConfig::cFemonConfig(void)
|
|||||||
#else
|
#else
|
||||||
osdheight = 480;
|
osdheight = 480;
|
||||||
#endif
|
#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
|
#define __FEMONCFG_H
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
#define debug(x) (x);
|
#define Dprintf(x...) printf(x);
|
||||||
#else
|
#else
|
||||||
#define debug(x) ;
|
#define Dprintf(x...) ;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
enum dispModes {
|
enum eFemonModes
|
||||||
modeBasic,
|
{
|
||||||
modeTransponder,
|
eFemonModeBasic,
|
||||||
modeStream,
|
eFemonModeTransponder,
|
||||||
modeAC3,
|
eFemonModeStream,
|
||||||
modeMaxNumber
|
eFemonModeAC3,
|
||||||
};
|
eFemonModeMaxNumber
|
||||||
|
};
|
||||||
|
|
||||||
struct cFemonConfig
|
struct cFemonConfig
|
||||||
{
|
{
|
||||||
@ -29,6 +30,7 @@ public:
|
|||||||
cFemonConfig(void);
|
cFemonConfig(void);
|
||||||
int hidemenu;
|
int hidemenu;
|
||||||
int displaymode;
|
int displaymode;
|
||||||
|
int theme;
|
||||||
int position;
|
int position;
|
||||||
int redlimit;
|
int redlimit;
|
||||||
int greenlimit;
|
int greenlimit;
|
||||||
@ -38,8 +40,31 @@ public:
|
|||||||
int syslogoutput;
|
int syslogoutput;
|
||||||
int showcasystem;
|
int showcasystem;
|
||||||
int osdheight;
|
int osdheight;
|
||||||
|
int osdoffset;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern cFemonConfig femonConfig;
|
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
|
#endif // __FEMONCFG_H
|
||||||
|
228
femoni18n.c
228
femoni18n.c
@ -93,7 +93,28 @@ const tI18nPhrase Phrases[] = {
|
|||||||
"Kõrgus", // Eesti
|
"Kõrgus", // Eesti
|
||||||
"", // Dansk
|
"", // 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
|
"Standard Anzeigemodus", // Deutsch
|
||||||
"", // Slovenski
|
"", // Slovenski
|
||||||
"Modo di visualizzazione standard", // Italiano
|
"Modo di visualizzazione standard", // Italiano
|
||||||
@ -177,7 +198,91 @@ const tI18nPhrase Phrases[] = {
|
|||||||
"striim", // Eesti
|
"striim", // Eesti
|
||||||
"", // Dansk
|
"", // 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
|
"Hauptmenüeintrag verstecken", // Deutsch
|
||||||
"", // Slovenski
|
"", // Slovenski
|
||||||
"Nascondi voce menù", // Italiano
|
"Nascondi voce menù", // Italiano
|
||||||
@ -198,7 +303,7 @@ const tI18nPhrase Phrases[] = {
|
|||||||
"Peida valik peamenüüs", // Eesti
|
"Peida valik peamenüüs", // Eesti
|
||||||
"", // Dansk
|
"", // Dansk
|
||||||
},
|
},
|
||||||
{ "OSD Update Interval [0.1s]", // English
|
{ "OSD update interval [0.1s]", // English
|
||||||
"OSD Updateintervall [0.1s]", // Deutsch
|
"OSD Updateintervall [0.1s]", // Deutsch
|
||||||
"", // Slovenski
|
"", // Slovenski
|
||||||
"Intervallo di aggiornamento [0.1s]", // Italiano
|
"Intervallo di aggiornamento [0.1s]", // Italiano
|
||||||
@ -219,7 +324,7 @@ const tI18nPhrase Phrases[] = {
|
|||||||
"Uuendusintervall [0,1s]", // Eesti
|
"Uuendusintervall [0,1s]", // Eesti
|
||||||
"", // Dansk
|
"", // Dansk
|
||||||
},
|
},
|
||||||
{ "Analyze Stream", // English
|
{ "Analyze stream", // English
|
||||||
"Stream analysieren", // Deutsch
|
"Stream analysieren", // Deutsch
|
||||||
"", // Slovenski
|
"", // Slovenski
|
||||||
"", // Italiano
|
"", // Italiano
|
||||||
@ -240,7 +345,7 @@ const tI18nPhrase Phrases[] = {
|
|||||||
"Striimi analüüs", // Eesti
|
"Striimi analüüs", // Eesti
|
||||||
"", // Dansk
|
"", // Dansk
|
||||||
},
|
},
|
||||||
{ "Calculation Interval [0.1s]", // English
|
{ "Calculation interval [0.1s]", // English
|
||||||
"Berechnungsintervall [0.1s]", // Deutsch
|
"Berechnungsintervall [0.1s]", // Deutsch
|
||||||
"", // Slovenski
|
"", // Slovenski
|
||||||
"Intervallo di calcolo [0.1s]", // Italiano
|
"Intervallo di calcolo [0.1s]", // Italiano
|
||||||
@ -261,7 +366,7 @@ const tI18nPhrase Phrases[] = {
|
|||||||
"Kalkulatsiooni intervall [0,1s]", // Eesti
|
"Kalkulatsiooni intervall [0,1s]", // Eesti
|
||||||
"", // Dansk
|
"", // Dansk
|
||||||
},
|
},
|
||||||
{ "Red Limit [%]", // English
|
{ "Red limit [%]", // English
|
||||||
"Grenze Rot [%]", // Deutsch
|
"Grenze Rot [%]", // Deutsch
|
||||||
"", // Slovenski
|
"", // Slovenski
|
||||||
"Limite rosso [%]", // Italiano
|
"Limite rosso [%]", // Italiano
|
||||||
@ -282,7 +387,7 @@ const tI18nPhrase Phrases[] = {
|
|||||||
"Punase limiit [%]", // Eesti
|
"Punase limiit [%]", // Eesti
|
||||||
"", // Dansk
|
"", // Dansk
|
||||||
},
|
},
|
||||||
{ "Green Limit [%]", // English
|
{ "Green limit [%]", // English
|
||||||
"Grenze Grün [%]", // Deutsch
|
"Grenze Grün [%]", // Deutsch
|
||||||
"", // Slovenski
|
"", // Slovenski
|
||||||
"Limite verde [%]", // Italiano
|
"Limite verde [%]", // Italiano
|
||||||
@ -387,7 +492,7 @@ const tI18nPhrase Phrases[] = {
|
|||||||
"Terrestiaalkaart", // Eesti
|
"Terrestiaalkaart", // Eesti
|
||||||
"", // Dansk
|
"", // Dansk
|
||||||
},
|
},
|
||||||
{ "Use Syslog Output", // English
|
{ "Use syslog output", // English
|
||||||
"Benutze syslog Ausgabe", // Deutsch
|
"Benutze syslog Ausgabe", // Deutsch
|
||||||
"", // Slovenski
|
"", // Slovenski
|
||||||
"Registra su syslog", // Italiano
|
"Registra su syslog", // Italiano
|
||||||
@ -408,111 +513,6 @@ const tI18nPhrase Phrases[] = {
|
|||||||
"Kirjuta süsteemilogisse", // Eesti
|
"Kirjuta süsteemilogisse", // Eesti
|
||||||
"", // Dansk
|
"", // 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", // English
|
||||||
"Audio", // Deutsch
|
"Audio", // Deutsch
|
||||||
"Audio", // Slovenski
|
"Audio", // Slovenski
|
||||||
@ -1773,7 +1773,7 @@ const tI18nPhrase Phrases[] = {
|
|||||||
"SR", // Eesti
|
"SR", // Eesti
|
||||||
"", // Dansk
|
"", // Dansk
|
||||||
},
|
},
|
||||||
{ "Show CA System", // English
|
{ "Show CA system", // English
|
||||||
"CA System anzeigen", // Deutsch
|
"CA System anzeigen", // Deutsch
|
||||||
"", // Slovenski
|
"", // Slovenski
|
||||||
"", // Italiano
|
"", // 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 bmStereo, bmMonoLeft, bmMonoRight, bmDD, bmDD20, bmDD51;
|
||||||
static cBitmap bmZero, bmDevice, bmPAL, bmNTSC, bmOne, bmTwo, bmThree, bmFour, bmFive;
|
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 bmAspectRatio_1_1, bmAspectRatio_16_9, bmAspectRatio_2_21_1, bmAspectRatio_4_3;
|
||||||
|
static cBitmap bmLock, bmSignal, bmCarrier, bmViterbi, bmSync;
|
||||||
void DrawStatusWindow(void);
|
void DrawStatusWindow(void);
|
||||||
void DrawInfoWindow(void);
|
void DrawInfoWindow(void);
|
||||||
|
|
||||||
|
@ -20,11 +20,11 @@
|
|||||||
cFemonReceiver::cFemonReceiver(int Ca, int Vpid, int Apid[], int Dpid[])
|
cFemonReceiver::cFemonReceiver(int Ca, int Vpid, int Apid[], int Dpid[])
|
||||||
:cReceiver(Ca, -1, Vpid, Apid, Dpid, NULL), cThread("femon receiver")
|
:cReceiver(Ca, -1, Vpid, Apid, Dpid, NULL), cThread("femon receiver")
|
||||||
{
|
{
|
||||||
debug(printf("cFemonReceiver::cFemonReceiver()\n"));
|
Dprintf("%s()\n", __PRETTY_FUNCTION__);
|
||||||
m_Active = false;
|
m_Active = false;
|
||||||
m_VideoPid = Vpid;
|
m_VideoPid = Vpid;
|
||||||
m_AudioPid = Apid[0];
|
m_AudioPid = Apid[0];
|
||||||
m_AC3Pid = Dpid[0];
|
m_AC3Pid = Dpid[0];
|
||||||
m_VideoValid = false;
|
m_VideoValid = false;
|
||||||
m_VideoPacketCount = 0;
|
m_VideoPacketCount = 0;
|
||||||
m_VideoHorizontalSize = 0;
|
m_VideoHorizontalSize = 0;
|
||||||
@ -58,7 +58,7 @@ cFemonReceiver::cFemonReceiver(int Ca, int Vpid, int Apid[], int Dpid[])
|
|||||||
|
|
||||||
cFemonReceiver::~cFemonReceiver(void)
|
cFemonReceiver::~cFemonReceiver(void)
|
||||||
{
|
{
|
||||||
debug(printf("cFemonReceiver::~cFemonReceiver()\n"));
|
Dprintf("%s()\n", __PRETTY_FUNCTION__);
|
||||||
Detach();
|
Detach();
|
||||||
if (m_Active) {
|
if (m_Active) {
|
||||||
m_Active = false;
|
m_Active = false;
|
||||||
@ -69,7 +69,6 @@ cFemonReceiver::~cFemonReceiver(void)
|
|||||||
/* The following function originates from libdvbmpeg: */
|
/* The following function originates from libdvbmpeg: */
|
||||||
void cFemonReceiver::GetVideoInfo(uint8_t *mbuf, int count)
|
void cFemonReceiver::GetVideoInfo(uint8_t *mbuf, int count)
|
||||||
{
|
{
|
||||||
debug(printf("cFemonReceiver::GetVideoInfo()\n"));
|
|
||||||
uint8_t *headr;
|
uint8_t *headr;
|
||||||
int found = 0;
|
int found = 0;
|
||||||
int c = 0;
|
int c = 0;
|
||||||
@ -162,7 +161,6 @@ static unsigned int samplerates[4] =
|
|||||||
/* The following function originates from libdvbmpeg: */
|
/* The following function originates from libdvbmpeg: */
|
||||||
void cFemonReceiver::GetAudioInfo(uint8_t *mbuf, int count)
|
void cFemonReceiver::GetAudioInfo(uint8_t *mbuf, int count)
|
||||||
{
|
{
|
||||||
debug(printf("cFemonReceiver::GetAudioInfo()\n"));
|
|
||||||
uint8_t *headr;
|
uint8_t *headr;
|
||||||
int found = 0;
|
int found = 0;
|
||||||
int c = 0;
|
int c = 0;
|
||||||
@ -254,7 +252,7 @@ void cFemonReceiver::GetAC3Info(uint8_t *mbuf, int count)
|
|||||||
|
|
||||||
void cFemonReceiver::Activate(bool On)
|
void cFemonReceiver::Activate(bool On)
|
||||||
{
|
{
|
||||||
debug(printf("cFemonReceiver::Activate()\n"));
|
Dprintf("%s(%d)\n", __PRETTY_FUNCTION__, On);
|
||||||
if (On) {
|
if (On) {
|
||||||
if (!m_Active)
|
if (!m_Active)
|
||||||
Start();
|
Start();
|
||||||
@ -267,7 +265,6 @@ void cFemonReceiver::Activate(bool On)
|
|||||||
|
|
||||||
void cFemonReceiver::Receive(uchar *Data, int Length)
|
void cFemonReceiver::Receive(uchar *Data, int Length)
|
||||||
{
|
{
|
||||||
debug(printf("cFemonReceiver::Receive()\n"));
|
|
||||||
// TS packet length: TS_SIZE
|
// TS packet length: TS_SIZE
|
||||||
if (Length == TS_SIZE) {
|
if (Length == TS_SIZE) {
|
||||||
int pid = ((Data[1] & 0x1f) << 8) | (Data[2]);
|
int pid = ((Data[1] & 0x1f) << 8) | (Data[2]);
|
||||||
@ -310,7 +307,7 @@ void cFemonReceiver::Receive(uchar *Data, int Length)
|
|||||||
|
|
||||||
void cFemonReceiver::Action(void)
|
void cFemonReceiver::Action(void)
|
||||||
{
|
{
|
||||||
debug(printf("cFemonReceiver::Action()\n"));
|
Dprintf("%s()\n", __PRETTY_FUNCTION__);
|
||||||
cTimeMs t;
|
cTimeMs t;
|
||||||
m_Active = true;
|
m_Active = true;
|
||||||
while (m_Active) {
|
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