OSD sizes in percent; automatic update of OSD size

This commit is contained in:
Klaus Schmidinger 2009-05-03 14:15:21 +02:00
parent 34b3d46784
commit f161d1b2fe
40 changed files with 589 additions and 378 deletions

12
HISTORY
View File

@ -6060,3 +6060,15 @@ Video Disk Recorder Revision History
- Added a note to the INSTALL file about using subdirectories to split a large - Added a note to the INSTALL file about using subdirectories to split a large
disk into separate areas for VDR's video data and other stuff (suggested by disk into separate areas for VDR's video data and other stuff (suggested by
Udo Richter). Udo Richter).
2009-05-03: Version 1.7.7
- The new function cDevice::GetVideoSize() returns the size and aspect ratio
of the video material currently displayed. This function is used to determine
the proper size of the OSD. Plugin authors should implement this function in
classes derived from cDevice, if they are able to replay video.
- The OSD and font sizes are now defined in percent of the actual video display
size. The maximum OSD size has been raised to 1920x1080, to allow full
screen OSD on HD systems.
- The OSD size is now automatically adjusted to the actual video display
(provided the output device implements the GetVideoSize() function).

22
MANUAL
View File

@ -489,12 +489,13 @@ Version 1.6
Theme = Default Defines the "theme" to use with the current skin. Theme = Default Defines the "theme" to use with the current skin.
Left = 54 The top and left offset of the OSD. Left = 8 The left and top offset of the OSD, in percent of the
Top = 45 The valid ranges are left=0...672, top=0...567. Top = 8 total video display width and height, respectively.
The valid range is 0...50%.
Width = 624 The width and height of the OSD. Width = 87 The width and height of the OSD, in percent of the
Height = 486 The valid ranges are width=480...672, height=324...567. Height = 84 total video display width and height, respectively.
The Width must be a multiple of 8. The valid range is 50...100%.
Message time = 1 The time (in seconds) how long an informational Message time = 1 The time (in seconds) how long an informational
message shall be displayed on the OSD. The valid range message shall be displayed on the OSD. The valid range
@ -516,11 +517,12 @@ Version 1.6
Fixed font = Courier:Bold Fixed font = Courier:Bold
The names of the various fonts to use. The names of the various fonts to use.
Default font size = 22 Default font size = 3.8
Small font size = 18 Small font size = 3.5
Fixed font size = 20 Fixed font size = 3.1
The sizes (in pixel) of the various fonts. Valid range is The sizes (in percent of the total video display height)
10...64. of the various fonts. The valid range is 1...10%, at
a resolution of 0.1%.
Channel info position = bottom Channel info position = bottom
The position of the channel info window in the OSD The position of the channel info window in the OSD

View File

@ -1939,6 +1939,17 @@ user - whether this goes through OSD facilities of the physical device (like
a "full featured" DVB card) or through a graphics adapter that overlays its a "full featured" DVB card) or through a graphics adapter that overlays its
output with the video signal, doesn't matter. output with the video signal, doesn't matter.
<div class="modified">
In order to be able to determine the proper size of the OSD, the device
should implement the function
<p><table><tr><td class="code"><pre>
virtual void GetVideoSize(int &amp;Width, int &amp;Height, eVideoAspect &amp;Aspect);
</pre></td></tr></table><p>
By default, an OSD size of 480x324 with an aspect ratio of 4:3 is assumed.
</div modified>
<p> <p>
<b>Initializing new devices</b> <b>Initializing new devices</b>
<p> <p>

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: config.c 2.1 2009/01/24 15:05:32 kls Exp $ * $Id: config.c 2.2 2009/05/03 13:58:08 kls Exp $
*/ */
#include "config.h" #include "config.h"
@ -262,6 +262,10 @@ cSetup::cSetup(void)
UseDolbyDigital = 1; UseDolbyDigital = 1;
ChannelInfoPos = 0; ChannelInfoPos = 0;
ChannelInfoTime = 5; ChannelInfoTime = 5;
OSDLeftP = 0.08;
OSDTopP = 0.08;
OSDWidthP = 0.87;
OSDHeightP = 0.84;
OSDLeft = 54; OSDLeft = 54;
OSDTop = 45; OSDTop = 45;
OSDWidth = 624; OSDWidth = 624;
@ -272,6 +276,9 @@ cSetup::cSetup(void)
strcpy(FontOsd, DefaultFontOsd); strcpy(FontOsd, DefaultFontOsd);
strcpy(FontSml, DefaultFontSml); strcpy(FontSml, DefaultFontSml);
strcpy(FontFix, DefaultFontFix); strcpy(FontFix, DefaultFontFix);
FontOsdSizeP = 0.038;
FontSmlSizeP = 0.035;
FontFixSizeP = 0.031;
FontOsdSize = 22; FontOsdSize = 22;
FontSmlSize = 18; FontSmlSize = 18;
FontFixSize = 20; FontFixSize = 20;
@ -324,6 +331,11 @@ void cSetup::Store(const char *Name, int Value, const char *Plugin)
Store(Name, cString::sprintf("%d", Value), Plugin); Store(Name, cString::sprintf("%d", Value), Plugin);
} }
void cSetup::Store(const char *Name, double &Value, const char *Plugin)
{
Store(Name, cString::sprintf("%f", Value), Plugin);
}
bool cSetup::Load(const char *FileName) bool cSetup::Load(const char *FileName)
{ {
if (cConfig<cSetupLine>::Load(FileName, true)) { if (cConfig<cSetupLine>::Load(FileName, true)) {
@ -435,16 +447,23 @@ bool cSetup::Parse(const char *Name, const char *Value)
else if (!strcasecmp(Name, "UseDolbyDigital")) UseDolbyDigital = atoi(Value); else if (!strcasecmp(Name, "UseDolbyDigital")) UseDolbyDigital = atoi(Value);
else if (!strcasecmp(Name, "ChannelInfoPos")) ChannelInfoPos = atoi(Value); else if (!strcasecmp(Name, "ChannelInfoPos")) ChannelInfoPos = atoi(Value);
else if (!strcasecmp(Name, "ChannelInfoTime")) ChannelInfoTime = atoi(Value); else if (!strcasecmp(Name, "ChannelInfoTime")) ChannelInfoTime = atoi(Value);
else if (!strcasecmp(Name, "OSDLeftP")) OSDLeftP = atof(Value);
else if (!strcasecmp(Name, "OSDTopP")) OSDTopP = atof(Value);
else if (!strcasecmp(Name, "OSDWidthP")) OSDWidthP = atof(Value);
else if (!strcasecmp(Name, "OSDHeightP")) OSDHeightP = atof(Value);
else if (!strcasecmp(Name, "OSDLeft")) OSDLeft = atoi(Value); else if (!strcasecmp(Name, "OSDLeft")) OSDLeft = atoi(Value);
else if (!strcasecmp(Name, "OSDTop")) OSDTop = atoi(Value); else if (!strcasecmp(Name, "OSDTop")) OSDTop = atoi(Value);
else if (!strcasecmp(Name, "OSDWidth")) { OSDWidth = atoi(Value); if (OSDWidth < 100) OSDWidth *= 12; OSDWidth &= ~0x07; } // OSD width must be a multiple of 8 else if (!strcasecmp(Name, "OSDWidth")) { OSDWidth = atoi(Value); OSDWidth &= ~0x07; } // OSD width must be a multiple of 8
else if (!strcasecmp(Name, "OSDHeight")) { OSDHeight = atoi(Value); if (OSDHeight < 100) OSDHeight *= 27; } else if (!strcasecmp(Name, "OSDHeight")) OSDHeight = atoi(Value);
else if (!strcasecmp(Name, "OSDMessageTime")) OSDMessageTime = atoi(Value); else if (!strcasecmp(Name, "OSDMessageTime")) OSDMessageTime = atoi(Value);
else if (!strcasecmp(Name, "UseSmallFont")) UseSmallFont = atoi(Value); else if (!strcasecmp(Name, "UseSmallFont")) UseSmallFont = atoi(Value);
else if (!strcasecmp(Name, "AntiAlias")) AntiAlias = atoi(Value); else if (!strcasecmp(Name, "AntiAlias")) AntiAlias = atoi(Value);
else if (!strcasecmp(Name, "FontOsd")) Utf8Strn0Cpy(FontOsd, Value, MAXFONTNAME); else if (!strcasecmp(Name, "FontOsd")) Utf8Strn0Cpy(FontOsd, Value, MAXFONTNAME);
else if (!strcasecmp(Name, "FontSml")) Utf8Strn0Cpy(FontSml, Value, MAXFONTNAME); else if (!strcasecmp(Name, "FontSml")) Utf8Strn0Cpy(FontSml, Value, MAXFONTNAME);
else if (!strcasecmp(Name, "FontFix")) Utf8Strn0Cpy(FontFix, Value, MAXFONTNAME); else if (!strcasecmp(Name, "FontFix")) Utf8Strn0Cpy(FontFix, Value, MAXFONTNAME);
else if (!strcasecmp(Name, "FontOsdSizeP")) FontOsdSizeP = atof(Value);
else if (!strcasecmp(Name, "FontSmlSizeP")) FontSmlSizeP = atof(Value);
else if (!strcasecmp(Name, "FontFixSizeP")) FontFixSizeP = atof(Value);
else if (!strcasecmp(Name, "FontOsdSize")) FontOsdSize = atoi(Value); else if (!strcasecmp(Name, "FontOsdSize")) FontOsdSize = atoi(Value);
else if (!strcasecmp(Name, "FontSmlSize")) FontSmlSize = atoi(Value); else if (!strcasecmp(Name, "FontSmlSize")) FontSmlSize = atoi(Value);
else if (!strcasecmp(Name, "FontFixSize")) FontFixSize = atoi(Value); else if (!strcasecmp(Name, "FontFixSize")) FontFixSize = atoi(Value);
@ -518,6 +537,10 @@ bool cSetup::Save(void)
Store("UseDolbyDigital", UseDolbyDigital); Store("UseDolbyDigital", UseDolbyDigital);
Store("ChannelInfoPos", ChannelInfoPos); Store("ChannelInfoPos", ChannelInfoPos);
Store("ChannelInfoTime", ChannelInfoTime); Store("ChannelInfoTime", ChannelInfoTime);
Store("OSDLeftP", OSDLeftP);
Store("OSDTopP", OSDTopP);
Store("OSDWidthP", OSDWidthP);
Store("OSDHeightP", OSDHeightP);
Store("OSDLeft", OSDLeft); Store("OSDLeft", OSDLeft);
Store("OSDTop", OSDTop); Store("OSDTop", OSDTop);
Store("OSDWidth", OSDWidth); Store("OSDWidth", OSDWidth);
@ -528,6 +551,9 @@ bool cSetup::Save(void)
Store("FontOsd", FontOsd); Store("FontOsd", FontOsd);
Store("FontSml", FontSml); Store("FontSml", FontSml);
Store("FontFix", FontFix); Store("FontFix", FontFix);
Store("FontOsdSizeP", FontOsdSizeP);
Store("FontSmlSizeP", FontSmlSizeP);
Store("FontFixSizeP", FontFixSizeP);
Store("FontOsdSize", FontOsdSize); Store("FontOsdSize", FontOsdSize);
Store("FontSmlSize", FontSmlSize); Store("FontSmlSize", FontSmlSize);
Store("FontFixSize", FontFixSize); Store("FontFixSize", FontFixSize);

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: config.h 2.8 2009/04/12 14:20:52 kls Exp $ * $Id: config.h 2.9 2009/05/03 13:15:35 kls Exp $
*/ */
#ifndef __CONFIG_H #ifndef __CONFIG_H
@ -22,13 +22,13 @@
// VDR's own version number: // VDR's own version number:
#define VDRVERSION "1.7.6" #define VDRVERSION "1.7.7"
#define VDRVERSNUM 10706 // Version * 10000 + Major * 100 + Minor #define VDRVERSNUM 10707 // Version * 10000 + Major * 100 + Minor
// The plugin API's version number: // The plugin API's version number:
#define APIVERSION "1.7.6" #define APIVERSION "1.7.7"
#define APIVERSNUM 10706 // Version * 10000 + Major * 100 + Minor #define APIVERSNUM 10707 // Version * 10000 + Major * 100 + Minor
// When loading plugins, VDR searches them by their APIVERSION, which // When loading plugins, VDR searches them by their APIVERSION, which
// may be smaller than VDRVERSION in case there have been no changes to // may be smaller than VDRVERSION in case there have been no changes to
@ -39,10 +39,10 @@
#define MAXPRIORITY 99 #define MAXPRIORITY 99
#define MAXLIFETIME 99 #define MAXLIFETIME 99
#define MINOSDWIDTH 480 #define MINOSDWIDTH 480
#define MAXOSDWIDTH 672 #define MAXOSDWIDTH 1920
#define MINOSDHEIGHT 324 #define MINOSDHEIGHT 324
#define MAXOSDHEIGHT 567 #define MAXOSDHEIGHT 1080
#define MaxFileName 256 #define MaxFileName 256
#define MaxSkinName 16 #define MaxSkinName 16
@ -195,6 +195,7 @@ private:
cSetupLine *Get(const char *Name, const char *Plugin = NULL); cSetupLine *Get(const char *Name, const char *Plugin = NULL);
void Store(const char *Name, const char *Value, const char *Plugin = NULL, bool AllowMultiple = false); void Store(const char *Name, const char *Value, const char *Plugin = NULL, bool AllowMultiple = false);
void Store(const char *Name, int Value, const char *Plugin = NULL); void Store(const char *Name, int Value, const char *Plugin = NULL);
void Store(const char *Name, double &Value, const char *Plugin = NULL);
public: public:
// Also adjust cMenuSetup (menu.c) when adding parameters here! // Also adjust cMenuSetup (menu.c) when adding parameters here!
int __BeginData__; int __BeginData__;
@ -243,6 +244,7 @@ public:
int UseDolbyDigital; int UseDolbyDigital;
int ChannelInfoPos; int ChannelInfoPos;
int ChannelInfoTime; int ChannelInfoTime;
double OSDLeftP, OSDTopP, OSDWidthP, OSDHeightP;
int OSDLeft, OSDTop, OSDWidth, OSDHeight; int OSDLeft, OSDTop, OSDWidth, OSDHeight;
int OSDMessageTime; int OSDMessageTime;
int UseSmallFont; int UseSmallFont;
@ -250,6 +252,9 @@ public:
char FontOsd[MAXFONTNAME]; char FontOsd[MAXFONTNAME];
char FontSml[MAXFONTNAME]; char FontSml[MAXFONTNAME];
char FontFix[MAXFONTNAME]; char FontFix[MAXFONTNAME];
double FontOsdSizeP;
double FontSmlSizeP;
double FontFixSizeP;
int FontOsdSize; int FontOsdSize;
int FontSmlSize; int FontSmlSize;
int FontFixSize; int FontFixSize;

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: device.c 2.16 2009/04/18 09:41:00 kls Exp $ * $Id: device.c 2.17 2009/05/02 12:17:39 kls Exp $
*/ */
#include "device.h" #include "device.h"
@ -19,6 +19,11 @@
#include "status.h" #include "status.h"
#include "transfer.h" #include "transfer.h"
const char *VideoAspectString[] = { "4:3",
"16:9",
"2.21:9"
};
// --- cLiveSubtitle --------------------------------------------------------- // --- cLiveSubtitle ---------------------------------------------------------
class cLiveSubtitle : public cReceiver { class cLiveSubtitle : public cReceiver {
@ -384,6 +389,13 @@ eVideoSystem cDevice::GetVideoSystem(void)
return vsPAL; return vsPAL;
} }
void cDevice::GetVideoSize(int &Width, int &Height, eVideoAspect &Aspect)
{
Width = MINOSDWIDTH;
Height = MINOSDHEIGHT;
Aspect = va4_3;
}
//#define PRINTPIDS(s) { char b[500]; char *q = b; q += sprintf(q, "%d %s ", CardIndex(), s); for (int i = 0; i < MAXPIDHANDLES; i++) q += sprintf(q, " %s%4d %d", i == ptOther ? "* " : "", pidHandles[i].pid, pidHandles[i].used); dsyslog(b); } //#define PRINTPIDS(s) { char b[500]; char *q = b; q += sprintf(q, "%d %s ", CardIndex(), s); for (int i = 0; i < MAXPIDHANDLES; i++) q += sprintf(q, " %s%4d %d", i == ptOther ? "* " : "", pidHandles[i].pid, pidHandles[i].used); dsyslog(b); }
#define PRINTPIDS(s) #define PRINTPIDS(s)

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: device.h 2.9 2009/04/05 12:12:44 kls Exp $ * $Id: device.h 2.10 2009/05/02 12:16:20 kls Exp $
*/ */
#ifndef __DEVICE_H #ifndef __DEVICE_H
@ -56,6 +56,13 @@ enum eVideoSystem { vsPAL,
vsNTSC vsNTSC
}; };
enum eVideoAspect { va4_3,
va16_9,
va221_9
};
extern const char *VideoAspectString[];
enum eVideoDisplayFormat { vdfPanAndScan, enum eVideoDisplayFormat { vdfPanAndScan,
vdfLetterBox, vdfLetterBox,
vdfCenterCutOut vdfCenterCutOut
@ -377,6 +384,9 @@ public:
virtual eVideoSystem GetVideoSystem(void); virtual eVideoSystem GetVideoSystem(void);
///< Returns the video system of the currently displayed material ///< Returns the video system of the currently displayed material
///< (default is PAL). ///< (default is PAL).
virtual void GetVideoSize(int &Width, int &Height, eVideoAspect &Aspect);
///< Returns the With, Height and Aspect ratio of the currently
///< displayed material.
// Track facilities // Track facilities

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: dvbdevice.c 2.14 2009/04/10 09:54:24 kls Exp $ * $Id: dvbdevice.c 2.15 2009/05/03 13:49:41 kls Exp $
*/ */
#include "dvbdevice.h" #include "dvbdevice.h"
@ -746,6 +746,23 @@ eVideoSystem cDvbDevice::GetVideoSystem(void)
return VideoSystem; return VideoSystem;
} }
void cDvbDevice::GetVideoSize(int &Width, int &Height, eVideoAspect &Aspect)
{
video_size_t vs;
if (ioctl(fd_video, VIDEO_GET_SIZE, &vs) == 0) {
Width = vs.w;
if (Width < 720) // FIXME: some channels result in a With of, e.g. 544, but the final video *is* 720 wide
Width = 720;
Height = vs.h;
Aspect = eVideoAspect(vs.aspect_ratio);
if (Width >= MINOSDWIDTH && Width <= MAXOSDWIDTH && Height >= MINOSDHEIGHT && Height <= MAXOSDHEIGHT)
return;
}
else
LOG_ERROR;
cDevice::GetVideoSize(Width, Height, Aspect);
}
bool cDvbDevice::SetAudioBypass(bool On) bool cDvbDevice::SetAudioBypass(bool On)
{ {
if (setTransferModeForDolbyDigital != 1) if (setTransferModeForDolbyDigital != 1)

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: dvbdevice.h 2.3 2008/12/06 13:31:12 kls Exp $ * $Id: dvbdevice.h 2.4 2009/05/02 10:44:40 kls Exp $
*/ */
#ifndef __DVBDEVICE_H #ifndef __DVBDEVICE_H
@ -107,6 +107,7 @@ public:
virtual void SetVideoDisplayFormat(eVideoDisplayFormat VideoDisplayFormat); virtual void SetVideoDisplayFormat(eVideoDisplayFormat VideoDisplayFormat);
virtual void SetVideoFormat(bool VideoFormat16_9); virtual void SetVideoFormat(bool VideoFormat16_9);
virtual eVideoSystem GetVideoSystem(void); virtual eVideoSystem GetVideoSystem(void);
virtual void GetVideoSize(int &Width, int &Height, eVideoAspect &Aspect);
// Track facilities // Track facilities

6
font.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: font.c 2.1 2008/05/02 16:16:51 kls Exp $ * $Id: font.c 2.2 2009/05/03 11:15:39 kls Exp $
*/ */
#include "font.h" #include "font.h"
@ -145,7 +145,7 @@ cFreetypeFont::cFreetypeFont(const char *Name, int CharHeight, int CharWidth)
0, // horizontal device resolution 0, // horizontal device resolution
0); // vertical device resolution 0); // vertical device resolution
if (!error) { if (!error) {
height = ((face->size->metrics.ascender-face->size->metrics.descender) + 63) / 64; height = (face->size->metrics.ascender - face->size->metrics.descender + 63) / 64;
bottom = abs((face->size->metrics.descender - 63) / 64); bottom = abs((face->size->metrics.descender - 63) / 64);
} }
else else
@ -328,7 +328,7 @@ cFont *cFont::fonts[eDvbFontSize] = { NULL };
void cFont::SetFont(eDvbFont Font, const char *Name, int CharHeight) void cFont::SetFont(eDvbFont Font, const char *Name, int CharHeight)
{ {
cFont *f = CreateFont(Name, CharHeight); cFont *f = CreateFont(Name, min(max(CharHeight, MINFONTSIZE), MAXFONTSIZE));
if (!f || !f->Height()) if (!f || !f->Height())
f = new cDummyFont; f = new cDummyFont;
delete fonts[Font]; delete fonts[Font];

3
font.h
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: font.h 1.20 2007/06/23 10:09:14 kls Exp $ * $Id: font.h 2.1 2009/05/03 11:00:19 kls Exp $
*/ */
#ifndef __FONT_H #ifndef __FONT_H
@ -15,6 +15,7 @@
#include "tools.h" #include "tools.h"
#define MAXFONTNAME 64 #define MAXFONTNAME 64
#define MINFONTSIZE 10
#define MAXFONTSIZE 64 #define MAXFONTSIZE 64
enum eDvbFont { enum eDvbFont {

52
menu.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: menu.c 2.6 2009/01/24 15:05:43 kls Exp $ * $Id: menu.c 2.7 2009/05/03 13:30:13 kls Exp $
*/ */
#include "menu.h" #include "menu.h"
@ -2197,19 +2197,19 @@ void cMenuSetupOSD::Set(void)
Add(new cMenuEditStraItem(tr("Setup.OSD$Skin"), &skinIndex, numSkins, skinDescriptions)); Add(new cMenuEditStraItem(tr("Setup.OSD$Skin"), &skinIndex, numSkins, skinDescriptions));
if (themes.NumThemes()) if (themes.NumThemes())
Add(new cMenuEditStraItem(tr("Setup.OSD$Theme"), &themeIndex, themes.NumThemes(), themes.Descriptions())); Add(new cMenuEditStraItem(tr("Setup.OSD$Theme"), &themeIndex, themes.NumThemes(), themes.Descriptions()));
Add(new cMenuEditIntItem( tr("Setup.OSD$Left"), &data.OSDLeft, 0, MAXOSDWIDTH)); Add(new cMenuEditPrcItem( tr("Setup.OSD$Left (%)"), &data.OSDLeftP, 0.0, 0.5));
Add(new cMenuEditIntItem( tr("Setup.OSD$Top"), &data.OSDTop, 0, MAXOSDHEIGHT)); Add(new cMenuEditPrcItem( tr("Setup.OSD$Top (%)"), &data.OSDTopP, 0.0, 0.5));
Add(new cMenuEditIntItem( tr("Setup.OSD$Width"), &data.OSDWidth, MINOSDWIDTH, MAXOSDWIDTH)); Add(new cMenuEditPrcItem( tr("Setup.OSD$Width (%)"), &data.OSDWidthP, 0.5, 1.0));
Add(new cMenuEditIntItem( tr("Setup.OSD$Height"), &data.OSDHeight, MINOSDHEIGHT, MAXOSDHEIGHT)); Add(new cMenuEditPrcItem( tr("Setup.OSD$Height (%)"), &data.OSDHeightP, 0.5, 1.0));
Add(new cMenuEditIntItem( tr("Setup.OSD$Message time (s)"), &data.OSDMessageTime, 1, 60)); Add(new cMenuEditIntItem( tr("Setup.OSD$Message time (s)"), &data.OSDMessageTime, 1, 60));
Add(new cMenuEditStraItem(tr("Setup.OSD$Use small font"), &data.UseSmallFont, 3, useSmallFontTexts)); Add(new cMenuEditStraItem(tr("Setup.OSD$Use small font"), &data.UseSmallFont, 3, useSmallFontTexts));
Add(new cMenuEditBoolItem(tr("Setup.OSD$Anti-alias"), &data.AntiAlias)); Add(new cMenuEditBoolItem(tr("Setup.OSD$Anti-alias"), &data.AntiAlias));
Add(new cMenuEditStraItem(tr("Setup.OSD$Default font"), &fontOsdIndex, fontOsdNames.Size(), &fontOsdNames[0])); Add(new cMenuEditStraItem(tr("Setup.OSD$Default font"), &fontOsdIndex, fontOsdNames.Size(), &fontOsdNames[0]));
Add(new cMenuEditStraItem(tr("Setup.OSD$Small font"), &fontSmlIndex, fontSmlNames.Size(), &fontSmlNames[0])); Add(new cMenuEditStraItem(tr("Setup.OSD$Small font"), &fontSmlIndex, fontSmlNames.Size(), &fontSmlNames[0]));
Add(new cMenuEditStraItem(tr("Setup.OSD$Fixed font"), &fontFixIndex, fontFixNames.Size(), &fontFixNames[0])); Add(new cMenuEditStraItem(tr("Setup.OSD$Fixed font"), &fontFixIndex, fontFixNames.Size(), &fontFixNames[0]));
Add(new cMenuEditIntItem( tr("Setup.OSD$Default font size (pixel)"), &data.FontOsdSize, 10, MAXFONTSIZE)); Add(new cMenuEditPrcItem( tr("Setup.OSD$Default font size (%)"), &data.FontOsdSizeP, 0.01, 0.1, 1));
Add(new cMenuEditIntItem( tr("Setup.OSD$Small font size (pixel)"),&data.FontSmlSize, 10, MAXFONTSIZE)); Add(new cMenuEditPrcItem( tr("Setup.OSD$Small font size (%)"), &data.FontSmlSizeP, 0.01, 0.1, 1));
Add(new cMenuEditIntItem( tr("Setup.OSD$Fixed font size (pixel)"),&data.FontFixSize, 10, MAXFONTSIZE)); Add(new cMenuEditPrcItem( tr("Setup.OSD$Fixed font size (%)"), &data.FontFixSizeP, 0.01, 0.1, 1));
Add(new cMenuEditBoolItem(tr("Setup.OSD$Channel info position"), &data.ChannelInfoPos, tr("bottom"), tr("top"))); Add(new cMenuEditBoolItem(tr("Setup.OSD$Channel info position"), &data.ChannelInfoPos, tr("bottom"), tr("top")));
Add(new cMenuEditIntItem( tr("Setup.OSD$Channel info time (s)"), &data.ChannelInfoTime, 1, 60)); Add(new cMenuEditIntItem( tr("Setup.OSD$Channel info time (s)"), &data.ChannelInfoTime, 1, 60));
Add(new cMenuEditBoolItem(tr("Setup.OSD$Info on channel switch"), &data.ShowInfoOnChSwitch)); Add(new cMenuEditBoolItem(tr("Setup.OSD$Info on channel switch"), &data.ShowInfoOnChSwitch));
@ -2224,7 +2224,7 @@ void cMenuSetupOSD::Set(void)
eOSState cMenuSetupOSD::ProcessKey(eKeys Key) eOSState cMenuSetupOSD::ProcessKey(eKeys Key)
{ {
bool ModifiedApperance = false; bool ModifiedAppearance = false;
if (Key == kOk) { if (Key == kOk) {
I18nSetLocale(data.OSDLanguage); I18nSetLocale(data.OSDLanguage);
@ -2233,43 +2233,37 @@ eOSState cMenuSetupOSD::ProcessKey(eKeys Key)
if (Skin) { if (Skin) {
Utf8Strn0Cpy(data.OSDSkin, Skin->Name(), sizeof(data.OSDSkin)); Utf8Strn0Cpy(data.OSDSkin, Skin->Name(), sizeof(data.OSDSkin));
Skins.SetCurrent(Skin->Name()); Skins.SetCurrent(Skin->Name());
ModifiedApperance = true; ModifiedAppearance = true;
} }
} }
if (themes.NumThemes() && Skins.Current()->Theme()) { if (themes.NumThemes() && Skins.Current()->Theme()) {
Skins.Current()->Theme()->Load(themes.FileName(themeIndex)); Skins.Current()->Theme()->Load(themes.FileName(themeIndex));
Utf8Strn0Cpy(data.OSDTheme, themes.Name(themeIndex), sizeof(data.OSDTheme)); Utf8Strn0Cpy(data.OSDTheme, themes.Name(themeIndex), sizeof(data.OSDTheme));
ModifiedApperance |= themeIndex != originalThemeIndex; ModifiedAppearance |= themeIndex != originalThemeIndex;
}
if (data.OSDLeft != Setup.OSDLeft || data.OSDTop != Setup.OSDTop || data.OSDWidth != Setup.OSDWidth || data.OSDHeight != Setup.OSDHeight) {
data.OSDWidth &= ~0x07; // OSD width must be a multiple of 8
ModifiedApperance = true;
} }
if (data.OSDLeftP != Setup.OSDLeftP || data.OSDTopP != Setup.OSDTopP || data.OSDWidthP != Setup.OSDWidthP || data.OSDHeightP != Setup.OSDHeightP)
ModifiedAppearance = true;
if (data.UseSmallFont != Setup.UseSmallFont || data.AntiAlias != Setup.AntiAlias) if (data.UseSmallFont != Setup.UseSmallFont || data.AntiAlias != Setup.AntiAlias)
ModifiedApperance = true; ModifiedAppearance = true;
Utf8Strn0Cpy(data.FontOsd, fontOsdNames[fontOsdIndex], sizeof(data.FontOsd)); Utf8Strn0Cpy(data.FontOsd, fontOsdNames[fontOsdIndex], sizeof(data.FontOsd));
Utf8Strn0Cpy(data.FontSml, fontSmlNames[fontSmlIndex], sizeof(data.FontSml)); Utf8Strn0Cpy(data.FontSml, fontSmlNames[fontSmlIndex], sizeof(data.FontSml));
Utf8Strn0Cpy(data.FontFix, fontFixNames[fontFixIndex], sizeof(data.FontFix)); Utf8Strn0Cpy(data.FontFix, fontFixNames[fontFixIndex], sizeof(data.FontFix));
if (strcmp(data.FontOsd, Setup.FontOsd) || data.FontOsdSize != Setup.FontOsdSize) { if (strcmp(data.FontOsd, Setup.FontOsd) || data.FontOsdSizeP != Setup.FontOsdSizeP)
cFont::SetFont(fontOsd, data.FontOsd, data.FontOsdSize); ModifiedAppearance = true;
ModifiedApperance = true; if (strcmp(data.FontSml, Setup.FontSml) || data.FontSmlSizeP != Setup.FontSmlSizeP)
} ModifiedAppearance = true;
if (strcmp(data.FontSml, Setup.FontSml) || data.FontSmlSize != Setup.FontSmlSize) { if (strcmp(data.FontFix, Setup.FontFix) || data.FontFixSizeP != Setup.FontFixSizeP)
cFont::SetFont(fontSml, data.FontSml, data.FontSmlSize); ModifiedAppearance = true;
ModifiedApperance = true;
}
if (strcmp(data.FontFix, Setup.FontFix) || data.FontFixSize != Setup.FontFixSize) {
cFont::SetFont(fontFix, data.FontFix, data.FontFixSize);
ModifiedApperance = true;
}
} }
int oldSkinIndex = skinIndex; int oldSkinIndex = skinIndex;
int oldOsdLanguageIndex = osdLanguageIndex; int oldOsdLanguageIndex = osdLanguageIndex;
eOSState state = cMenuSetupBase::ProcessKey(Key); eOSState state = cMenuSetupBase::ProcessKey(Key);
if (ModifiedApperance) if (ModifiedAppearance) {
cOsdProvider::UpdateOsdSize(true);
SetDisplayMenu(); SetDisplayMenu();
}
if (osdLanguageIndex != oldOsdLanguageIndex || skinIndex != oldSkinIndex) { if (osdLanguageIndex != oldOsdLanguageIndex || skinIndex != oldSkinIndex) {
strn0cpy(data.OSDLanguage, I18nLocale(osdLanguageIndex), sizeof(data.OSDLanguage)); strn0cpy(data.OSDLanguage, I18nLocale(osdLanguageIndex), sizeof(data.OSDLanguage));

View File

@ -4,11 +4,12 @@
* 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: menuitems.c 2.3 2009/04/05 10:15:12 kls Exp $ * $Id: menuitems.c 2.4 2009/05/03 13:37:55 kls Exp $
*/ */
#include "menuitems.h" #include "menuitems.h"
#include <ctype.h> #include <ctype.h>
#include <math.h>
#include <wctype.h> #include <wctype.h>
#include "i18n.h" #include "i18n.h"
#include "plugin.h" #include "plugin.h"
@ -200,6 +201,71 @@ eOSState cMenuEditNumItem::ProcessKey(eKeys Key)
return state; return state;
} }
// --- cMenuEditPrcItem ------------------------------------------------------
cMenuEditPrcItem::cMenuEditPrcItem(const char *Name, double *Value, double Min, double Max, int Decimals)
:cMenuEditItem(Name)
{
value = Value;
min = Min;
max = Max;
decimals = Decimals;
factor = 100;
while (Decimals-- > 0)
factor *= 10;
if (*value < min)
*value = min;
else if (*value > max)
*value = max;
Set();
}
void cMenuEditPrcItem::Set(void)
{
char buf[16];
snprintf(buf, sizeof(buf), "%.*f", decimals, *value * 100);
SetValue(buf);
}
eOSState cMenuEditPrcItem::ProcessKey(eKeys Key)
{
eOSState state = cMenuEditItem::ProcessKey(Key);
if (state == osUnknown) {
double newValue = round(*value * factor); // avoids precision problems
Key = NORMALKEY(Key);
switch (Key) {
case kNone: break;
case k0 ... k9:
if (fresh) {
newValue = 0;
fresh = false;
}
newValue = newValue * 10 + (Key - k0);
break;
case kLeft: // TODO might want to increase the delta if repeated quickly?
newValue--;
fresh = true;
break;
case kRight:
newValue++;
fresh = true;
break;
default:
if (*value < min) { *value = min; Set(); }
if (*value > max) { *value = max; Set(); }
return state;
}
newValue /= factor;
if (newValue != *value && (!fresh || min <= newValue) && newValue <= max) {
*value = newValue;
Set();
}
state = osContinue;
}
return state;
}
// --- cMenuEditChrItem ------------------------------------------------------ // --- cMenuEditChrItem ------------------------------------------------------
cMenuEditChrItem::cMenuEditChrItem(const char *Name, char *Value, const char *Allowed) cMenuEditChrItem::cMenuEditChrItem(const char *Name, char *Value, const char *Allowed)

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: menuitems.h 2.1 2008/04/12 12:03:59 kls Exp $ * $Id: menuitems.h 2.2 2009/05/03 12:50:34 kls Exp $
*/ */
#ifndef __MENUITEMS_H #ifndef __MENUITEMS_H
@ -64,6 +64,18 @@ public:
virtual eOSState ProcessKey(eKeys Key); virtual eOSState ProcessKey(eKeys Key);
}; };
class cMenuEditPrcItem : public cMenuEditItem {
protected:
double *value;
double min, max;
int decimals;
int factor;
virtual void Set(void);
public:
cMenuEditPrcItem(const char *Name, double *Value, double Min = 0.0, double Max = 1.0, int Decimals = 0);
virtual eOSState ProcessKey(eKeys Key);
};
class cMenuEditChrItem : public cMenuEditItem { class cMenuEditChrItem : public cMenuEditItem {
private: private:
char *value; char *value;

30
osd.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: osd.c 2.2 2009/04/05 10:17:25 kls Exp $ * $Id: osd.c 2.3 2009/05/03 13:52:47 kls Exp $
*/ */
#include "osd.h" #include "osd.h"
@ -14,6 +14,7 @@
#include <sys/ioctl.h> #include <sys/ioctl.h>
#include <sys/stat.h> #include <sys/stat.h>
#include <sys/unistd.h> #include <sys/unistd.h>
#include "device.h"
#include "tools.h" #include "tools.h"
// --- cPalette -------------------------------------------------------------- // --- cPalette --------------------------------------------------------------
@ -880,6 +881,9 @@ void cOsd::Flush(void)
// --- cOsdProvider ---------------------------------------------------------- // --- cOsdProvider ----------------------------------------------------------
cOsdProvider *cOsdProvider::osdProvider = NULL; cOsdProvider *cOsdProvider::osdProvider = NULL;
int cOsdProvider::oldWidth = 0;
int cOsdProvider::oldHeight = 0;
int cOsdProvider::oldAspect = va4_3;
cOsdProvider::cOsdProvider(void) cOsdProvider::cOsdProvider(void)
{ {
@ -911,6 +915,30 @@ cOsd *cOsdProvider::NewOsd(int Left, int Top, uint Level)
return new cOsd(Left, Top, 999); // create a dummy cOsd, so that access won't result in a segfault return new cOsd(Left, Top, 999); // create a dummy cOsd, so that access won't result in a segfault
} }
void cOsdProvider::UpdateOsdSize(bool Force)
{
int Width;
int Height;
eVideoAspect Aspect;
cDevice::PrimaryDevice()->GetVideoSize(Width, Height, Aspect);
if (Width != oldWidth || Height != oldHeight || Aspect != oldAspect || Force) {
Setup.OSDLeft = int(round(Width * Setup.OSDLeftP));
Setup.OSDTop = int(round(Height * Setup.OSDTopP));
Setup.OSDWidth = int(round(Width * Setup.OSDWidthP)) & ~0x07; // OSD width must be a multiple of 8
Setup.OSDHeight = int(round(Height * Setup.OSDHeightP));
Setup.FontOsdSize = int(round(Height * Setup.FontOsdSizeP));
Setup.FontFixSize = int(round(Height * Setup.FontFixSizeP));
Setup.FontSmlSize = int(round(Height * Setup.FontSmlSizeP));
cFont::SetFont(fontOsd, Setup.FontOsd, Setup.FontOsdSize);
cFont::SetFont(fontFix, Setup.FontFix, Setup.FontFixSize);
cFont::SetFont(fontSml, Setup.FontSml, Setup.FontSmlSize);
oldWidth = Width;
oldHeight = Height;
oldAspect = Aspect;
dsyslog("OSD size changed to %dx%d @ %s", Width, Height, VideoAspectString[Aspect]);
}
}
void cOsdProvider::Shutdown(void) void cOsdProvider::Shutdown(void)
{ {
delete osdProvider; delete osdProvider;

10
osd.h
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: osd.h 2.2 2009/04/05 10:16:05 kls Exp $ * $Id: osd.h 2.3 2009/05/03 13:52:10 kls Exp $
*/ */
#ifndef __OSD_H #ifndef __OSD_H
@ -406,6 +406,9 @@ public:
class cOsdProvider { class cOsdProvider {
private: private:
static cOsdProvider *osdProvider; static cOsdProvider *osdProvider;
static int oldWidth;
static int oldHeight;
static int oldAspect;
protected: protected:
virtual cOsd *CreateOsd(int Left, int Top, uint Level) = 0; virtual cOsd *CreateOsd(int Left, int Top, uint Level) = 0;
///< Returns a pointer to a newly created cOsd object, which will be located ///< Returns a pointer to a newly created cOsd object, which will be located
@ -420,6 +423,11 @@ public:
///< caller must delete it. If the OSD is already in use, or there is no OSD ///< caller must delete it. If the OSD is already in use, or there is no OSD
///< provider, a dummy OSD is returned so that the caller may always use the ///< provider, a dummy OSD is returned so that the caller may always use the
///< returned pointer without having to check it every time it is accessed. ///< returned pointer without having to check it every time it is accessed.
static void UpdateOsdSize(bool Force = false);
///< Inquires the actual size of the video display and adjusts the OSD and
///< font sizes accordingly. If Force is true, all settings are recalculated,
///< even if the video resolution hasn't changed since the last call to
///< this funtion.
static void Shutdown(void); static void Shutdown(void);
///< Shuts down the OSD provider facility by deleting the current OSD provider. ///< Shuts down the OSD provider facility by deleting the current OSD provider.
}; };

View File

@ -495,17 +495,17 @@ msgstr "Aparen
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Tema" msgstr "Tema"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Esquerra" msgstr "Esquerra (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "A dalt" msgstr "A dalt (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Amplada" msgstr "Amplada (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Alçada" msgstr "Alçada (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Durada dels missatges (s)" msgstr "Durada dels missatges (s)"
@ -525,14 +525,14 @@ msgstr "Font petita"
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Font fixa" msgstr "Font fixa"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Mida font predeterminada (pixel)" msgstr "Mida font predeterminada (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Mida font petita" msgstr "Mida font petita (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Mida font fixa" msgstr "Mida font fixa (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Posició de la informació del canal" msgstr "Posició de la informació del canal"

View File

@ -493,17 +493,17 @@ msgstr "Vzhled"
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Téma" msgstr "Téma"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Vlevo" msgstr "Vlevo (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "Nahoře" msgstr "Nahoøe (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Šířka" msgstr "©íøka (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Výška" msgstr "Vý¹ka (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Èas zobrazení zpávy (s)" msgstr "Èas zobrazení zpávy (s)"
@ -523,14 +523,14 @@ msgstr "Mal
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Fixní písmo" msgstr "Fixní písmo"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Velikost výchozího písma (pixely)" msgstr "Velikost výchozího písma (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Velikost malého písma (pixely)" msgstr "Velikost malého písma (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Velikost fixního písma (pixely)" msgstr "Velikost fixního písma (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Pozice informace o kanálu" msgstr "Pozice informace o kanálu"

View File

@ -492,17 +492,17 @@ msgstr "Skin"
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Tema" msgstr "Tema"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Venstre" msgstr "Venstre (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "Top" msgstr "Top (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Bredde" msgstr "Bredde (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Højde" msgstr "Højde (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Tid beskeder skal vises (s)" msgstr "Tid beskeder skal vises (s)"
@ -522,14 +522,14 @@ msgstr "Lille skrift"
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Fast skrift" msgstr "Fast skrift"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Standard skrift størrelse (pixel)" msgstr "Standard skrift størrelse (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Lille skrift størrelse (pixel)" msgstr "Lille skrift størrelse (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Fast skrift størrelse (pixel)" msgstr "Fast skrift størrelse (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Placering af kanalinfo" msgstr "Placering af kanalinfo"

View File

@ -492,17 +492,17 @@ msgstr "Oberfl
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Thema" msgstr "Thema"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Links" msgstr "Links (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "Oben" msgstr "Oben (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Breite" msgstr "Breite (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Höhe" msgstr "Höhe (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Anzeigedauer für Nachrichten (s)" msgstr "Anzeigedauer für Nachrichten (s)"
@ -522,14 +522,14 @@ msgstr "Kleine Schriftart"
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Festbreiten-Schriftart" msgstr "Festbreiten-Schriftart"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Standard-Schriftgröße (pixel)" msgstr "Standard-Schriftgröße (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Kleine Schriftgröße (pixel)" msgstr "Kleine Schriftgröße (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Festbreiten-Schriftgröße (pixel)" msgstr "Festbreiten-Schriftgröße (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Kanalinfo-Position" msgstr "Kanalinfo-Position"

View File

@ -492,17 +492,17 @@ msgstr "
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "ÈÝìá" msgstr "ÈÝìá"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "ÁñéóôåñÜ" msgstr "ÁñéóôåñÜ (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "ÅðÜíù" msgstr "ÅðÜíù (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "ÌÜêñïò" msgstr "ÌÜêñïò (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "¾øïò" msgstr "¾øïò (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "×ñüíïò Ýíäåéîçò ìõíçìÜôùí (ä)" msgstr "×ñüíïò Ýíäåéîçò ìõíçìÜôùí (ä)"
@ -522,13 +522,13 @@ msgstr ""
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "" msgstr ""
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "" msgstr ""
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "" msgstr ""
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "" msgstr ""
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"

View File

@ -493,17 +493,17 @@ msgstr "Skin"
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Tema" msgstr "Tema"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Izquierda" msgstr "Izquierda (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "Arriba" msgstr "Arriba (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Anchura" msgstr "Anchura (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Altura" msgstr "Altura (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Duración de los mensajes (sg)" msgstr "Duración de los mensajes (sg)"
@ -523,14 +523,14 @@ msgstr "Fuente peque
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Fuente fija" msgstr "Fuente fija"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Tamaño fuente por defecto (pixel)" msgstr "Tamaño fuente por defecto (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Tamaño fuente pequeña (pixel)" msgstr "Tamaño fuente pequeña (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Tamaño fuente fija (pixel)" msgstr "Tamaño fuente fija (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Posición para información de canal" msgstr "Posición para información de canal"

View File

@ -492,17 +492,17 @@ msgstr "Kest"
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Teema" msgstr "Teema"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Vasakule" msgstr "Vasakule (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "Ülesse" msgstr "Ülesse (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Laius" msgstr "Laius (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Kõrgus" msgstr "Kõrgus (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Teate esitusaeg (s)" msgstr "Teate esitusaeg (s)"
@ -522,14 +522,14 @@ msgstr "V
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Fikseeritud font" msgstr "Fikseeritud font"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Vaikefondi suurus (px)" msgstr "Vaikefondi suurus (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Väikese fondi suurus (px)" msgstr "Väikese fondi suurus (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Fiks. fondi suurus (px)" msgstr "Fiks. fondi suurus (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Kanaliinfo asukoht" msgstr "Kanaliinfo asukoht"

View File

@ -495,17 +495,17 @@ msgstr "Ulkoasu"
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Teema" msgstr "Teema"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Vaakakeskitys" msgstr "Vaakakeskitys (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "Pystykeskitys" msgstr "Pystykeskitys (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Leveys" msgstr "Leveys (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Korkeus" msgstr "Korkeus (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Viestien esitysaika (s)" msgstr "Viestien esitysaika (s)"
@ -525,14 +525,14 @@ msgstr "Pieni kirjasintyyppi"
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Tasavälinen kirjasintyyppi" msgstr "Tasavälinen kirjasintyyppi"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Oletuskirjasintyypin koko (px)" msgstr "Oletuskirjasintyypin koko (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Pienen kirjasintyypin koko (px)" msgstr "Pienen kirjasintyypin koko (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Tasavälisen kirjasintyypin koko (px)" msgstr "Tasavälisen kirjasintyypin koko (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Kanavatiedon sijainti" msgstr "Kanavatiedon sijainti"

View File

@ -498,17 +498,17 @@ msgstr "Skin"
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Thème" msgstr "Thème"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Gauche" msgstr "Gauche (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "Haut" msgstr "Haut (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Largeur" msgstr "Largeur (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Hauteur" msgstr "Hauteur (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Durée affichage message (s)" msgstr "Durée affichage message (s)"
@ -528,14 +528,14 @@ msgstr "Petite police"
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Police taille fixe" msgstr "Police taille fixe"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Taille police par défaut (pixel)" msgstr "Taille police par défaut (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Taille petite police par défaut (pixel)" msgstr "Taille petite police par défaut (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Taille police fixe par défaut (pixel)" msgstr "Taille police fixe par défaut (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Position infos chaînes" msgstr "Position infos chaînes"

View File

@ -494,17 +494,17 @@ msgstr "Povr
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Tema" msgstr "Tema"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Lijevo" msgstr "Lijevo (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "Gore" msgstr "Gore (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "©irina" msgstr "©irina (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Visina" msgstr "Visina (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Vrijeme prikaza poruka (s)" msgstr "Vrijeme prikaza poruka (s)"
@ -524,14 +524,14 @@ msgstr "Maleni font"
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Nepromjenjiv font" msgstr "Nepromjenjiv font"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Velièina zadanog fonta (piksel)" msgstr "Velièina zadanog fonta (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Velièina malenog fonta (piksel)" msgstr "Velièina malenog fonta (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Velièina nepromjenjivog fonta (piksel)" msgstr "Velièina nepromjenjivog fonta (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Pozicija informacija o programu" msgstr "Pozicija informacija o programu"

View File

@ -495,17 +495,17 @@ msgstr "Men
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Téma" msgstr "Téma"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Balra" msgstr "Balra (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "Fent" msgstr "Fent (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Szélesség" msgstr "Szélesség (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Magasság" msgstr "Magasság (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Információ feltûntetésének idõtartama" msgstr "Információ feltûntetésének idõtartama"
@ -525,14 +525,14 @@ msgstr "Kis bet
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Kötött betûtipus" msgstr "Kötött betûtipus"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Alapértelmezett betűtipus méret (pixel)" msgstr "Alapértelmezett betûtipus méret (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Kis betűtipus méret (pixel)" msgstr "Kis betûtipus méret (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Kötött betűtipus méret (pixel)" msgstr "Kötött betûtipus méret (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Adásinformáció poziciója" msgstr "Adásinformáció poziciója"

View File

@ -499,17 +499,17 @@ msgstr "Stile interfaccia"
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Tema colori" msgstr "Tema colori"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Sinistra" msgstr "Sinistra (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "In alto" msgstr "In alto (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Larghezza OSD" msgstr "Larghezza OSD (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Altezza OSD" msgstr "Altezza OSD (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Durata del messaggio (s)" msgstr "Durata del messaggio (s)"
@ -529,14 +529,14 @@ msgstr "Caratteri piccoli"
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Caratteri fissi" msgstr "Caratteri fissi"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Dim. caratteri pred. (pixel)" msgstr "Dim. caratteri pred. (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Dim. caratteri piccoli (pixel)" msgstr "Dim. caratteri piccoli (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Dim. caratteri fissi (pixel)" msgstr "Dim. caratteri fissi (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Posizione info canale" msgstr "Posizione info canale"

View File

@ -496,17 +496,17 @@ msgstr "Skin"
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Thema" msgstr "Thema"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Links" msgstr "Links (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "Boven" msgstr "Boven (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Breedte" msgstr "Breedte (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Hoogte" msgstr "Hoogte (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Weergave duur van berichten (s)" msgstr "Weergave duur van berichten (s)"
@ -526,14 +526,14 @@ msgstr "Kleine lettertype"
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Letter met vaste breedte" msgstr "Letter met vaste breedte"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Afmetingen standaard lettertype (pixel)" msgstr "Afmetingen standaard lettertype (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Afmetingen klein lettertype (pixel)" msgstr "Afmetingen klein lettertype (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Afmetingen lettertype met vaste breedte (pixel)" msgstr "Afmetingen lettertype met vaste breedte (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Kanaal info positie" msgstr "Kanaal info positie"

View File

@ -493,17 +493,17 @@ msgstr ""
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "" msgstr ""
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "" msgstr ""
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "" msgstr ""
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Bredde" msgstr "Bredde (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Høyde" msgstr "Høyde (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Tid meldinger skal vises (s)" msgstr "Tid meldinger skal vises (s)"
@ -523,13 +523,13 @@ msgstr ""
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "" msgstr ""
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "" msgstr ""
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "" msgstr ""
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "" msgstr ""
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"

View File

@ -493,17 +493,17 @@ msgstr "Sk
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Motyw" msgstr "Motyw"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Od lewej" msgstr "Od lewej (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "Od góry" msgstr "Od góry (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Szerokość" msgstr "Szerokość (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Wysokość" msgstr "Wysokość (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Czas trwania wiadomo¶ci (s)" msgstr "Czas trwania wiadomo¶ci (s)"
@ -523,14 +523,14 @@ msgstr "Ma
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Sta³a czcionka" msgstr "Sta³a czcionka"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Standardowa czcionka wyjściowa (pixle)" msgstr "Standardowa czcionka wyjściowa (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Mała czcionka wyjściowa (pixle)" msgstr "Mała czcionka wyjściowa (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Ustalona czcionka wyjściowa (pixle)" msgstr "Ustalona czcionka wyjściowa (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Pozycja informacji o kanale" msgstr "Pozycja informacji o kanale"

View File

@ -492,17 +492,17 @@ msgstr "Skin"
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Tema" msgstr "Tema"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Esquerda" msgstr "Esquerda (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "Topo" msgstr "Topo (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Largura" msgstr "Largura (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Altura" msgstr "Altura (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Duração das mensagem (s)" msgstr "Duração das mensagem (s)"
@ -522,14 +522,14 @@ msgstr "Fonte pequena"
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Fonte Fixa" msgstr "Fonte Fixa"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Tamanho por defeito de fonte (pixel)" msgstr "Tamanho por defeito de fonte (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Tamanho da fonte pequena (pixel)" msgstr "Tamanho da fonte pequena (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Tamanho da fonte fixa (pixel)" msgstr "Tamanho da fonte fixa (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Posição de info dos canais" msgstr "Posição de info dos canais"

View File

@ -495,17 +495,17 @@ msgstr "Skin"
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Temã" msgstr "Temã"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Stânga" msgstr "Stânga (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "Sus" msgstr "Sus (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Lăţime OSD" msgstr "Lãþime OSD (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Înălţime OSD" msgstr "Înãlþime OSD (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Timp afiºare mesaje (sec)" msgstr "Timp afiºare mesaje (sec)"
@ -525,14 +525,14 @@ msgstr "Font mic"
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Font cu lãþime fixã" msgstr "Font cu lãþime fixã"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Mărimea implicită a fontului (pixeli)" msgstr "Mãrimea implicitã a fontului (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Mărimea 'mică' a fontului (pixeli)" msgstr "Mãrimea 'micã' a fontului (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Mărimea 'fixă' a fontului (pixeli)" msgstr "Mãrimea 'fixã' a fontului (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Poziþia informaþiilor despre canal" msgstr "Poziþia informaþiilor despre canal"

View File

@ -493,17 +493,17 @@ msgstr "
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Тема" msgstr "Тема"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "¾âáâãß áÛÕÒÐ" msgstr "¾âáâãß áÛÕÒÐ (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "¾âáâãß áÒÕàåã" msgstr "¾âáâãß áÒÕàåã (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "ÈØàØÝÐ" msgstr "ÈØàØÝÐ (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "²ëáÞâÐ" msgstr "²ëáÞâÐ (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Длительность показа сообщений (сек)" msgstr "Длительность показа сообщений (сек)"
@ -523,14 +523,14 @@ msgstr "
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Фиксированный фонт" msgstr "Фиксированный фонт"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "ÀÐ×ÜÕà äÞÝâÐ ÔÛï ÜÕÝî (pixel)" msgstr "ÀÐ×ÜÕà äÞÝâÐ ÔÛï ÜÕÝî (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "ÀÐ×ÜÕà ÜÕÛÚÞÓÞ äÞÝâÐ (pixel)" msgstr "ÀÐ×ÜÕà ÜÕÛÚÞÓÞ äÞÝâÐ (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "ÀÐ×ÜÕà äØÚáØàÞÒÐÝÝÞÓÞ äÞÝâÐ (pixel)" msgstr "ÀÐ×ÜÕà äØÚáØàÞÒÐÝÝÞÓÞ äÞÝâÐ (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Положение окна информации о канале" msgstr "Положение окна информации о канале"

View File

@ -493,17 +493,17 @@ msgstr "Preobleka"
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Tema" msgstr "Tema"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Levo" msgstr "Levo (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "Zgoraj" msgstr "Zgoraj (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "©irina" msgstr "©irina (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Vi¹ina" msgstr "Vi¹ina (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Èas prikaza sporoèila (s)" msgstr "Èas prikaza sporoèila (s)"
@ -523,14 +523,14 @@ msgstr "Mala pisava"
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Fiksna pisava" msgstr "Fiksna pisava"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Privzeta velikost pisave (pixel)" msgstr "Privzeta velikost pisave (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Majhna velikost pisave (pixel)" msgstr "Majhna velikost pisave (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Pozicija informacije o kanalu" msgstr ""
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Pozicija informacije o kanalu" msgstr "Pozicija informacije o kanalu"

View File

@ -495,17 +495,17 @@ msgstr "Skin"
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Tema" msgstr "Tema"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Vänster" msgstr "Vänster (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "Övre" msgstr "Övre (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Bredd" msgstr "Bredd (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Höjd" msgstr "Höjd (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Tid för meddelanden (sek)" msgstr "Tid för meddelanden (sek)"
@ -525,14 +525,14 @@ msgstr "Sm
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Fast typsnitt" msgstr "Fast typsnitt"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Fontstorlek standard (pixel)" msgstr "Fontstorlek standard (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Fontstorlek liten text (pixel)" msgstr "Fontstorlek liten text (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Fast fontstorlek (pixel)" msgstr "Fast fontstorlek (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Placering av kanalinformation" msgstr "Placering av kanalinformation"

View File

@ -492,17 +492,17 @@ msgstr "Y
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "Tema" msgstr "Tema"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "Sol" msgstr "Sol (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "Üst" msgstr "Üst (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "Geniþlik" msgstr "Geniþlik (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "Yükseklik" msgstr "Yükseklik (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "Mesaj gösterme zamaný (sn)" msgstr "Mesaj gösterme zamaný (sn)"
@ -522,14 +522,14 @@ msgstr "K
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "Çakýlý font" msgstr "Çakýlý font"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "Olaðan font boyutu (pixel)" msgstr "Olaðan font boyutu (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "Küçük font boyutu (pixel)" msgstr "Küçük font boyutu (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "Çakýlý font boyutu (pixel)" msgstr "Çakýlý font boyutu (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "Kanal bilgi pozisyonu" msgstr "Kanal bilgi pozisyonu"

View File

@ -492,17 +492,17 @@ msgstr "
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "ÂÕÜÐ" msgstr "ÂÕÜÐ"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "²öÔáâãß ×ÛöÒÐ" msgstr "²öÔáâãß ×ÛöÒÐ (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "²öÔáâãß ×ÒÕàåã" msgstr "²öÔáâãß ×ÒÕàåã (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "ÈØàØÝÐ" msgstr "ÈØàØÝÐ (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "²ØáÞâÐ" msgstr "²ØáÞâÐ (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "ÂàØÒÐÛöáâì ßÞÚÐ×ã ßÞÒöÔÞÜÛÕÝì (áÕÚ)" msgstr "ÂàØÒÐÛöáâì ßÞÚÐ×ã ßÞÒöÔÞÜÛÕÝì (áÕÚ)"
@ -522,14 +522,14 @@ msgstr "
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "ÄöÚáÞÒÐÝØÙ äÞÝâ" msgstr "ÄöÚáÞÒÐÝØÙ äÞÝâ"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "ÀÐ×Üöà äÞÝâÐ ÔÛï ÜÕÝî (pixel)" msgstr "ÀÐ×Üöà äÞÝâÐ ÔÛï ÜÕÝî (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "ÀÐ×Üöà ÜÐÛÞÓÞ äÞÝâÐ (pixel)" msgstr "ÀÐ×Üöà ÜÐÛÞÓÞ äÞÝâÐ (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "ÀÐ×Üöà äöÚáÞÒÐÝÞÓÞ äÞÝâÐ (pixel)" msgstr "ÀÐ×Üöà äöÚáÞÒÐÝÞÓÞ äÞÝâÐ (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "¿ÞÛÞÖÕÝÝï ÒöÚÝÐ öÝäÞàÜÐæö÷ ßàÞ ÚÐÝÐÛ" msgstr "¿ÞÛÞÖÕÝÝï ÒöÚÝÐ öÝäÞàÜÐæö÷ ßàÞ ÚÐÝÐÛ"

View File

@ -495,17 +495,17 @@ msgstr "外壳"
msgid "Setup.OSD$Theme" msgid "Setup.OSD$Theme"
msgstr "主题" msgstr "主题"
msgid "Setup.OSD$Left" msgid "Setup.OSD$Left (%)"
msgstr "左" msgstr "左 (%)"
msgid "Setup.OSD$Top" msgid "Setup.OSD$Top (%)"
msgstr "顶部" msgstr "顶部 (%)"
msgid "Setup.OSD$Width" msgid "Setup.OSD$Width (%)"
msgstr "宽" msgstr "宽 (%)"
msgid "Setup.OSD$Height" msgid "Setup.OSD$Height (%)"
msgstr "高" msgstr "高 (%)"
msgid "Setup.OSD$Message time (s)" msgid "Setup.OSD$Message time (s)"
msgstr "时间信息 (s)" msgstr "时间信息 (s)"
@ -525,14 +525,14 @@ msgstr "小字体"
msgid "Setup.OSD$Fixed font" msgid "Setup.OSD$Fixed font"
msgstr "固定字体" msgstr "固定字体"
msgid "Setup.OSD$Default font size (pixel)" msgid "Setup.OSD$Default font size (%)"
msgstr "默认字体大小 (像素)" msgstr "默认字体大小 (%)"
msgid "Setup.OSD$Small font size (pixel)" msgid "Setup.OSD$Small font size (%)"
msgstr "小字体 (像素)" msgstr "小字体 (%)"
msgid "Setup.OSD$Fixed font size (pixel)" msgid "Setup.OSD$Fixed font size (%)"
msgstr "固定的字体 (像素)" msgstr "固定的字体 (%)"
msgid "Setup.OSD$Channel info position" msgid "Setup.OSD$Channel info position"
msgstr "频道信息位置" msgstr "频道信息位置"

8
vdr.c
View File

@ -22,7 +22,7 @@
* *
* The project's page is at http://www.cadsoft.de/vdr * The project's page is at http://www.cadsoft.de/vdr
* *
* $Id: vdr.c 2.7 2009/04/05 13:21:46 kls Exp $ * $Id: vdr.c 2.8 2009/05/03 10:33:06 kls Exp $
*/ */
#include <getopt.h> #include <getopt.h>
@ -747,6 +747,12 @@ int main(int argc, char *argv[])
CheckHasProgramme = false; CheckHasProgramme = false;
} }
} }
// Update the OSD size:
{
static time_t lastOsdSizeUpdate = 0;
if (Now != lastOsdSizeUpdate) // once per second
cOsdProvider::UpdateOsdSize();
}
// Restart the Watchdog timer: // Restart the Watchdog timer:
if (WatchdogTimeout > 0) { if (WatchdogTimeout > 0) {
int LatencyTime = WatchdogTimeout - alarm(WatchdogTimeout); int LatencyTime = WatchdogTimeout - alarm(WatchdogTimeout);