diff --git a/HISTORY b/HISTORY index e4203db..3385173 100644 --- a/HISTORY +++ b/HISTORY @@ -106,3 +106,8 @@ VDR Plugin 'femon' Revision History - Yet Another Minor Release. - Integrated the CA system names patch: "Setup / Show CA System". + +2004-11-28: Version 0.1.7 + +- Updated for vdr-1.3.17. +- Fixed receiver related crash (Thanks to Marco Schluessler). diff --git a/Makefile b/Makefile index 7bc6397..e94a0b8 100644 --- a/Makefile +++ b/Makefile @@ -16,7 +16,7 @@ VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).h | awk '{ pri ### The C++ compiler and options: CXX ?= g++ -CXXFLAGS ?= -O2 -Wall -Woverloaded-virtual +CXXFLAGS ?= -g -O2 -Wall -Woverloaded-virtual -fPIC ### The directory environment: diff --git a/femon.c b/femon.c index 4f8b4f2..f0dbe25 100644 --- a/femon.c +++ b/femon.c @@ -12,7 +12,7 @@ #include "femonosd.h" #include "femon.h" -#if VDRVERSNUM && VDRVERSNUM < 10307 +#if VDRVERSNUM && VDRVERSNUM < 10317 #error "You don't exist! Go away!" #endif diff --git a/femon.h b/femon.h index 48f451e..cabf9aa 100644 --- a/femon.h +++ b/femon.h @@ -11,7 +11,7 @@ #include -static const char *VERSION = "0.1.6"; +static const char *VERSION = "0.1.7"; static const char *DESCRIPTION = "DVB Signal Information Monitor (OSD)"; static const char *MAINMENUENTRY = "Signal Information"; diff --git a/femoni18n.c b/femoni18n.c index 6e9b597..50ab82f 100644 --- a/femoni18n.c +++ b/femoni18n.c @@ -27,6 +27,8 @@ const tI18nPhrase Phrases[] = { "", // Català "¼ÞÝØâÞà ÚÐçÕáâÒÐ áØÓÝÐÛÐ", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Signal Information", // English "Signalinformationen", // Deutsch @@ -46,6 +48,8 @@ const tI18nPhrase Phrases[] = { "", // Català "ÁØÓÝÐÛ", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Position", // English "Position", // Deutsch @@ -65,6 +69,8 @@ const tI18nPhrase Phrases[] = { "", // Català "ÀÐ×ÜÕéÕÝØÕ ÞÚÝÐ", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Default Display Mode", // English "Standard Anzeigemodus", // Deutsch @@ -84,6 +90,8 @@ const tI18nPhrase Phrases[] = { "", // Català "ÀÕÖØÜ ßÞ ãÜÞÛçÐÝØî", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "basic", // English "Standard", // Deutsch @@ -103,6 +111,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "transponder", // English "Transponder", // Deutsch @@ -122,6 +132,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "stream", // English "Stream", // Deutsch @@ -141,6 +153,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Hide Mainmenu Entry", // English "Hauptmenüeintrag verstecken", // Deutsch @@ -160,6 +174,8 @@ const tI18nPhrase Phrases[] = { "", // Català "ÁÚàëâì ÚÞÜÐÝÔã Ò ÓÛÐÒÝÞÜ ÜÕÝî", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "OSD Update Interval [0.1s]", // English "OSD Updateintervall [0.1s]", // Deutsch @@ -179,6 +195,8 @@ const tI18nPhrase Phrases[] = { "", // Català "ÇÐáâÞâÐ ÞÑÝÞÒÛÕÝØï (0,1 áÕÚ)", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Analyze Stream", // English "Stream analysieren", // Deutsch @@ -198,6 +216,8 @@ const tI18nPhrase Phrases[] = { "", // Català "ÀÐáçñâ áÚÞàÞáâØ ßÞâÞÚÐ ÔÐÝÝëå", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Calculation Interval [0.1s]", // English "Berechnungsintervall [0.1s]", // Deutsch @@ -217,6 +237,8 @@ const tI18nPhrase Phrases[] = { "", // Català "ÇÐáâÞâÐ ßÕàÕáçñâÐ (0,1 áÕÚ)", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Red Limit [%]", // English "Grenze Rot [%]", // Deutsch @@ -236,6 +258,8 @@ const tI18nPhrase Phrases[] = { "", // Català "ºàÐáÝÐï ×ÞÝÐ áÛÐÑÞÓÞ áØÓÝÐÛÐ ÔÞ (%)", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Green Limit [%]", // English "Grenze Grün [%]", // Deutsch @@ -255,6 +279,8 @@ const tI18nPhrase Phrases[] = { "", // Català "·ÕÛñÝÐï ×ÞÝÐ áØÛìÝÞÓÞ áØÓÝÐÛÐ Þâ (%)", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Transponder Information", // English "Transponderinformation", // Deutsch @@ -274,6 +300,8 @@ const tI18nPhrase Phrases[] = { "", // Català "ÁÒÕÔÕÝØï Þ ÚÐÝÐÛÕ", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Satellite Card", // English "Satellitenkarte", // Deutsch @@ -293,6 +321,8 @@ const tI18nPhrase Phrases[] = { "", // Català "¿ÛÐâÐ áßãâÝØÚÞÒÞÓÞ ßàØñÜÐ", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Cable Card", // English "Kabelkarte", // Deutsch @@ -312,6 +342,8 @@ const tI18nPhrase Phrases[] = { "", // Català "¿ÛÐâÐ ÚÐÑÕÛìÝÞÓÞ ßàØñÜÐ", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Terrestial Card", // English "Terrestrische Karte", // Deutsch @@ -331,6 +363,8 @@ const tI18nPhrase Phrases[] = { "", // Català "¿ÛÐâÐ íäØàÝÞÓÞ ßàØñÜÐ", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Use Syslog Output", // English "Benutze syslog Ausgabe", // Deutsch @@ -350,6 +384,8 @@ const tI18nPhrase Phrases[] = { "", // Català "¸áßÞÛì×ÞÒÐâì áÛãÖÑã syslog", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "LOCK", // English "LOCK", // Deutsch @@ -369,6 +405,8 @@ const tI18nPhrase Phrases[] = { "LOCK", // Català "·°Å²°Â", // ÀãááÚØÙ (Russian) "LOCK", // Hrvatski (Croatian) + "LOCK", // Eesti + "LOCK", // Dansk }, { "SIGNAL", // English "SIGNAL", // Deutsch @@ -388,6 +426,8 @@ const tI18nPhrase Phrases[] = { "SIGNAL", // Català "Á¸³½°»", // ÀãááÚØÙ (Russian) "SIGNAL", // Hrvatski (Croatian) + "SIGNAL", // Eesti + "SIGNAL", // Dansk }, { "CARRIER", // English "CARRIER", // Deutsch @@ -407,6 +447,8 @@ const tI18nPhrase Phrases[] = { "CARRIER", // Català "½µÁÃÉ°Ï", // ÀãááÚØÙ (Russian) "CARRIER", // Hrvatski (Croatian) + "CARRIER", // Eesti + "CARRIER", // Dansk }, { "VITERBI", // English "VITERBI", // Deutsch @@ -426,6 +468,8 @@ const tI18nPhrase Phrases[] = { "VITERBI", // Català "²¸ÂµÀ±¸", // ÀãááÚØÙ (Russian) "VITERBI", // Hrvatski (Croatian) + "VITERBI", // Eesti + "VITERBI", // Dansk }, { "SYNC", // English "SYNC", // Deutsch @@ -445,6 +489,8 @@ const tI18nPhrase Phrases[] = { "SYNC", // Català "Á¸½ÅÀ", // ÀãááÚØÙ (Russian) "SYNC", // Hrvatski (Croatian) + "SYNC", // Eesti + "SYNC", // Dansk }, { "Audio", // English "Audio", // Deutsch @@ -464,6 +510,8 @@ const tI18nPhrase Phrases[] = { "Audio", // Català "°ãÔØÞ", // ÀãááÚØÙ (Russian) "Audio", // Hrvatski (Croatian) + "Audio", // Eesti + "Audio", // Dansk }, { "Video", // English "Video", // Deutsch @@ -483,6 +531,8 @@ const tI18nPhrase Phrases[] = { "Video", // Català "²ØÔÕÞ", // ÀãááÚØÙ (Russian) "Video", // Hrvatski (Croatian) + "Video", // Eesti + "Video", // Dansk }, { "Auto", // English "Auto", // Deutsch @@ -502,6 +552,8 @@ const tI18nPhrase Phrases[] = { "Auto", // Català "ÐÒâÞ", // ÀãááÚØÙ (Russian) "Auto", // Hrvatski (Croatian) + "Auto", // Eesti + "Auto", // Dansk }, { "None", // English "None", // Deutsch @@ -521,6 +573,8 @@ const tI18nPhrase Phrases[] = { "None", // Català "ÝÕâ", // ÀãááÚØÙ (Russian) "None", // Hrvatski (Croatian) + "None", // Eesti + "None", // Dansk }, { "Off", // English "Off", // Deutsch @@ -540,6 +594,8 @@ const tI18nPhrase Phrases[] = { "Off", // Català "ÒëÚÛ", // ÀãááÚØÙ (Russian) "Off", // Hrvatski (Croatian) + "Off", // Eesti + "Off", // Dansk }, { "On", // English "On", // Deutsch @@ -559,6 +615,8 @@ const tI18nPhrase Phrases[] = { "On", // Català "ÒÚÛ", // ÀãááÚØÙ (Russian) "On", // Hrvatski (Croatian) + "On", // Eesti + "On", // Dansk }, { "MHz", // English "MHz", // Deutsch @@ -578,6 +636,8 @@ const tI18nPhrase Phrases[] = { "MHz", // Català "¼³æ", // ÀãááÚØÙ (Russian) "MHz", // Hrvatski (Croatian) + "MHz", // Eesti + "MHz", // Dansk }, { "Mbit/s", // English "Mbit/s", // Deutsch @@ -597,6 +657,8 @@ const tI18nPhrase Phrases[] = { "Mbit/s", // Català "¼ÑØâ/á", // ÀãááÚØÙ (Russian) "Mbit/s", // Hrvatski (Croatian) + "Mbit/s", // Eesti + "Mbit/s", // Dansk }, { "kbit/s", // English "kbit/s", // Deutsch @@ -616,6 +678,8 @@ const tI18nPhrase Phrases[] = { "kbit/s", // Català "ÚÑØâ/á", // ÀãááÚØÙ (Russian) "kbit/s", // Hrvatski (Croatian) + "kbit/s", // Eesti + "kbit/s", // Dansk }, { "Stream Information", // English "Streaminformation", // Deutsch @@ -635,6 +699,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "MPEG Layer", // English "MPEG Layer", // Deutsch @@ -654,6 +720,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Video Stream", // English "Video Stream", // Deutsch @@ -673,6 +741,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Bitrate", // English "Bitrate", // Deutsch @@ -692,6 +762,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Frame Rate", // English "Bildrate", // Deutsch @@ -711,6 +783,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Hz", // English "Hz", // Deutsch @@ -730,6 +804,8 @@ const tI18nPhrase Phrases[] = { "Hz", // Català "³æ", // ÀãááÚØÙ (Russian) "Hz", // Hrvatski (Croatian) + "Hz", // Eesti + "Hz", // Dansk }, { "Aspect Ratio", // English "Seitenverhältnis", // Deutsch @@ -749,6 +825,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "reserved", // English "belegt", // Deutsch @@ -768,6 +846,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "free", // English "frei", // Deutsch @@ -787,6 +867,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Video Format", // English "Bildformat", // Deutsch @@ -806,6 +888,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "PAL", // English "PAL", // Deutsch @@ -825,6 +909,8 @@ const tI18nPhrase Phrases[] = { "PAL", // Català "PAL", // ÀãááÚØÙ (Russian) "PAL", // Hrvatski (Croatian) + "PAL", // Eesti + "PAL", // Dansk }, { "NTSC", // English "NTSC", // Deutsch @@ -844,6 +930,8 @@ const tI18nPhrase Phrases[] = { "NTSC", // Català "NTSC", // ÀãááÚØÙ (Russian) "NTSC", // Hrvatski (Croatian) + "NTSC", // Eesti + "NTSC", // Dansk }, { "unknown", // English "unbekannt", // Deutsch @@ -863,6 +951,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Resolution", // English "Auflösung", // Deutsch @@ -882,6 +972,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Audio Stream", // English "Audio Stream", // Deutsch @@ -901,6 +993,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Sampling Frequency", // English "Abtastrate", // Deutsch @@ -920,6 +1014,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "kHz", // English "kHz", // Deutsch @@ -939,6 +1035,8 @@ const tI18nPhrase Phrases[] = { "kHz", // Català "Ú³æ", // ÀãááÚØÙ (Russian) "kHz", // Hrvatski (Croatian) + "kHz", // Eesti + "kHz", // Dansk }, { "Nid", // English "Nid", // Deutsch @@ -958,6 +1056,8 @@ const tI18nPhrase Phrases[] = { "Nid", // Català "Nid", // ÀãááÚØÙ (Russian) "Nid", // Hrvatski (Croatian) + "Nid", // Eesti + "Nid", // Dansk }, { "Tid", // English "Tid", // Deutsch @@ -977,6 +1077,8 @@ const tI18nPhrase Phrases[] = { "Tid", // Català "Tid", // ÀãááÚØÙ (Russian) "Tid", // Hrvatski (Croatian) + "Tid", // Eesti + "Tid", // Dansk }, { "Rid", // English "Rid", // Deutsch @@ -996,6 +1098,8 @@ const tI18nPhrase Phrases[] = { "Rid", // Català "Rid", // ÀãááÚØÙ (Russian) "Rid", // Hrvatski (Croatian) + "Rid", // Eesti + "Rid", // Dansk }, { "dB", // English "dB", // Deutsch @@ -1015,6 +1119,8 @@ const tI18nPhrase Phrases[] = { "dB", // Català "dB", // ÀãááÚØÙ (Russian) "dB", // Hrvatski (Croatian) + "dB", // Eesti + "dB", // Dansk }, { "not indicated", // English "", // Deutsch @@ -1034,6 +1140,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "AC-3", // English "AC-3", // Deutsch @@ -1053,6 +1161,8 @@ const tI18nPhrase Phrases[] = { "AC-3", // Català "AC-3", // ÀãááÚØÙ (Russian) "AC-3", // Hrvatski (Croatian) + "AC-3", // Eesti + "AC-3", // Dansk }, { "AC-3 Stream", // English "AC-3 Stream", // Deutsch @@ -1072,6 +1182,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Frame Size", // English "Frame Größe", // Deutsch @@ -1091,6 +1203,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Bit Stream Mode", // English "Bitstream Modus", // Deutsch @@ -1110,6 +1224,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Audio Coding Mode", // English "Audio Coding Modus", // Deutsch @@ -1129,6 +1245,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Center Mix Level", // English "Center Mix Pegel", // Deutsch @@ -1148,6 +1266,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Surround Mix Level", // English "Surround Mix Pegel", // Deutsch @@ -1167,6 +1287,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Dolby Surround Mode", // English "Dolby Surround Modus", // Deutsch @@ -1186,6 +1308,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Low Frequency Effects", // English "Tieftöner Effekte", // Deutsch @@ -1205,6 +1329,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Dialogue Normalization", // English "Dialog Normalisierung", // Deutsch @@ -1224,6 +1350,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Complete Main (CM)", // English "Complete Main (CM)", // Deutsch @@ -1243,6 +1371,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Music and Effects (ME)", // English "Musik und Effekte (ME)", // Deutsch @@ -1262,6 +1392,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Visually Impaired (VI)", // English "Sehbehindert (VI)", // Deutsch @@ -1281,6 +1413,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Hearing Impaired (HI)", // English "Hörbehindert (HI)", // Deutsch @@ -1300,6 +1434,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Dialogue (D)", // English "Dialog (D)", // Deutsch @@ -1319,6 +1455,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Commentary (C)", // English "Kommentar (C)", // Deutsch @@ -1338,6 +1476,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Emergency (E)", // English "Notfall (E)", // Deutsch @@ -1357,6 +1497,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Voice Over (VO)", // English "überlagerte Stimme (VO)", // Deutsch @@ -1376,6 +1518,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Karaoke", // English "Karaoke", // Deutsch @@ -1395,6 +1539,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Ch1", // English "Channel 1" "Kan1", // Deutsch @@ -1414,6 +1560,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Ch2", // English "Channel 2" "Kan2", // Deutsch @@ -1433,6 +1581,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "C", // English "Center" "C", // Deutsch @@ -1452,6 +1602,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "L", // English "Left" "L", // Deutsch @@ -1471,6 +1623,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "R", // English "Right" "R", // Deutsch @@ -1490,6 +1644,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "S", // English "Surround" "S", // Deutsch @@ -1509,6 +1665,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "SL", // English "Surround Left" "SL", // Deutsch @@ -1528,6 +1686,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "SR", // English "Surround Right" "SR", // Deutsch @@ -1547,6 +1707,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Show CA System", // English "CA System anzeigen", // Deutsch @@ -1566,6 +1728,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Fixed", // English "Fest", // Deutsch @@ -1585,6 +1749,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Free to Air", // English "Free to Air", // Deutsch @@ -1604,6 +1770,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "SECA/Mediaguard", // English "SECA/Mediaguard", // Deutsch @@ -1623,6 +1791,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Viaccess", // English "Viaccess", // Deutsch @@ -1642,6 +1812,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Irdeto", // English "Irdeto", // Deutsch @@ -1661,6 +1833,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "NDS/Videoguard", // English "NDS/Videoguard", // Deutsch @@ -1680,6 +1854,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "Conax", // English "Conax", // Deutsch @@ -1699,6 +1875,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "CryptoWorks", // English "CryptoWorks", // Deutsch @@ -1718,6 +1896,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "PowerVu", // English "PowerVu", // Deutsch @@ -1737,6 +1917,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "BetaCrypt", // English "BetaCrypt", // Deutsch @@ -1756,6 +1938,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "NagraVision", // English "NagraVision", // Deutsch @@ -1775,6 +1959,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { "SkyCrypt", // English "SkyCrypt", // Deutsch @@ -1794,6 +1980,8 @@ const tI18nPhrase Phrases[] = { "", // Català "", // ÀãááÚØÙ (Russian) "", // Hrvatski (Croatian) + "", // Eesti + "", // Dansk }, { NULL } }; diff --git a/femonosd.c b/femonosd.c index a0b0d24..a57b228 100644 --- a/femonosd.c +++ b/femonosd.c @@ -120,7 +120,7 @@ void cFemonOsd::DrawStatusWindow(void) if (m_Osd) { m_Osd->DrawRectangle(0, OSDSTATUSWIN_Y(0), OSDWIDTH, OSDSTATUSWIN_Y(OSDSTATUSHEIGHT), clrBackground); - snprintf(buf, sizeof(buf), "%d%s %s", m_Number ? m_Number : channel->Number(), m_Number ? "-" : "", channel->Name()); + snprintf(buf, sizeof(buf), "%d%s %s", m_Number ? m_Number : channel->Number(), m_Number ? "-" : "", channel->ShortName(true)); m_Osd->DrawRectangle(0, OSDSTATUSWIN_Y(offset), OSDWIDTH, OSDSTATUSWIN_Y(offset+m_Font->Height()-1), clrWhite); m_Osd->DrawText(OSDSTATUSWIN_X(1), OSDSTATUSWIN_Y(offset), buf, clrBlack, clrWhite, m_Font); if (m_Receiver) { @@ -761,9 +761,11 @@ void cFemonOsd::DrawInfoWindow(void) void cFemonOsd::Action(void) { + int t0; //printf("cFemonOsd::Action()\n"); m_Active = true; while (m_Active) { + t0 = time_ms(); if (m_Frontend != -1) { CHECK(ioctl(m_Frontend, FE_READ_STATUS, &m_FrontendStatus)); CHECK(ioctl(m_Frontend, FE_READ_SIGNAL_STRENGTH, &m_Signal)); @@ -776,7 +778,7 @@ void cFemonOsd::Action(void) isyslog("Card #%d (%s) STR: %04x SNR: %04x BER: %08x UNC: %08x |%c|%c|%c|%c|%c|", cDevice::ActualDevice()->CardIndex(), m_FrontendInfo.name, m_Signal, m_SNR, m_BER, m_UNC, (m_FrontendStatus & FE_HAS_LOCK) ? 'L' : ' ', (m_FrontendStatus & FE_HAS_SIGNAL) ? 'S' : ' ', (m_FrontendStatus & FE_HAS_CARRIER) ? 'C' : ' ', (m_FrontendStatus & FE_HAS_VITERBI) ? 'V' : ' ', (m_FrontendStatus & FE_HAS_SYNC) ? 'Z' : ' '); } } - usleep(100000L * femonConfig.updateinterval); + cCondWait::SleepMs(100 * femonConfig.updateinterval - (time_ms() - t0)); } } diff --git a/femonreceiver.c b/femonreceiver.c index 1f1f3d1..7f21712 100644 --- a/femonreceiver.c +++ b/femonreceiver.c @@ -58,6 +58,7 @@ cFemonReceiver::cFemonReceiver(int Ca, int Vpid, int Apid, int Dpid) cFemonReceiver::~cFemonReceiver(void) { //printf("cFemonReceiver::~cFemonReceiver()\n"); + Detach(); if (m_Active) { m_Active = false; Cancel(0); @@ -253,7 +254,14 @@ void cFemonReceiver::GetAC3Info(uint8_t *mbuf, int count) void cFemonReceiver::Activate(bool On) { //printf("cFemonReceiver::Activate()\n"); - Start(); + if (On) { + if (!m_Active) + Start(); + } + else if (m_Active) { + m_Active = false; + Cancel(0); + } } void cFemonReceiver::Receive(uchar *Data, int Length) @@ -301,9 +309,11 @@ void cFemonReceiver::Receive(uchar *Data, int Length) void cFemonReceiver::Action(void) { + int t0; //printf("cFemonReceiver::Action()\n"); m_Active = true; while (m_Active) { + t0 = time_ms(); // TS packet 188 bytes - 4 byte header; MPEG standard defines 1Mbit = 1000000bit m_VideoBitrate = (8.0 * 184.0 * m_VideoPacketCount) / (femonConfig.calcinterval * 100000.0); m_VideoPacketCount = 0; @@ -311,6 +321,6 @@ void cFemonReceiver::Action(void) m_AudioPacketCount = 0; m_AC3Bitrate = (8.0 * 184.0 * m_AC3PacketCount) / (femonConfig.calcinterval * 100.0); m_AC3PacketCount = 0; - usleep(100000L * femonConfig.calcinterval); + cCondWait::SleepMs(100 * femonConfig.calcinterval - (time_ms() - t0)); } }