mirror of
				https://github.com/rofafor/vdr-plugin-femon.git
				synced 2023-10-10 11:36:53 +00:00 
			
		
		
		
	Fixed minor bitrate calculation errors.
Added russian translation (Thanks to Vyacheslav Dikonov).
This commit is contained in:
		
							
								
								
									
										5
									
								
								HISTORY
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								HISTORY
									
									
									
									
									
								
							@@ -40,3 +40,8 @@ VDR Plugin 'femon' Revision History
 | 
			
		||||
 | 
			
		||||
- Fixed channel toggling with '0' key.
 | 
			
		||||
- Bitrate calculation thread is now canceled immediately to speed up channel switching.
 | 
			
		||||
 | 
			
		||||
2004-04-04: Version 0.0.3c
 | 
			
		||||
 | 
			
		||||
- Fixed minor bitrate calculation errors
 | 
			
		||||
- Added russian translation (Thanks to Vyacheslav Dikonov)
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								femon.h
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								femon.h
									
									
									
									
									
								
							@@ -11,7 +11,7 @@
 | 
			
		||||
 | 
			
		||||
#include <vdr/plugin.h>
 | 
			
		||||
 | 
			
		||||
static const char *VERSION        = "0.0.3b";
 | 
			
		||||
static const char *VERSION        = "0.0.3c";
 | 
			
		||||
static const char *DESCRIPTION    = "DVB Signal Information Monitor (OSD)";
 | 
			
		||||
static const char *MAINMENUENTRY  = "Signal Information";
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										351
									
								
								femoni18n.c
									
									
									
									
									
								
							
							
						
						
									
										351
									
								
								femoni18n.c
									
									
									
									
									
								
							@@ -20,13 +20,13 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "DVB signaalimittari (OSD)", // suomi
 | 
			
		||||
    "", // Polski
 | 
			
		||||
    "", // Espa<70>ol
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar
 | 
			
		||||
    "", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Signal Information", // English
 | 
			
		||||
@@ -40,13 +40,13 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "Signaalimittari", // suomi
 | 
			
		||||
    "", // Polski
 | 
			
		||||
    "", // Espa<70>ol
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar
 | 
			
		||||
    "", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Position", // English
 | 
			
		||||
@@ -60,13 +60,13 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "Sijainti", // suomi
 | 
			
		||||
    "", // Polski
 | 
			
		||||
    "", // Espa<70>ol
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar
 | 
			
		||||
    "", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Default Display Mode", // English
 | 
			
		||||
@@ -80,13 +80,13 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "Oletus n<>ytt<74>moodi", // suomi
 | 
			
		||||
    "", // Polski   
 | 
			
		||||
    "", // Espa<70>ol  
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar  
 | 
			
		||||
    "", // Catal<61>  
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>  
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "simple", // English
 | 
			
		||||
@@ -100,13 +100,13 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "suppea", // suomi
 | 
			
		||||
    "", // Polski   
 | 
			
		||||
    "", // Espa<70>ol  
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar  
 | 
			
		||||
    "", // Catal<61>  
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>  
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "advanced", // English
 | 
			
		||||
@@ -120,13 +120,13 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "laaja", // suomi
 | 
			
		||||
    "", // Polski   
 | 
			
		||||
    "", // Espa<70>ol  
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar  
 | 
			
		||||
    "", // Catal<61>  
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>  
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Hide Mainmenu Entry", // English
 | 
			
		||||
@@ -140,13 +140,13 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "Piilota valinta p<><70>valikosta", // suomi
 | 
			
		||||
    "", // Polski
 | 
			
		||||
    "", // Espa<70>ol
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar
 | 
			
		||||
    "", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "OSD Update Interval [0.1s]", // English
 | 
			
		||||
@@ -160,13 +160,13 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "N<EFBFBD>yt<EFBFBD>n p<>ivitysv<73>li [0.1s]", // suomi
 | 
			
		||||
    "", // Polski
 | 
			
		||||
    "", // Espa<70>ol
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar
 | 
			
		||||
    "", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (0,1 <20><><EFBFBD>)"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Bitrate Calculation", // English
 | 
			
		||||
@@ -177,16 +177,16 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "", // Portugu<67>s
 | 
			
		||||
    "", // Fran<61>ais
 | 
			
		||||
    "", // Norsk
 | 
			
		||||
    "Bittinopeuden laskenta", // suomi
 | 
			
		||||
    "Siirtonopeuden laskenta", // suomi
 | 
			
		||||
    "", // Polski
 | 
			
		||||
    "", // Espa<70>ol
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar
 | 
			
		||||
    "", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Calculation Interval [0.1s]", // English
 | 
			
		||||
@@ -200,13 +200,13 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "Laskennan p<>ivitysv<73>li [0.1s]", // suomi
 | 
			
		||||
    "", // Polski
 | 
			
		||||
    "", // Espa<70>ol
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar
 | 
			
		||||
    "", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (0,1 <20><><EFBFBD>)"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Red Limit [%]", // English
 | 
			
		||||
@@ -220,13 +220,13 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "Punaisen taso [%]", // suomi
 | 
			
		||||
    "", // Polski
 | 
			
		||||
    "", // Espa<70>ol
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar
 | 
			
		||||
    "", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> (%)"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Green Limit [%]", // English
 | 
			
		||||
@@ -240,13 +240,13 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "Vihre<EFBFBD>n taso [%]", // suomi
 | 
			
		||||
    "", // Polski
 | 
			
		||||
    "", // Espa<70>ol
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar
 | 
			
		||||
    "", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> (%)"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Transponder Information", // English
 | 
			
		||||
@@ -260,13 +260,13 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "Transponderin tiedot", // suomi
 | 
			
		||||
    "", // Polski   
 | 
			
		||||
    "", // Espa<70>ol
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar
 | 
			
		||||
    "", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Satellite Card", // English
 | 
			
		||||
@@ -280,13 +280,13 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "Satelliittikortti", // suomi
 | 
			
		||||
    "", // Polski
 | 
			
		||||
    "", // Espa<70>ol
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar
 | 
			
		||||
    "", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Cable Card", // English
 | 
			
		||||
@@ -300,13 +300,13 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "Kaapelikortti", // suomi
 | 
			
		||||
    "", // Polski
 | 
			
		||||
    "", // Espa<70>ol
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar
 | 
			
		||||
    "", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Terrestial Card", // English
 | 
			
		||||
@@ -320,13 +320,13 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "Terrestiaalikortti", // suomi
 | 
			
		||||
    "", // Polski
 | 
			
		||||
    "", // Espa<70>ol
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar
 | 
			
		||||
    "", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Use Syslog Output", // English
 | 
			
		||||
@@ -340,15 +340,294 @@ const tI18nPhrase Phrases[] = {
 | 
			
		||||
    "Kirjaa systeemilokiin", // suomi
 | 
			
		||||
    "", // Polski
 | 
			
		||||
    "", // Espa<70>ol
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "", // Svenska
 | 
			
		||||
    "", // Romaneste
 | 
			
		||||
    "", // Magyar
 | 
			
		||||
    "", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    ""  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> syslog"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "LOCK", // English
 | 
			
		||||
    "LOCK", // Deutsch
 | 
			
		||||
    "LOCK", // Slovenski
 | 
			
		||||
    "LOCK", // Italiano
 | 
			
		||||
    "LOCK", // Nederlands
 | 
			
		||||
    "LOCK", // Portugu<67>s
 | 
			
		||||
    "LOCK", // Fran<61>ais
 | 
			
		||||
    "LOCK", // Norsk
 | 
			
		||||
    "LOCK", // suomi
 | 
			
		||||
    "LOCK", // Polski
 | 
			
		||||
    "LOCK", // Espa<70>ol
 | 
			
		||||
    "LOCK", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "LOCK", // Svenska
 | 
			
		||||
    "LOCK", // Romaneste
 | 
			
		||||
    "LOCK", // Magyar
 | 
			
		||||
    "LOCK", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    "<EFBFBD><EFBFBD>Ų<EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "SIGNAL", // English
 | 
			
		||||
    "SIGNAL", // Deutsch
 | 
			
		||||
    "SIGNAL", // Slovenski
 | 
			
		||||
    "SIGNAL", // Italiano
 | 
			
		||||
    "SIGNAL", // Nederlands
 | 
			
		||||
    "SIGNAL", // Portugu<67>s
 | 
			
		||||
    "SIGNAL", // Fran<61>ais
 | 
			
		||||
    "SIGNAL", // Norsk
 | 
			
		||||
    "SIGNAL", // suomi
 | 
			
		||||
    "SIGNAL", // Polski
 | 
			
		||||
    "SIGNAL", // Espa<70>ol
 | 
			
		||||
    "SIGNAL", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "SIGNAL", // Svenska
 | 
			
		||||
    "SIGNAL", // Romaneste
 | 
			
		||||
    "SIGNAL", // Magyar
 | 
			
		||||
    "SIGNAL", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "CARRIER", // English
 | 
			
		||||
    "CARRIER", // Deutsch
 | 
			
		||||
    "CARRIER", // Slovenski
 | 
			
		||||
    "CARRIER", // Italiano
 | 
			
		||||
    "CARRIER", // Nederlands
 | 
			
		||||
    "CARRIER", // Portugu<67>s
 | 
			
		||||
    "CARRIER", // Fran<61>ais
 | 
			
		||||
    "CARRIER", // Norsk
 | 
			
		||||
    "CARRIER", // suomi
 | 
			
		||||
    "CARRIER", // Polski
 | 
			
		||||
    "CARRIER", // Espa<70>ol
 | 
			
		||||
    "CARRIER", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "CARRIER", // Svenska
 | 
			
		||||
    "CARRIER", // Romaneste
 | 
			
		||||
    "CARRIER", // Magyar
 | 
			
		||||
    "CARRIER", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɰ<EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "VITERBI", // English
 | 
			
		||||
    "VITERBI", // Deutsch
 | 
			
		||||
    "VITERBI", // Slovenski
 | 
			
		||||
    "VITERBI", // Italiano
 | 
			
		||||
    "VITERBI", // Nederlands
 | 
			
		||||
    "VITERBI", // Portugu<67>s
 | 
			
		||||
    "VITERBI", // Fran<61>ais
 | 
			
		||||
    "VITERBI", // Norsk
 | 
			
		||||
    "VITERBI", // suomi
 | 
			
		||||
    "VITERBI", // Polski
 | 
			
		||||
    "VITERBI", // Espa<70>ol
 | 
			
		||||
    "VITERBI", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
    "VITERBI", // Svenska
 | 
			
		||||
    "VITERBI", // Romaneste
 | 
			
		||||
    "VITERBI", // Magyar
 | 
			
		||||
    "VITERBI", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    "<EFBFBD><EFBFBD>µ<EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "SYNC", // English
 | 
			
		||||
    "SYNC", // Deutsch
 | 
			
		||||
    "SYNC", // Slovenski
 | 
			
		||||
    "SYNC", // Italiano
 | 
			
		||||
    "SYNC", // Nederlands
 | 
			
		||||
    "SYNC", // Portugu<67>s
 | 
			
		||||
    "SYNC", // Fran<61>ais
 | 
			
		||||
    "SYNC", // Norsk
 | 
			
		||||
    "SYNC", // suomi
 | 
			
		||||
    "SYNC", // Polski
 | 
			
		||||
    "SYNC", // Espa<70>ol
 | 
			
		||||
    "SYNC", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "SYNC", // Svenska
 | 
			
		||||
    "SYNC", // Romaneste
 | 
			
		||||
    "SYNC", // Magyar
 | 
			
		||||
    "SYNC", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Audio", // English
 | 
			
		||||
    "Audio", // Deutsch
 | 
			
		||||
    "Audio", // Slovenski
 | 
			
		||||
    "Audio", // Italiano
 | 
			
		||||
    "Audio", // Nederlands
 | 
			
		||||
    "Audio", // Portugu<67>s
 | 
			
		||||
    "Audio", // Fran<61>ais
 | 
			
		||||
    "Audio", // Norsk
 | 
			
		||||
    "Audio", // suomi
 | 
			
		||||
    "Audio", // Polski
 | 
			
		||||
    "Audio", // Espa<70>ol
 | 
			
		||||
    "Audio", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "Audio", // Svenska
 | 
			
		||||
    "Audio", // Romaneste
 | 
			
		||||
    "Audio", // Magyar
 | 
			
		||||
    "Audio", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Video", // English
 | 
			
		||||
    "Video", // Deutsch
 | 
			
		||||
    "Video", // Slovenski
 | 
			
		||||
    "Video", // Italiano
 | 
			
		||||
    "Video", // Nederlands
 | 
			
		||||
    "Video", // Portugu<67>s
 | 
			
		||||
    "Video", // Fran<61>ais
 | 
			
		||||
    "Video", // Norsk
 | 
			
		||||
    "Video", // suomi
 | 
			
		||||
    "Video", // Polski
 | 
			
		||||
    "Video", // Espa<70>ol
 | 
			
		||||
    "Video", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "Video", // Svenska
 | 
			
		||||
    "Video", // Romaneste
 | 
			
		||||
    "Video", // Magyar
 | 
			
		||||
    "Video", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Auto", // English
 | 
			
		||||
    "Auto", // Deutsch
 | 
			
		||||
    "Auto", // Slovenski
 | 
			
		||||
    "Auto", // Italiano
 | 
			
		||||
    "Auto", // Nederlands
 | 
			
		||||
    "Auto", // Portugu<67>s
 | 
			
		||||
    "Auto", // Fran<61>ais
 | 
			
		||||
    "Auto", // Norsk
 | 
			
		||||
    "Auto", // suomi
 | 
			
		||||
    "Auto", // Polski
 | 
			
		||||
    "Auto", // Espa<70>ol
 | 
			
		||||
    "Auto", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "Auto", // Svenska
 | 
			
		||||
    "Auto", // Romaneste
 | 
			
		||||
    "Auto", // Magyar
 | 
			
		||||
    "Auto", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "None", // English
 | 
			
		||||
    "None", // Deutsch
 | 
			
		||||
    "None", // Slovenski
 | 
			
		||||
    "None", // Italiano
 | 
			
		||||
    "None", // Nederlands
 | 
			
		||||
    "None", // Portugu<67>s
 | 
			
		||||
    "None", // Fran<61>ais
 | 
			
		||||
    "None", // Norsk
 | 
			
		||||
    "None", // suomi
 | 
			
		||||
    "None", // Polski
 | 
			
		||||
    "None", // Espa<70>ol
 | 
			
		||||
    "None", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "None", // Svenska
 | 
			
		||||
    "None", // Romaneste
 | 
			
		||||
    "None", // Magyar
 | 
			
		||||
    "None", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Off", // English
 | 
			
		||||
    "Off", // Deutsch
 | 
			
		||||
    "Off", // Slovenski
 | 
			
		||||
    "Off", // Italiano
 | 
			
		||||
    "Off", // Nederlands
 | 
			
		||||
    "Off", // Portugu<67>s
 | 
			
		||||
    "Off", // Fran<61>ais
 | 
			
		||||
    "Off", // Norsk
 | 
			
		||||
    "Off", // suomi
 | 
			
		||||
    "Off", // Polski
 | 
			
		||||
    "Off", // Espa<70>ol
 | 
			
		||||
    "Off", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "Off", // Svenska
 | 
			
		||||
    "Off", // Romaneste
 | 
			
		||||
    "Off", // Magyar
 | 
			
		||||
    "Off", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "On", // English
 | 
			
		||||
    "On", // Deutsch
 | 
			
		||||
    "On", // Slovenski
 | 
			
		||||
    "On", // Italiano
 | 
			
		||||
    "On", // Nederlands
 | 
			
		||||
    "On", // Portugu<67>s
 | 
			
		||||
    "On", // Fran<61>ais
 | 
			
		||||
    "On", // Norsk
 | 
			
		||||
    "On", // suomi
 | 
			
		||||
    "On", // Polski
 | 
			
		||||
    "On", // Espa<70>ol
 | 
			
		||||
    "On", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "On", // Svenska
 | 
			
		||||
    "On", // Romaneste
 | 
			
		||||
    "On", // Magyar
 | 
			
		||||
    "On", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "MHz", // English
 | 
			
		||||
    "MHz", // Deutsch
 | 
			
		||||
    "MHz", // Slovenski
 | 
			
		||||
    "MHz", // Italiano
 | 
			
		||||
    "MHz", // Nederlands
 | 
			
		||||
    "MHz", // Portugu<67>s
 | 
			
		||||
    "MHz", // Fran<61>ais
 | 
			
		||||
    "MHz", // Norsk
 | 
			
		||||
    "MHz", // suomi
 | 
			
		||||
    "MHz", // Polski
 | 
			
		||||
    "MHz", // Espa<70>ol
 | 
			
		||||
    "MHz", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "MHz", // Svenska
 | 
			
		||||
    "MHz", // Romaneste
 | 
			
		||||
    "MHz", // Magyar
 | 
			
		||||
    "MHz", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "Mbit/s", // English
 | 
			
		||||
    "Mbit/s", // Deutsch
 | 
			
		||||
    "Mbit/s", // Slovenski
 | 
			
		||||
    "Mbit/s", // Italiano
 | 
			
		||||
    "Mbit/s", // Nederlands
 | 
			
		||||
    "Mbit/s", // Portugu<67>s
 | 
			
		||||
    "Mbit/s", // Fran<61>ais
 | 
			
		||||
    "Mbit/s", // Norsk
 | 
			
		||||
    "Mbit/s", // suomi
 | 
			
		||||
    "Mbit/s", // Polski
 | 
			
		||||
    "Mbit/s", // Espa<70>ol
 | 
			
		||||
    "Mbit/s", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "Mbit/s", // Svenska
 | 
			
		||||
    "Mbit/s", // Romaneste
 | 
			
		||||
    "Mbit/s", // Magyar
 | 
			
		||||
    "Mbit/s", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { "kbit/s", // English
 | 
			
		||||
    "kbit/s", // Deutsch
 | 
			
		||||
    "kbit/s", // Slovenski
 | 
			
		||||
    "kbit/s", // Italiano
 | 
			
		||||
    "kbit/s", // Nederlands
 | 
			
		||||
    "kbit/s", // Portugu<67>s
 | 
			
		||||
    "kbit/s", // Fran<61>ais
 | 
			
		||||
    "kbit/s", // Norsk
 | 
			
		||||
    "kbit/s", // suomi
 | 
			
		||||
    "kbit/s", // Polski
 | 
			
		||||
    "kbit/s", // Espa<70>ol
 | 
			
		||||
    "kbit/s", // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Greek)
 | 
			
		||||
    "kbit/s", // Svenska
 | 
			
		||||
    "kbit/s", // Romaneste
 | 
			
		||||
    "kbit/s", // Magyar
 | 
			
		||||
    "kbit/s", // Catal<61>
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
    "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F>"  // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Russian)
 | 
			
		||||
#endif
 | 
			
		||||
  },
 | 
			
		||||
  { NULL }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -9,6 +9,7 @@
 | 
			
		||||
#ifndef __FEMONI18N_H
 | 
			
		||||
#define __FEMONI18N_H
 | 
			
		||||
 | 
			
		||||
#include <vdr/config.h> // for VDRVERSNUM
 | 
			
		||||
#include <vdr/i18n.h>
 | 
			
		||||
 | 
			
		||||
extern const tI18nPhrase Phrases[];
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										80
									
								
								femonosd.c
									
									
									
									
									
								
							
							
						
						
									
										80
									
								
								femonosd.c
									
									
									
									
									
								
							@@ -45,7 +45,7 @@
 | 
			
		||||
 | 
			
		||||
cFemonOsd::cFemonOsd(void)
 | 
			
		||||
#if VDRVERSNUM >= 10300
 | 
			
		||||
:cOsdObject(true), cThread("femon plugin")
 | 
			
		||||
:cOsdObject(true), cThread("femon osd")
 | 
			
		||||
#else
 | 
			
		||||
:cOsdObject(true)
 | 
			
		||||
#endif
 | 
			
		||||
@@ -128,8 +128,8 @@ void cFemonOsd::DrawStatusWindow(void)
 | 
			
		||||
     m_Osd->Text(OSDSTATUSCOL2 * cOsd::CellWidth(), femonConfig.position ? lines * cOsd::LineHeight() : (OSDINFOHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight(), buf, clrWhite /*signal < femonConfig.redlimit ? clrRed : signal < femonConfig.greenlimit ? clrYellow : clrGreen*/, clrBackground, m_StatusWindow);
 | 
			
		||||
     snprintf(buf, sizeof(buf), "BER: %08x", m_BER);
 | 
			
		||||
     m_Osd->Text(OSDSTATUSCOL3 * cOsd::CellWidth(), femonConfig.position ? lines * cOsd::LineHeight() : (OSDINFOHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight(), buf, clrWhite, clrBackground, m_StatusWindow);
 | 
			
		||||
     if (m_Receiver) snprintf(buf, sizeof(buf), "Video: %.2f Mbit/s", m_Receiver->VideoBitrate());
 | 
			
		||||
     else            snprintf(buf, sizeof(buf), "Video: --- Mbit/s");
 | 
			
		||||
     if (m_Receiver) snprintf(buf, sizeof(buf), "%s: %.2f %s", tr("Video"), m_Receiver->VideoBitrate(), tr("Mbit/s"));
 | 
			
		||||
     else            snprintf(buf, sizeof(buf), "%s: --- %s", tr("Video"), tr("Mbit/s"));
 | 
			
		||||
     m_Osd->Text(OSDSTATUSCOL4 * cOsd::CellWidth(), femonConfig.position ? lines * cOsd::LineHeight() : (OSDINFOHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight(), buf, clrWhite, clrBackground, m_StatusWindow);
 | 
			
		||||
     lines++;
 | 
			
		||||
     snprintf(buf, sizeof(buf), "SNR: %04x", m_SNR);
 | 
			
		||||
@@ -138,15 +138,15 @@ void cFemonOsd::DrawStatusWindow(void)
 | 
			
		||||
     m_Osd->Text(OSDSTATUSCOL2 * cOsd::CellWidth(), femonConfig.position ? lines * cOsd::LineHeight() : (OSDINFOHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight(), buf, clrWhite /*snr < femonConfig.redlimit ? clrRed : snr < femonConfig.greenlimit ? clrYellow : clrGreen*/, clrBackground, m_StatusWindow);
 | 
			
		||||
     snprintf(buf, sizeof(buf), "UNC: %08x", m_UNC);
 | 
			
		||||
     m_Osd->Text(OSDSTATUSCOL3 * cOsd::CellWidth(), femonConfig.position ? lines * cOsd::LineHeight() : (OSDINFOHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight(), buf, clrWhite, clrBackground, m_StatusWindow);
 | 
			
		||||
     if (m_Receiver) snprintf(buf, sizeof(buf), "Audio: %.0f kbit/s", m_Receiver->AudioBitrate());
 | 
			
		||||
     else            snprintf(buf, sizeof(buf), "Audio: --- kbit/s");
 | 
			
		||||
     if (m_Receiver) snprintf(buf, sizeof(buf), "%s: %.0f %s", tr("Audio"), m_Receiver->AudioBitrate(), tr("kbit/s"));
 | 
			
		||||
     else            snprintf(buf, sizeof(buf), "%s: --- %s", tr("Audio"), tr("kbit/s"));
 | 
			
		||||
     m_Osd->Text(OSDSTATUSCOL4 * cOsd::CellWidth(), femonConfig.position ? lines * cOsd::LineHeight() : (OSDINFOHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight(), buf, clrWhite, clrBackground, m_StatusWindow);
 | 
			
		||||
     lines++;
 | 
			
		||||
     m_Osd->Text(OSDSTATUSLOCK * cOsd::CellWidth(), femonConfig.position ? lines * cOsd::LineHeight() : (OSDINFOHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight(), "LOCK",   (m_FrontendStatus & FE_HAS_LOCK)   ? clrYellow : clrBlack, clrBackground, m_StatusWindow);
 | 
			
		||||
     m_Osd->Text(OSDSTATUSSIGN * cOsd::CellWidth(), femonConfig.position ? lines * cOsd::LineHeight() : (OSDINFOHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight(), "SIGNAL", (m_FrontendStatus & FE_HAS_SIGNAL) ? clrYellow : clrBlack, clrBackground, m_StatusWindow);
 | 
			
		||||
     m_Osd->Text(OSDSTATUSCARR * cOsd::CellWidth(), femonConfig.position ? lines * cOsd::LineHeight() : (OSDINFOHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight(), "CARRIER",(m_FrontendStatus & FE_HAS_CARRIER)? clrYellow : clrBlack, clrBackground, m_StatusWindow);
 | 
			
		||||
     m_Osd->Text(OSDSTATUSVITE * cOsd::CellWidth(), femonConfig.position ? lines * cOsd::LineHeight() : (OSDINFOHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight(), "VITERBI",(m_FrontendStatus & FE_HAS_VITERBI)? clrYellow : clrBlack, clrBackground, m_StatusWindow);
 | 
			
		||||
     m_Osd->Text(OSDSTATUSSYNC * cOsd::CellWidth(), femonConfig.position ? lines * cOsd::LineHeight() : (OSDINFOHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight(), "SYNC",   (m_FrontendStatus & FE_HAS_SYNC)   ? clrYellow : clrBlack, clrBackground, m_StatusWindow);
 | 
			
		||||
     m_Osd->Text(OSDSTATUSLOCK * cOsd::CellWidth(), femonConfig.position ? lines * cOsd::LineHeight() : (OSDINFOHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight(), tr("LOCK"),   (m_FrontendStatus & FE_HAS_LOCK)   ? clrYellow : clrBlack, clrBackground, m_StatusWindow);
 | 
			
		||||
     m_Osd->Text(OSDSTATUSSIGN * cOsd::CellWidth(), femonConfig.position ? lines * cOsd::LineHeight() : (OSDINFOHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight(), tr("SIGNAL"), (m_FrontendStatus & FE_HAS_SIGNAL) ? clrYellow : clrBlack, clrBackground, m_StatusWindow);
 | 
			
		||||
     m_Osd->Text(OSDSTATUSCARR * cOsd::CellWidth(), femonConfig.position ? lines * cOsd::LineHeight() : (OSDINFOHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight(), tr("CARRIER"),(m_FrontendStatus & FE_HAS_CARRIER)? clrYellow : clrBlack, clrBackground, m_StatusWindow);
 | 
			
		||||
     m_Osd->Text(OSDSTATUSVITE * cOsd::CellWidth(), femonConfig.position ? lines * cOsd::LineHeight() : (OSDINFOHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight(), tr("VITERBI"),(m_FrontendStatus & FE_HAS_VITERBI)? clrYellow : clrBlack, clrBackground, m_StatusWindow);
 | 
			
		||||
     m_Osd->Text(OSDSTATUSSYNC * cOsd::CellWidth(), femonConfig.position ? lines * cOsd::LineHeight() : (OSDINFOHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight(), tr("SYNC"),   (m_FrontendStatus & FE_HAS_SYNC)   ? clrYellow : clrBlack, clrBackground, m_StatusWindow);
 | 
			
		||||
#if (VDRVERSNUM >= 10300) || defined(ELCHIAIOVERSION)
 | 
			
		||||
     m_Osd->SetFont(OldFont);
 | 
			
		||||
#endif
 | 
			
		||||
@@ -222,7 +222,7 @@ void cFemonOsd::DrawInfoWindow(void)
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL1 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), tr("Frequency"), clrWhite, clrBackground, m_InfoWindow);
 | 
			
		||||
               value = channel->Frequency();
 | 
			
		||||
               while (value > 20000) value /= 1000;
 | 
			
		||||
               snprintf(buf, sizeof(buf), "%d MHz", value);
 | 
			
		||||
               snprintf(buf, sizeof(buf), "%d %s", value, tr("MHz"));
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL2 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), buf, clrYellow, clrBackground, m_InfoWindow);
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL3 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), tr("Source"), clrWhite, clrBackground, m_InfoWindow);
 | 
			
		||||
               snprintf(buf, sizeof(buf), "%s", cSource::ToString(channel->Source()));
 | 
			
		||||
@@ -237,13 +237,13 @@ void cFemonOsd::DrawInfoWindow(void)
 | 
			
		||||
               lines++;
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL1 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), tr("Inversion"), clrWhite, clrBackground, m_InfoWindow);
 | 
			
		||||
               value = channel->Inversion();
 | 
			
		||||
               if      (value == INVERSION_OFF)   snprintf(buf, sizeof(buf), "Off");
 | 
			
		||||
               else if (value == INVERSION_ON)    snprintf(buf, sizeof(buf), "On");
 | 
			
		||||
               else            /*INVERSION_AUTO*/ snprintf(buf, sizeof(buf), "Auto");
 | 
			
		||||
               if      (value == INVERSION_OFF)   snprintf(buf, sizeof(buf), tr("Off"));
 | 
			
		||||
               else if (value == INVERSION_ON)    snprintf(buf, sizeof(buf), tr("On"));
 | 
			
		||||
               else            /*INVERSION_AUTO*/ snprintf(buf, sizeof(buf), tr("Auto"));
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL2 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), buf, clrYellow, clrBackground, m_InfoWindow);
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL3 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), tr("CoderateH"), clrWhite, clrBackground, m_InfoWindow);
 | 
			
		||||
               value = channel->CoderateH();
 | 
			
		||||
               if      (value == FEC_NONE)  snprintf(buf, sizeof(buf), "None");
 | 
			
		||||
               if      (value == FEC_NONE)  snprintf(buf, sizeof(buf), tr("None"));
 | 
			
		||||
               else if (value == FEC_1_2)   snprintf(buf, sizeof(buf), "1/2");
 | 
			
		||||
               else if (value == FEC_2_3)   snprintf(buf, sizeof(buf), "2/3");
 | 
			
		||||
               else if (value == FEC_3_4)   snprintf(buf, sizeof(buf), "3/4");
 | 
			
		||||
@@ -252,7 +252,7 @@ void cFemonOsd::DrawInfoWindow(void)
 | 
			
		||||
               else if (value == FEC_6_7)   snprintf(buf, sizeof(buf), "6/7");
 | 
			
		||||
               else if (value == FEC_7_8)   snprintf(buf, sizeof(buf), "7/8");
 | 
			
		||||
               else if (value == FEC_8_9)   snprintf(buf, sizeof(buf), "8/9");
 | 
			
		||||
               else            /*FEC_AUTO*/ snprintf(buf, sizeof(buf), "Auto");
 | 
			
		||||
               else            /*FEC_AUTO*/ snprintf(buf, sizeof(buf), tr("Auto"));
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL4 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), buf, clrYellow, clrBackground, m_InfoWindow);
 | 
			
		||||
               break;
 | 
			
		||||
 | 
			
		||||
@@ -263,7 +263,7 @@ void cFemonOsd::DrawInfoWindow(void)
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL1 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), tr("Frequency"), clrWhite, clrBackground, m_InfoWindow);
 | 
			
		||||
               value = channel->Frequency();
 | 
			
		||||
               while (value > 20000) value /= 1000;
 | 
			
		||||
               snprintf(buf, sizeof(buf), "%d MHz", value);
 | 
			
		||||
               snprintf(buf, sizeof(buf), "%d %s", value, tr("MHz"));
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL2 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), buf, clrYellow, clrBackground, m_InfoWindow);
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL3 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), tr("Source"), clrWhite, clrBackground, m_InfoWindow);
 | 
			
		||||
               snprintf(buf, sizeof(buf), "%s", cSource::ToString(channel->Source()));
 | 
			
		||||
@@ -280,18 +280,18 @@ void cFemonOsd::DrawInfoWindow(void)
 | 
			
		||||
               else if (value == QAM_64)    snprintf(buf, sizeof(buf), "QAM 64");
 | 
			
		||||
               else if (value == QAM_128)   snprintf(buf, sizeof(buf), "QAM 128");
 | 
			
		||||
               else if (value == QAM_256)   snprintf(buf, sizeof(buf), "QAM 256");
 | 
			
		||||
               else            /*QAM_AUTO*/ snprintf(buf, sizeof(buf), "QAM Auto");
 | 
			
		||||
               else            /*QAM_AUTO*/ snprintf(buf, sizeof(buf), "QAM %s", tr("Auto"));
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL4 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), buf, clrYellow, clrBackground, m_InfoWindow);
 | 
			
		||||
               lines++;
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL1 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), tr("Inversion"), clrWhite, clrBackground, m_InfoWindow);
 | 
			
		||||
               value = channel->Inversion();
 | 
			
		||||
               if      (value == INVERSION_OFF)   snprintf(buf, sizeof(buf), "Off");
 | 
			
		||||
               else if (value == INVERSION_ON)    snprintf(buf, sizeof(buf), "On");
 | 
			
		||||
               else            /*INVERSION_AUTO*/ snprintf(buf, sizeof(buf), "Auto");
 | 
			
		||||
               if      (value == INVERSION_OFF)   snprintf(buf, sizeof(buf), tr("Off"));
 | 
			
		||||
               else if (value == INVERSION_ON)    snprintf(buf, sizeof(buf), tr("On"));
 | 
			
		||||
               else            /*INVERSION_AUTO*/ snprintf(buf, sizeof(buf), tr("Auto"));
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL2 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), buf, clrYellow, clrBackground, m_InfoWindow);
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL3 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), tr("CoderateH"), clrWhite, clrBackground, m_InfoWindow);
 | 
			
		||||
               value = channel->CoderateH();
 | 
			
		||||
               if      (value == FEC_NONE)  snprintf(buf, sizeof(buf), "None");
 | 
			
		||||
               if      (value == FEC_NONE)  snprintf(buf, sizeof(buf), tr("None"));
 | 
			
		||||
               else if (value == FEC_1_2)   snprintf(buf, sizeof(buf), "1/2");
 | 
			
		||||
               else if (value == FEC_2_3)   snprintf(buf, sizeof(buf), "2/3");
 | 
			
		||||
               else if (value == FEC_3_4)   snprintf(buf, sizeof(buf), "3/4");
 | 
			
		||||
@@ -300,7 +300,7 @@ void cFemonOsd::DrawInfoWindow(void)
 | 
			
		||||
               else if (value == FEC_6_7)   snprintf(buf, sizeof(buf), "6/7");
 | 
			
		||||
               else if (value == FEC_7_8)   snprintf(buf, sizeof(buf), "7/8");
 | 
			
		||||
               else if (value == FEC_8_9)   snprintf(buf, sizeof(buf), "8/9");
 | 
			
		||||
               else            /*FEC_AUTO*/ snprintf(buf, sizeof(buf), "Auto");
 | 
			
		||||
               else            /*FEC_AUTO*/ snprintf(buf, sizeof(buf), tr("Auto"));
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL4 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), buf, clrYellow, clrBackground, m_InfoWindow);
 | 
			
		||||
               break;
 | 
			
		||||
 | 
			
		||||
@@ -311,21 +311,21 @@ void cFemonOsd::DrawInfoWindow(void)
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL1 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), tr("Frequency"), clrWhite, clrBackground, m_InfoWindow);
 | 
			
		||||
               value = channel->Frequency();
 | 
			
		||||
               while (value > 20000) value /= 1000;
 | 
			
		||||
               snprintf(buf, sizeof(buf), "%d MHz", value);
 | 
			
		||||
               snprintf(buf, sizeof(buf), "%d %s", value, tr("MHz"));
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL2 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), buf, clrYellow, clrBackground, m_InfoWindow);
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL3 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), tr("Transmission"), clrWhite, clrBackground, m_InfoWindow);
 | 
			
		||||
               value = channel->Transmission();
 | 
			
		||||
               if      (value == TRANSMISSION_MODE_2K)    snprintf(buf, sizeof(buf), "2K");
 | 
			
		||||
               else if (value == TRANSMISSION_MODE_8K)    snprintf(buf, sizeof(buf), "8K");
 | 
			
		||||
               else            /*TRANSMISSION_MODE_AUTO*/ snprintf(buf, sizeof(buf), "Auto");
 | 
			
		||||
               else            /*TRANSMISSION_MODE_AUTO*/ snprintf(buf, sizeof(buf), tr("Auto"));
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL4 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), buf, clrYellow, clrBackground, m_InfoWindow);
 | 
			
		||||
               lines++;
 | 
			
		||||
               m_Osd->Text( OSDINFOLCOL1 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), tr("Bandwidth"), clrWhite, clrBackground, m_InfoWindow);
 | 
			
		||||
               value = channel->Bandwidth();
 | 
			
		||||
               if      (value == BANDWIDTH_8_MHZ) snprintf(buf, sizeof(buf), "8 MHz");
 | 
			
		||||
               else if (value == BANDWIDTH_7_MHZ) snprintf(buf, sizeof(buf), "7 MHz");
 | 
			
		||||
               else if (value == BANDWIDTH_6_MHZ) snprintf(buf, sizeof(buf), "6 MHz");
 | 
			
		||||
               else            /*BANDWIDTH_AUTO*/ snprintf(buf, sizeof(buf), "Auto");
 | 
			
		||||
               if      (value == BANDWIDTH_8_MHZ) snprintf(buf, sizeof(buf), "8 %s", tr("MHz"));
 | 
			
		||||
               else if (value == BANDWIDTH_7_MHZ) snprintf(buf, sizeof(buf), "7 %s", tr("MHz"));
 | 
			
		||||
               else if (value == BANDWIDTH_6_MHZ) snprintf(buf, sizeof(buf), "6 %s", tr("MHz"));
 | 
			
		||||
               else            /*BANDWIDTH_AUTO*/ snprintf(buf, sizeof(buf), tr("Auto"));
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL2 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), buf, clrYellow, clrBackground, m_InfoWindow);
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL3 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), tr("Modulation"), clrWhite, clrBackground, m_InfoWindow);
 | 
			
		||||
               value = channel->Modulation();
 | 
			
		||||
@@ -335,18 +335,18 @@ void cFemonOsd::DrawInfoWindow(void)
 | 
			
		||||
               else if (value == QAM_64)    snprintf(buf, sizeof(buf), "QAM 64");
 | 
			
		||||
               else if (value == QAM_128)   snprintf(buf, sizeof(buf), "QAM 128");
 | 
			
		||||
               else if (value == QAM_256)   snprintf(buf, sizeof(buf), "QAM 256");
 | 
			
		||||
               else            /*QAM_AUTO*/ snprintf(buf, sizeof(buf), "QAM Auto");
 | 
			
		||||
               else            /*QAM_AUTO*/ snprintf(buf, sizeof(buf), "QAM %s", tr("Auto"));
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL4 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), buf, clrYellow, clrBackground, m_InfoWindow);
 | 
			
		||||
               lines++;
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL1 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), tr("Inversion"), clrWhite, clrBackground, m_InfoWindow);
 | 
			
		||||
               value = channel->Inversion();
 | 
			
		||||
               if      (value == INVERSION_OFF)   snprintf(buf, sizeof(buf), "Off");
 | 
			
		||||
               else if (value == INVERSION_ON)    snprintf(buf, sizeof(buf), "On");
 | 
			
		||||
               else            /*INVERSION_AUTO*/ snprintf(buf, sizeof(buf), "Auto");
 | 
			
		||||
               if      (value == INVERSION_OFF)   snprintf(buf, sizeof(buf), tr("Off"));
 | 
			
		||||
               else if (value == INVERSION_ON)    snprintf(buf, sizeof(buf), tr("On"));
 | 
			
		||||
               else            /*INVERSION_AUTO*/ snprintf(buf, sizeof(buf), tr("Auto"));
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL2 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), buf, clrYellow, clrBackground, m_InfoWindow);
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL3 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), tr("CoderateH"), clrWhite, clrBackground, m_InfoWindow);
 | 
			
		||||
               value = channel->CoderateH();
 | 
			
		||||
               if      (value == FEC_NONE)  snprintf(buf, sizeof(buf), "None");
 | 
			
		||||
               if      (value == FEC_NONE)  snprintf(buf, sizeof(buf), tr("None"));
 | 
			
		||||
               else if (value == FEC_1_2)   snprintf(buf, sizeof(buf), "1/2");
 | 
			
		||||
               else if (value == FEC_2_3)   snprintf(buf, sizeof(buf), "2/3");
 | 
			
		||||
               else if (value == FEC_3_4)   snprintf(buf, sizeof(buf), "3/4");
 | 
			
		||||
@@ -355,9 +355,9 @@ void cFemonOsd::DrawInfoWindow(void)
 | 
			
		||||
               else if (value == FEC_6_7)   snprintf(buf, sizeof(buf), "6/7");
 | 
			
		||||
               else if (value == FEC_7_8)   snprintf(buf, sizeof(buf), "7/8");
 | 
			
		||||
               else if (value == FEC_8_9)   snprintf(buf, sizeof(buf), "8/9");
 | 
			
		||||
               else            /*FEC_AUTO*/ snprintf(buf, sizeof(buf), "Auto");
 | 
			
		||||
               else            /*FEC_AUTO*/ snprintf(buf, sizeof(buf), tr("Auto"));
 | 
			
		||||
               value = channel->CoderateL();
 | 
			
		||||
               if      (value == FEC_NONE)  snprintf(buf2, sizeof(buf2), " - None");
 | 
			
		||||
               if      (value == FEC_NONE)  snprintf(buf2, sizeof(buf2), " - %s", tr("None"));
 | 
			
		||||
               else if (value == FEC_1_2)   snprintf(buf2, sizeof(buf2), " - 1/2");
 | 
			
		||||
               else if (value == FEC_2_3)   snprintf(buf2, sizeof(buf2), " - 2/3");
 | 
			
		||||
               else if (value == FEC_3_4)   snprintf(buf2, sizeof(buf2), " - 3/4");
 | 
			
		||||
@@ -366,17 +366,17 @@ void cFemonOsd::DrawInfoWindow(void)
 | 
			
		||||
               else if (value == FEC_6_7)   snprintf(buf2, sizeof(buf2), " - 6/7");
 | 
			
		||||
               else if (value == FEC_7_8)   snprintf(buf2, sizeof(buf2), " - 7/8");
 | 
			
		||||
               else if (value == FEC_8_9)   snprintf(buf2, sizeof(buf2), " - 8/9");
 | 
			
		||||
               else            /*FEC_AUTO*/ snprintf(buf2, sizeof(buf2), " - Auto");
 | 
			
		||||
               else            /*FEC_AUTO*/ snprintf(buf2, sizeof(buf2), " - %s", tr("Auto"));
 | 
			
		||||
               strncat(buf, buf2, sizeof(buf));
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL4 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), buf, clrYellow, clrBackground, m_InfoWindow);
 | 
			
		||||
               lines++;
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL1 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), tr("Hierarchy"), clrWhite, clrBackground, m_InfoWindow);
 | 
			
		||||
               value = channel->Hierarchy();
 | 
			
		||||
               if      (value == HIERARCHY_NONE)  snprintf(buf, sizeof(buf), "None");
 | 
			
		||||
               if      (value == HIERARCHY_NONE)  snprintf(buf, sizeof(buf), tr("None"));
 | 
			
		||||
               else if (value == HIERARCHY_1)     snprintf(buf, sizeof(buf), "1");
 | 
			
		||||
               else if (value == HIERARCHY_2)     snprintf(buf, sizeof(buf), "2");
 | 
			
		||||
               else if (value == HIERARCHY_4)     snprintf(buf, sizeof(buf), "4");
 | 
			
		||||
               else            /*HIERARCHY_AUTO*/ snprintf(buf, sizeof(buf), "Auto");
 | 
			
		||||
               else            /*HIERARCHY_AUTO*/ snprintf(buf, sizeof(buf), tr("Auto"));
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL2 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), buf, clrYellow, clrBackground, m_InfoWindow);
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL3 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), tr("Guard"), clrWhite, clrBackground, m_InfoWindow);
 | 
			
		||||
               value = channel->Guard();
 | 
			
		||||
@@ -384,7 +384,7 @@ void cFemonOsd::DrawInfoWindow(void)
 | 
			
		||||
               else if (value == GUARD_INTERVAL_1_16)  snprintf(buf, sizeof(buf), "1/16");
 | 
			
		||||
               else if (value == GUARD_INTERVAL_1_8)   snprintf(buf, sizeof(buf), "1/8");
 | 
			
		||||
               else if (value == GUARD_INTERVAL_1_4)   snprintf(buf, sizeof(buf), "1/4");
 | 
			
		||||
               else            /*GUARD_INTERVAL_AUTO*/ snprintf(buf, sizeof(buf), "Auto");
 | 
			
		||||
               else            /*GUARD_INTERVAL_AUTO*/ snprintf(buf, sizeof(buf), tr("Auto"));
 | 
			
		||||
               m_Osd->Text(OSDINFOLCOL4 * cOsd::CellWidth(), femonConfig.position ? (OSDSTATUSHEIGHT + OSDGAPHEIGHT + lines) * cOsd::LineHeight() : lines * cOsd::LineHeight(), buf, clrYellow, clrBackground, m_InfoWindow);
 | 
			
		||||
               break;
 | 
			
		||||
          }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user