summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaus Schmidinger <Klaus (dot) Schmidinger (at) tvdr (dot) de>2010-06-06 12:49:00 (GMT)
committerKlaus Schmidinger <Klaus (dot) Schmidinger (at) tvdr (dot) de>2010-06-06 12:49:00 (GMT)
commitc2c45d68c644684e002a92ceee83af7550aaa1e4 (patch)
tree750ab30c42120f4e5fd2d8826a7081caa1d9dc9d
parent1eb12b4973033212b39a53249d8fb452e6914a8a (diff)
downloadvdr-patch-lnbsharing-c2c45d68c644684e002a92ceee83af7550aaa1e4.tar.gz
vdr-patch-lnbsharing-c2c45d68c644684e002a92ceee83af7550aaa1e4.tar.bz2
Version 1.7.15vdr-1.7.15
- Added Macedonian language texts (thanks to Dimitar Petrovski). - Updated the Estonian OSD texts (thanks to Arthur Konovalov). - Updated the Finnish OSD texts (thanks to Rolf Ahrenberg). - Added handling of EnhancedAC3DescriptorTag (thanks to Eric Valette). - The default SVDRP port is now 6419 (registered with ICANN/IANA by Christian Tramnitz). Use '-p 2001' to switch back to the old port if necessary. - Updated the Italian OSD texts (thanks to Diego Pierotto). - cDvbDevice::ProvidesTransponder() now checks the modulation capabilities of the device (as far as the driver allows this). - Fixed cFrameDetector::Analyze() in case part of the data has been processed and there is less than MIN_TS_PACKETS_FOR_FRAME_DETECTOR left (reported by Derek Kelly). - Added a note about not deleting cDeviceHook objects to device.h. - Added user defined key kUser0 (suggested by Ulf Kiener). - Include paths are now added instead of overwriting INCLUDES in the Makefile (thanks to Paul Menzel). - The various modulation types are now taken into account when selecting a device for a recording or live viewing, so that devices that provide more capabilities are spared. - Fixed generating PMT language descriptors for multi language PIDs (thanks to Rolf Ahrenberg). - Transponders that use "8psk turbo fec" (a non-standard mode used by North American providers) are now identified by assuming that all 8psk transponders on DVB-S use "turbo fec". In order to determine whether a certain device can handle "turbo fec", the new driver flag FE_CAN_TURBO_FEC is checked. If your device can handle "turbo fec", and your driver doesn't have that flag, yet, you can apply the patch from ftp://ftp.tvdr.de/vdr/Developer/v4l-dvb-add-FE_CAN_TURBO_FEC.diff. A temporary macro in dvbdevice.c defines the flag for all those who don't need this in the driver, so that they can continue using an unmodified driver. Thanks to Derek Kelly for testing this. - Updated the Ukrainian OSD texts (thanks to Yarema Aka Knedlyk). - Fixed handling "none" color entries in XPM files (thanks to Thomas Günther). - Fixed a crash when creating a new channel if the channel list is empty (reported by Halim Sahin). - Updated the Czech OSD texts (thanks to Radek Stastny). - Fixed a possible out of buffer memory access in case of bad TS data (reported by Rolf Ahrenberg). - Implemented handling of HD resolution subtitles according to v1.3.1 of ETSI EN 300 743, chapter 7.2.1 (thanks to Rolf Ahrenberg). - The EPG data now handles stream components 5 (H.264-video) and 6 (HEAAC-audio). - Fixed a problem with external Dolby Digital processing via the '-a' option in live mode and with TS recordings (reported by Christopher Reimer). - Added handling MPEG audio types "ISO/IEC 14496-3 Audio with LATM transport syntax" and "ISO/IEC 13818-7 Audio with ADTS transport syntax" (suggested by Luis Fernandes). See man vdr(5) on how the APID section of channels has been extended to store this information. - Added detecting channels that use service type 0x16. - Added full handling of the stream types of Dolby Digital pids (thanks to Jose Alberto Reguero). - The new setup option "OSD/Number keys for characters" can be used to control whether the number keys can be used to enter characters in a text input field (suggested by Stefan Huskamp).
-rw-r--r--CONTRIBUTORS35
-rw-r--r--HISTORY54
-rw-r--r--INSTALL2
-rw-r--r--MANUAL5
-rw-r--r--Makefile4
-rw-r--r--README4
-rw-r--r--audio.c4
-rw-r--r--channels.c55
-rw-r--r--channels.h8
-rw-r--r--config.c5
-rw-r--r--config.h11
-rw-r--r--device.c8
-rw-r--r--device.h5
-rw-r--r--dvbdevice.c46
-rw-r--r--dvbdevice.h3
-rw-r--r--dvbsubtitle.c35
-rw-r--r--dvbsubtitle.h7
-rw-r--r--eit.c4
-rw-r--r--keys.c3
-rw-r--r--keys.h4
-rw-r--r--menu.c8
-rw-r--r--menuitems.c93
-rw-r--r--menuitems.h3
-rw-r--r--osd.c8
-rw-r--r--pat.c13
-rw-r--r--po/ca_ES.po8
-rw-r--r--po/cs_CZ.po701
-rw-r--r--po/da_DK.po8
-rw-r--r--po/de_DE.po8
-rw-r--r--po/el_GR.po8
-rw-r--r--po/es_ES.po8
-rw-r--r--po/et_EE.po20
-rw-r--r--po/fi_FI.po276
-rw-r--r--po/fr_FR.po8
-rw-r--r--po/hr_HR.po8
-rw-r--r--po/hu_HU.po8
-rw-r--r--po/it_IT.po22
-rw-r--r--po/lt_LT.po8
-rw-r--r--po/mk_MK.po1324
-rw-r--r--po/nl_NL.po8
-rw-r--r--po/nn_NO.po8
-rw-r--r--po/pl_PL.po8
-rw-r--r--po/pt_PT.po8
-rw-r--r--po/ro_RO.po8
-rw-r--r--po/ru_RU.po8
-rw-r--r--po/sk_SK.po8
-rw-r--r--po/sl_SI.po8
-rw-r--r--po/sv_SE.po8
-rw-r--r--po/tr_TR.po8
-rw-r--r--po/uk_UA.po258
-rw-r--r--po/zh_CN.po8
-rw-r--r--remux.c43
-rw-r--r--remux.h7
-rw-r--r--sdt.c3
-rwxr-xr-xsvdrpsend.pl4
-rw-r--r--vdr.16
-rw-r--r--vdr.513
-rw-r--r--vdr.c6
58 files changed, 2498 insertions, 772 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index b8d33c3..cd51812 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -1093,6 +1093,10 @@ Rolf Ahrenberg <rahrenbe@cc.hut.fi>
suggesting to add plain text error messages to log entries from cOsd::SetAreas()
for keeping subtitles visible when pausing replay
for suggesting to assign the source character 'I' to "IPTV"
+ for fixing generating PMT language descriptors for multi language PIDs
+ for reporting a possible out of buffer memory access in case of bad TS data
+ for implementing handling of HD resolution subtitles according to v1.3.1 of
+ ETSI EN 300 743, chapter 7.2.1
Ralf Klueber <ralf.klueber@vodafone.com>
for reporting a bug in cutting a recording if there is only a single editing mark
@@ -1358,6 +1362,7 @@ Christian Tramnitz <maillist@tramnitz.com>
for terrestrial transponders
for his support in debugging a problem in setting the source type for newly
detected terrestrial transponders
+ for registering the default SVDRP port (6419) with ICANN/IANA
Jens Rosenboom <me@jayr.de>
for fixing the SVDRP command 'STAT DISK' to avoid a 'division by 0' in case
@@ -1952,6 +1957,7 @@ Thomas Gnther <tom1@toms-cafe.de>
strings
for suggesting to make the 'Allowed' parameter in cMenuEditStrItem() NULL by default,
which results in using tr(FileNameChars)
+ for fixing handling "none" color entries in XPM files
David Woodhouse <dwmw2@infradead.org>
for his help in replacing the get/put_unaligned() macros from asm/unaligned.h with
@@ -2336,6 +2342,7 @@ Boguslaw Juza <bogdan@uci.agh.edu.pl>
Ulf Kiener <webmaster@ulf-kiener.de>
for reporting a problem with audio track descriptions in the DVD plugin after a
replay has been stopped
+ for suggesting to add user defined key kUser0
Jrg Wendel <vdr-ml@jwendel.de>
for reporting that cPlugin::Active() was called too often
@@ -2362,6 +2369,7 @@ Alexander Riedel <alexander-riedel@t-online.de>
Jose Alberto Reguero <jareguero@telefonica.net>
for a patch that fixed part of a crash in i18n character set conversion
for fixing cDvbPlayer::NextFile() to handle files larger than 2GB
+ for implementing full handling of the stream types of Dolby Digital pids
Patrice Staudt <staudt@engsystem.net>
for adding full weekday names to i18n.c for plugins to use
@@ -2393,6 +2401,7 @@ Halim Sahin <halim.sahin@t-online.de>
channel in the channel list
for suggesting to make the "Source" item in the "Edit channel" menu wrap around the
list of sources
+ for reporting a crash when creating a new channel if the channel list is empty
Denis Knauf <denis.knauf@gmail.com>
for reporting a missing '-' at the next to last line of SVDRP help texts
@@ -2524,6 +2533,8 @@ Derek Kelly (user.vdr@gmail.com)
for reporting a problem with HD NTSC broadcasts that split frames over several payload
units
for updating sources.conf
+ for reporting a problem where the frame rate was not detected correctly
+ for testing the implementation of FE_CAN_TURBO_FEC
Marcel Unbehaun <frostworks@gmx.de>
for adding cRecordingInfo::GetEvent()
@@ -2579,3 +2590,27 @@ Lars Hanisch <dvb@flensrocker.de>
Alex Lasnier <alex@fepg.org>
for adding tuning support for ATSC devices
+
+Dimitar Petrovski <dimeptr@gmail.com>
+ for translating OSD texts to the Macedonian language
+
+Eric Valette <eric.valette@free.fr>
+ for adding handling of EnhancedAC3DescriptorTag
+
+Paul Menzel <paulepanter@users.sourceforge.net>
+ for making include paths be added instead of overwriting INCLUDES in the Makefile
+
+Radek Stastny <dedkus@gmail.com>
+ for translating OSD texts to the Czech language
+
+Luis Fernandes <telping@gmail.com>
+ for suggesting to add handling MPEG audio type "ISO/IEC 14496-3 Audio with LATM
+ transport syntax"
+
+Christopher Reimer <reimer.christopher@freenet.de>
+ for reporting a problem with external Dolby Digital processing via the '-a' option
+ in live mode and with TS recordings
+
+Stefan Huskamp <coca_cola1@gmx.de>
+ for suggesting to make entering characters via the number keys
+ configurable
diff --git a/HISTORY b/HISTORY
index 4b909c3..3976ba5 100644
--- a/HISTORY
+++ b/HISTORY
@@ -6410,3 +6410,57 @@ Video Disk Recorder Revision History
during replay.
- The new setup option "Folders in timer menu" controls whether the file names in
the timer menu are shown with their full folder path.
+
+2010-06-06: Version 1.7.15
+
+- Added Macedonian language texts (thanks to Dimitar Petrovski).
+- Updated the Estonian OSD texts (thanks to Arthur Konovalov).
+- Updated the Finnish OSD texts (thanks to Rolf Ahrenberg).
+- Added handling of EnhancedAC3DescriptorTag (thanks to Eric Valette).
+- The default SVDRP port is now 6419 (registered with ICANN/IANA by Christian Tramnitz).
+ Use '-p 2001' to switch back to the old port if necessary.
+- Updated the Italian OSD texts (thanks to Diego Pierotto).
+- cDvbDevice::ProvidesTransponder() now checks the modulation capabilities of the
+ device (as far as the driver allows this).
+- Fixed cFrameDetector::Analyze() in case part of the data has been processed and
+ there is less than MIN_TS_PACKETS_FOR_FRAME_DETECTOR left (reported by Derek Kelly).
+- Added a note about not deleting cDeviceHook objects to device.h.
+- Added user defined key kUser0 (suggested by Ulf Kiener).
+- Include paths are now added instead of overwriting INCLUDES in the Makefile (thanks
+ to Paul Menzel).
+- The various modulation types are now taken into account when selecting a device for
+ a recording or live viewing, so that devices that provide more capabilities are
+ spared.
+- Fixed generating PMT language descriptors for multi language PIDs (thanks to Rolf
+ Ahrenberg).
+- Transponders that use "8psk turbo fec" (a non-standard mode used by North American
+ providers) are now identified by assuming that all 8psk transponders on DVB-S use
+ "turbo fec". In order to determine whether a certain device can handle "turbo fec",
+ the new driver flag FE_CAN_TURBO_FEC is checked. If your device can handle "turbo
+ fec", and your driver doesn't have that flag, yet, you can apply the patch from
+ ftp://ftp.tvdr.de/vdr/Developer/v4l-dvb-add-FE_CAN_TURBO_FEC.diff. A temporary
+ macro in dvbdevice.c defines the flag for all those who don't need this in the
+ driver, so that they can continue using an unmodified driver.
+ Thanks to Derek Kelly for testing this.
+- Updated the Ukrainian OSD texts (thanks to Yarema Aka Knedlyk).
+- Fixed handling "none" color entries in XPM files (thanks to Thomas Gnther).
+- Fixed a crash when creating a new channel if the channel list is empty (reported
+ by Halim Sahin).
+- Updated the Czech OSD texts (thanks to Radek Stastny).
+- Fixed a possible out of buffer memory access in case of bad TS data (reported
+ by Rolf Ahrenberg).
+- Implemented handling of HD resolution subtitles according to v1.3.1 of
+ ETSI EN 300 743, chapter 7.2.1 (thanks to Rolf Ahrenberg).
+- The EPG data now handles stream components 5 (H.264-video) and 6 (HEAAC-audio).
+- Fixed a problem with external Dolby Digital processing via the '-a' option in live
+ mode and with TS recordings (reported by Christopher Reimer).
+- Added handling MPEG audio types "ISO/IEC 14496-3 Audio with LATM transport syntax"
+ and "ISO/IEC 13818-7 Audio with ADTS transport syntax" (suggested by Luis Fernandes).
+ See man vdr(5) on how the APID section of channels has been extended to store
+ this information.
+- Added detecting channels that use service type 0x16.
+- Added full handling of the stream types of Dolby Digital pids
+ (thanks to Jose Alberto Reguero).
+- The new setup option "OSD/Number keys for characters" can be used to control whether
+ the number keys can be used to enter characters in a text input field (suggested
+ by Stefan Huskamp).
diff --git a/INSTALL b/INSTALL
index e0fc016..ee4f64a 100644
--- a/INSTALL
+++ b/INSTALL
@@ -66,7 +66,7 @@ messages (tail -f /var/log/messages) to see if there are any problems.
The program can be controlled via a network connection to its SVDRP
port ("Simple Video Disk Recorder Protocol"). By default, it listens
-on port 2001 (use the --port=PORT option to change this). For details
+on port 6419 (use the --port=PORT option to change this). For details
about the SVDRP syntax see the source file 'svdrp.c'.
WARNING: DUE TO THE OPEN SVDRP PORT THIS PROGRAM MAY CONSTITUTE A
diff --git a/MANUAL b/MANUAL
index 3fd528f..7fae53b 100644
--- a/MANUAL
+++ b/MANUAL
@@ -588,6 +588,11 @@ Version 1.6
Controls whether the full folder path is shown in the
"Timers" menu, or just the basic recording name.
+ Number keys for characters = yes
+ Controls whether the number keys can be used to enter
+ characters in a text input field. You may want to set this
+ to "no" if you are using an actual keyboard to control VDR.
+
EPG:
EPG scan timeout = 5 The time (in hours) of user inactivity after which the
diff --git a/Makefile b/Makefile
index 31f05b0..d788484 100644
--- a/Makefile
+++ b/Makefile
@@ -4,7 +4,7 @@
# See the main source file 'vdr.c' for copyright information and
# how to reach the author.
#
-# $Id: Makefile 2.8 2010/02/21 11:44:38 kls Exp $
+# $Id: Makefile 2.9 2010/04/10 12:40:15 kls Exp $
.DELETE_ON_ERROR:
@@ -21,7 +21,7 @@ MANDIR = $(PREFIX)/share/man
BINDIR = $(PREFIX)/bin
LOCDIR = ./locale
LIBS = -ljpeg -lpthread -ldl -lcap -lrt -lfreetype -lfontconfig
-INCLUDES = -I/usr/include/freetype2
+INCLUDES ?= -I/usr/include/freetype2
PLUGINDIR= ./PLUGINS
PLUGINLIBDIR= $(PLUGINDIR)/lib
diff --git a/README b/README
index 28d4b98..9a1efb8 100644
--- a/README
+++ b/README
@@ -34,3 +34,7 @@ file management and even "on disk editing". The menus
of commercial set-top boxes usually are a lot more fancy than
the ones in this system, but here we have the full source code
and can modify the menus in whatever way desired.
+
+
+"VDR Video Disk Recorder" is a registered trademark of Klaus Schmidinger.
+"TVDR TV Done Right" is a registered trademark of Klaus Schmidinger.
diff --git a/audio.c b/audio.c
index 66430d5..abffa3a 100644
--- a/audio.c
+++ b/audio.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: audio.c 2.1 2008/07/06 11:42:58 kls Exp $
+ * $Id: audio.c 2.2 2010/05/16 13:30:11 kls Exp $
*/
#include "audio.h"
@@ -56,6 +56,7 @@ cExternalAudio::cExternalAudio(const char *Command)
{
command = strdup(Command);
mute = false;
+ cDvbDevice::SetTransferModeForDolbyDigital(2);
}
cExternalAudio::~cExternalAudio()
@@ -68,7 +69,6 @@ void cExternalAudio::Play(const uchar *Data, int Length, uchar Id)
if (command && !mute) {
if (pipe || pipe.Open(command, "w")) {
if (0x80 <= Id && Id <= 0x87 || Id == 0xBD) { // AC3
- cDvbDevice::SetTransferModeForDolbyDigital(2);
int written = Data[8] + 9; // skips the PES header
if (Id != 0xBD)
written += 4; // skips AC3 bytes
diff --git a/channels.c b/channels.c
index a694d54..ebc7eb1 100644
--- a/channels.c
+++ b/channels.c
@@ -4,13 +4,14 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: channels.c 2.13 2010/02/21 13:36:04 kls Exp $
+ * $Id: channels.c 2.16 2010/06/05 13:33:57 kls Exp $
*/
#include "channels.h"
#include <ctype.h>
#include "device.h"
#include "epg.h"
+#include "libsi/si.h"
#include "timers.h"
// IMPORTANT NOTE: in the 'sscanf()' calls there is a blank after the '%d'
@@ -61,6 +62,7 @@ cChannel::cChannel(void)
provider = strdup("");
portalName = strdup("");
memset(&__BeginData__, 0, (char *)&__EndData__ - (char *)&__BeginData__);
+ parameters = "";
modification = CHANNELMOD_NONE;
schedule = NULL;
linkChannels = NULL;
@@ -270,14 +272,21 @@ static int IntArraysDiffer(const int *a, const int *b, const char na[][MAXLANGCO
return result;
}
-static int IntArrayToString(char *s, const int *a, int Base = 10, const char n[][MAXLANGCODE2] = NULL)
+static int IntArrayToString(char *s, const int *a, int Base = 10, const char n[][MAXLANGCODE2] = NULL, const int *t = NULL)
{
char *q = s;
int i = 0;
while (a[i] || i == 0) {
q += sprintf(q, Base == 16 ? "%s%X" : "%s%d", i ? "," : "", a[i]);
- if (a[i] && n && *n[i])
- q += sprintf(q, "=%s", n[i]);
+ const char *Delim = "=";
+ if (a[i]) {
+ if (n && *n[i]) {
+ q += sprintf(q, "%s%s", Delim, n[i]);
+ Delim = "";
+ }
+ if (t && t[i])
+ q += sprintf(q, "%s@%d", Delim, t[i]);
+ }
if (!a[i])
break;
i++;
@@ -286,32 +295,32 @@ static int IntArrayToString(char *s, const int *a, int Base = 10, const char n[]
return q - s;
}
-void cChannel::SetPids(int Vpid, int Ppid, int Vtype, int *Apids, char ALangs[][MAXLANGCODE2], int *Dpids, char DLangs[][MAXLANGCODE2], int *Spids, char SLangs[][MAXLANGCODE2], int Tpid)
+void cChannel::SetPids(int Vpid, int Ppid, int Vtype, int *Apids, int *Atypes, char ALangs[][MAXLANGCODE2], int *Dpids, int *Dtypes, char DLangs[][MAXLANGCODE2], int *Spids, char SLangs[][MAXLANGCODE2], int Tpid)
{
int mod = CHANNELMOD_NONE;
if (vpid != Vpid || ppid != Ppid || vtype != Vtype || tpid != Tpid)
mod |= CHANNELMOD_PIDS;
- int m = IntArraysDiffer(apids, Apids, alangs, ALangs) | IntArraysDiffer(dpids, Dpids, dlangs, DLangs) | IntArraysDiffer(spids, Spids, slangs, SLangs);
+ int m = IntArraysDiffer(apids, Apids, alangs, ALangs) | IntArraysDiffer(atypes, Atypes) | IntArraysDiffer(dpids, Dpids, dlangs, DLangs) | IntArraysDiffer(dtypes, Dtypes) | IntArraysDiffer(spids, Spids, slangs, SLangs);
if (m & STRDIFF)
mod |= CHANNELMOD_LANGS;
if (m & VALDIFF)
mod |= CHANNELMOD_PIDS;
if (mod) {
- const int BufferSize = (MAXAPIDS + MAXDPIDS) * (5 + 1 + MAXLANGCODE2) + 10; // 5 digits plus delimiting ',' or ';' plus optional '=cod+cod', +10: paranoia
+ const int BufferSize = (MAXAPIDS + MAXDPIDS) * (5 + 1 + MAXLANGCODE2 + 5) + 10; // 5 digits plus delimiting ',' or ';' plus optional '=cod+cod@type', +10: paranoia
char OldApidsBuf[BufferSize];
char NewApidsBuf[BufferSize];
char *q = OldApidsBuf;
- q += IntArrayToString(q, apids, 10, alangs);
+ q += IntArrayToString(q, apids, 10, alangs, atypes);
if (dpids[0]) {
*q++ = ';';
- q += IntArrayToString(q, dpids, 10, dlangs);
+ q += IntArrayToString(q, dpids, 10, dlangs, dtypes);
}
*q = 0;
q = NewApidsBuf;
- q += IntArrayToString(q, Apids, 10, ALangs);
+ q += IntArrayToString(q, Apids, 10, ALangs, Atypes);
if (Dpids[0]) {
*q++ = ';';
- q += IntArrayToString(q, Dpids, 10, DLangs);
+ q += IntArrayToString(q, Dpids, 10, DLangs, Dtypes);
}
*q = 0;
const int SBufferSize = MAXSPIDS * (5 + 1 + MAXLANGCODE2) + 10; // 5 digits plus delimiting ',' or ';' plus optional '=cod', +10: paranoia
@@ -330,11 +339,13 @@ void cChannel::SetPids(int Vpid, int Ppid, int Vtype, int *Apids, char ALangs[][
vtype = Vtype;
for (int i = 0; i < MAXAPIDS; i++) {
apids[i] = Apids[i];
+ atypes[i] = Atypes[i];
strn0cpy(alangs[i], ALangs[i], MAXLANGCODE2);
}
apids[MAXAPIDS] = 0;
for (int i = 0; i < MAXDPIDS; i++) {
dpids[i] = Dpids[i];
+ dtypes[i] = Dtypes[i];
strn0cpy(dlangs[i], DLangs[i], MAXLANGCODE2);
}
dpids[MAXDPIDS] = 0;
@@ -484,13 +495,13 @@ cString cChannel::ToText(const cChannel *Channel)
if (Channel->vpid && Channel->vtype)
q += snprintf(q, sizeof(vpidbuf) - (q - vpidbuf), "=%d", Channel->vtype);
*q = 0;
- const int BufferSize = (MAXAPIDS + MAXDPIDS) * (5 + 1 + MAXLANGCODE2) + 10; // 5 digits plus delimiting ',' or ';' plus optional '=cod+cod', +10: paranoia
+ const int BufferSize = (MAXAPIDS + MAXDPIDS) * (5 + 1 + MAXLANGCODE2 + 5) + 10; // 5 digits plus delimiting ',' or ';' plus optional '=cod+cod@type', +10: paranoia
char apidbuf[BufferSize];
q = apidbuf;
- q += IntArrayToString(q, Channel->apids, 10, Channel->alangs);
+ q += IntArrayToString(q, Channel->apids, 10, Channel->alangs, Channel->atypes);
if (Channel->dpids[0]) {
*q++ = ';';
- q += IntArrayToString(q, Channel->dpids, 10, Channel->dlangs);
+ q += IntArrayToString(q, Channel->dpids, 10, Channel->dlangs, Channel->dtypes);
}
*q = 0;
char caidbuf[MAXCAIDS * 5 + 10]; // 5: 4 digits plus delimiting ',', 10: paranoia
@@ -546,7 +557,9 @@ bool cChannel::Parse(const char *s)
vpid = ppid = 0;
vtype = 0;
apids[0] = 0;
+ atypes[0] = 0;
dpids[0] = 0;
+ dtypes[0] = 0;
ok = false;
if (parambuf && sourcebuf && vpidbuf && apidbuf) {
parameters = parambuf;
@@ -579,9 +592,15 @@ bool cChannel::Parse(const char *s)
char *strtok_next;
while ((q = strtok_r(p, ",", &strtok_next)) != NULL) {
if (NumApids < MAXAPIDS) {
+ atypes[NumApids] = 4; // backwards compatibility
char *l = strchr(q, '=');
if (l) {
*l++ = 0;
+ char *t = strchr(l, '@');
+ if (t) {
+ *t++ = 0;
+ atypes[NumApids] = strtol(t, NULL, 10);
+ }
strn0cpy(alangs[NumApids], l, MAXLANGCODE2);
}
else
@@ -593,6 +612,7 @@ bool cChannel::Parse(const char *s)
p = NULL;
}
apids[NumApids] = 0;
+ atypes[NumApids] = 0;
if (dpidbuf) {
char *p = dpidbuf;
char *q;
@@ -600,9 +620,15 @@ bool cChannel::Parse(const char *s)
char *strtok_next;
while ((q = strtok_r(p, ",", &strtok_next)) != NULL) {
if (NumDpids < MAXDPIDS) {
+ dtypes[NumDpids] = SI::AC3DescriptorTag; // backwards compatibility
char *l = strchr(q, '=');
if (l) {
*l++ = 0;
+ char *t = strchr(l, '@');
+ if (t) {
+ *t++ = 0;
+ dtypes[NumDpids] = strtol(t, NULL, 10);
+ }
strn0cpy(dlangs[NumDpids], l, MAXLANGCODE2);
}
else
@@ -614,6 +640,7 @@ bool cChannel::Parse(const char *s)
p = NULL;
}
dpids[NumDpids] = 0;
+ dtypes[NumDpids] = 0;
}
if (caidbuf) {
diff --git a/channels.h b/channels.h
index 5c9727f..b867297 100644
--- a/channels.h
+++ b/channels.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: channels.h 2.10 2010/03/07 13:47:13 kls Exp $
+ * $Id: channels.h 2.12 2010/06/05 13:12:54 kls Exp $
*/
#ifndef __CHANNELS_H
@@ -104,8 +104,10 @@ private:
int ppid;
int vtype;
int apids[MAXAPIDS + 1]; // list is zero-terminated
+ int atypes[MAXAPIDS + 1]; // list is zero-terminated
char alangs[MAXAPIDS][MAXLANGCODE2];
int dpids[MAXDPIDS + 1]; // list is zero-terminated
+ int dtypes[MAXAPIDS + 1]; // list is zero-terminated
char dlangs[MAXDPIDS][MAXLANGCODE2];
int spids[MAXSPIDS + 1]; // list is zero-terminated
char slangs[MAXSPIDS][MAXLANGCODE2];
@@ -156,6 +158,8 @@ public:
const char *Alang(int i) const { return (0 <= i && i < MAXAPIDS) ? alangs[i] : ""; }
const char *Dlang(int i) const { return (0 <= i && i < MAXDPIDS) ? dlangs[i] : ""; }
const char *Slang(int i) const { return (0 <= i && i < MAXSPIDS) ? slangs[i] : ""; }
+ int Atype(int i) const { return (0 <= i && i < MAXAPIDS) ? atypes[i] : 0; }
+ int Dtype(int i) const { return (0 <= i && i < MAXDPIDS) ? dtypes[i] : 0; }
uchar SubtitlingType(int i) const { return (0 <= i && i < MAXSPIDS) ? subtitlingTypes[i] : uchar(0); }
uint16_t CompositionPageId(int i) const { return (0 <= i && i < MAXSPIDS) ? compositionPageIds[i] : uint16_t(0); }
uint16_t AncillaryPageId(int i) const { return (0 <= i && i < MAXSPIDS) ? ancillaryPageIds[i] : uint16_t(0); }
@@ -185,7 +189,7 @@ public:
void SetId(int Nid, int Tid, int Sid, int Rid = 0);
void SetName(const char *Name, const char *ShortName, const char *Provider);
void SetPortalName(const char *PortalName);
- void SetPids(int Vpid, int Ppid, int Vtype, int *Apids, char ALangs[][MAXLANGCODE2], int *Dpids, char DLangs[][MAXLANGCODE2], int *Spids, char SLangs[][MAXLANGCODE2], int Tpid);
+ void SetPids(int Vpid, int Ppid, int Vtype, int *Apids, int *Atypes, char ALangs[][MAXLANGCODE2], int *Dpids, int *Dtypes, char DLangs[][MAXLANGCODE2], int *Spids, char SLangs[][MAXLANGCODE2], int Tpid);
void SetCaIds(const int *CaIds); // list must be zero-terminated
void SetCaDescriptors(int Level);
void SetLinkChannels(cLinkChannels *LinkChannels);
diff --git a/config.c b/config.c
index aa18ebc..73b11b1 100644
--- a/config.c
+++ b/config.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: config.c 2.12 2010/03/12 16:41:37 kls Exp $
+ * $Id: config.c 2.13 2010/06/06 10:06:43 kls Exp $
*/
#include "config.h"
@@ -355,6 +355,7 @@ cSetup::cSetup(void)
VpsMargin = 120;
RecordingDirs = 1;
FoldersInTimerMenu = 1;
+ NumberKeysForChars = 1;
VideoDisplayFormat = 1;
VideoFormat = 0;
UpdateChannels = 5;
@@ -545,6 +546,7 @@ bool cSetup::Parse(const char *Name, const char *Value)
else if (!strcasecmp(Name, "VpsMargin")) VpsMargin = atoi(Value);
else if (!strcasecmp(Name, "RecordingDirs")) RecordingDirs = atoi(Value);
else if (!strcasecmp(Name, "FoldersInTimerMenu")) FoldersInTimerMenu = atoi(Value);
+ else if (!strcasecmp(Name, "NumberKeysForChars")) NumberKeysForChars = atoi(Value);
else if (!strcasecmp(Name, "VideoDisplayFormat")) VideoDisplayFormat = atoi(Value);
else if (!strcasecmp(Name, "VideoFormat")) VideoFormat = atoi(Value);
else if (!strcasecmp(Name, "UpdateChannels")) UpdateChannels = atoi(Value);
@@ -640,6 +642,7 @@ bool cSetup::Save(void)
Store("VpsMargin", VpsMargin);
Store("RecordingDirs", RecordingDirs);
Store("FoldersInTimerMenu", FoldersInTimerMenu);
+ Store("NumberKeysForChars", NumberKeysForChars);
Store("VideoDisplayFormat", VideoDisplayFormat);
Store("VideoFormat", VideoFormat);
Store("UpdateChannels", UpdateChannels);
diff --git a/config.h b/config.h
index f4996bb..7041eb7 100644
--- a/config.h
+++ b/config.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: config.h 2.25 2010/03/12 16:02:53 kls Exp $
+ * $Id: config.h 2.27 2010/06/06 09:53:02 kls Exp $
*/
#ifndef __CONFIG_H
@@ -22,13 +22,13 @@
// VDR's own version number:
-#define VDRVERSION "1.7.14"
-#define VDRVERSNUM 10714 // Version * 10000 + Major * 100 + Minor
+#define VDRVERSION "1.7.15"
+#define VDRVERSNUM 10715 // Version * 10000 + Major * 100 + Minor
// The plugin API's version number:
-#define APIVERSION "1.7.14"
-#define APIVERSNUM 10714 // Version * 10000 + Major * 100 + Minor
+#define APIVERSION "1.7.15"
+#define APIVERSNUM 10715 // Version * 10000 + Major * 100 + Minor
// When loading plugins, VDR searches them by their APIVERSION, which
// may be smaller than VDRVERSION in case there have been no changes to
@@ -254,6 +254,7 @@ public:
int VpsMargin;
int RecordingDirs;
int FoldersInTimerMenu;
+ int NumberKeysForChars;
int VideoDisplayFormat;
int VideoFormat;
int UpdateChannels;
diff --git a/device.c b/device.c
index ac4d6d4..681049b 100644
--- a/device.c
+++ b/device.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: device.c 2.35 2010/02/07 11:54:42 kls Exp $
+ * $Id: device.c 2.37 2010/06/03 13:35:02 kls Exp $
*/
#include "device.h"
@@ -152,7 +152,7 @@ int cDevice::NextCardIndex(int n)
esyslog("ERROR: nextCardIndex too big (%d)", nextCardIndex);
}
else if (n < 0)
- esyslog("ERROR: invalid value in IncCardIndex(%d)", n);
+ esyslog("ERROR: invalid value in nextCardIndex(%d)", n);
return nextCardIndex;
}
@@ -215,7 +215,7 @@ cDevice *cDevice::GetDevice(int Index)
static int GetClippedNumProvidedSystems(int AvailableBits, cDevice *Device)
{
- int MaxNumProvidedSystems = 1 << AvailableBits;
+ int MaxNumProvidedSystems = (1 << AvailableBits) - 1;
int NumProvidedSystems = Device->NumProvidedSystems();
if (NumProvidedSystems > MaxNumProvidedSystems) {
esyslog("ERROR: device %d supports %d modulation systems but cDevice::GetDevice() currently only supports %d delivery systems which should be fixed", Device->CardIndex() + 1, NumProvidedSystems, MaxNumProvidedSystems);
@@ -281,7 +281,7 @@ cDevice *cDevice::GetDevice(const cChannel *Channel, int Priority, bool LiveView
imp <<= 1; imp |= LiveView ? !device[i]->IsPrimaryDevice() || ndr : 0; // prefer the primary device for live viewing if we don't need to detach existing receivers
imp <<= 1; imp |= !device[i]->Receiving() && (device[i] != cTransferControl::ReceiverDevice() || device[i]->IsPrimaryDevice()) || ndr; // use receiving devices if we don't need to detach existing receivers, but avoid primary device in local transfer mode
imp <<= 1; imp |= device[i]->Receiving(); // avoid devices that are receiving
- imp <<= 2; imp |= GetClippedNumProvidedSystems(2, device[i]) - 1; // avoid cards which support multiple delivery systems
+ imp <<= 4; imp |= GetClippedNumProvidedSystems(4, device[i]) - 1; // avoid cards which support multiple delivery systems
imp <<= 1; imp |= device[i] == cTransferControl::ReceiverDevice(); // avoid the Transfer Mode receiver device
imp <<= 8; imp |= min(max(device[i]->Priority() + MAXPRIORITY, 0), 0xFF); // use the device with the lowest priority (+MAXPRIORITY to assure that values -99..99 can be used)
imp <<= 8; imp |= min(max((NumUsableSlots ? SlotPriority[j] : 0) + MAXPRIORITY, 0), 0xFF); // use the CAM slot with the lowest priority (+MAXPRIORITY to assure that values -99..99 can be used)
diff --git a/device.h b/device.h
index 9ce814a..cb3bc2c 100644
--- a/device.h
+++ b/device.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: device.h 2.21 2010/02/06 14:34:41 kls Exp $
+ * $Id: device.h 2.22 2010/04/05 09:51:29 kls Exp $
*/
#ifndef __DEVICE_H
@@ -91,6 +91,9 @@ class cLiveSubtitle;
class cDeviceHook : public cListObject {
public:
cDeviceHook(void);
+ ///< Creates a new device hook object.
+ ///< Do not delete this object - it will be automatically deleted when the
+ ///< program ends.
virtual bool DeviceProvidesTransponder(const cDevice *Device, const cChannel *Channel) const;
///< Returns true if the given Device can provide the given Channel's transponder.
};
diff --git a/dvbdevice.c b/dvbdevice.c
index 75e0ca8..f32b350 100644
--- a/dvbdevice.c
+++ b/dvbdevice.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: dvbdevice.c 2.32 2010/03/07 13:58:24 kls Exp $
+ * $Id: dvbdevice.c 2.38 2010/05/01 09:47:13 kls Exp $
*/
#include "dvbdevice.h"
@@ -21,6 +21,8 @@
#include "menuitems.h"
#include "sourceparams.h"
+#define FE_CAN_TURBO_FEC 0x8000000 // TODO: remove this once it is defined in the driver
+
#define DVBS_TUNE_TIMEOUT 9000 //ms
#define DVBS_LOCK_TIMEOUT 2000 //ms
#define DVBC_TUNE_TIMEOUT 9000 //ms
@@ -149,6 +151,14 @@ int MapToUser(int Value, const tDvbParameterMap *Map, const char **String)
return -1;
}
+const char *MapToUserString(int Value, const tDvbParameterMap *Map)
+{
+ int n = DriverIndex(Value, Map);
+ if (n >= 0)
+ return Map[n].userString;
+ return "???";
+}
+
int MapToDriver(int Value, const tDvbParameterMap *Map)
{
int n = UserIndex(Value, Map);
@@ -692,7 +702,22 @@ cDvbDevice::cDvbDevice(int Adapter, int Frontend)
numProvidedSystems++;
if (frontendType == SYS_DVBS2)
numProvidedSystems++;
- isyslog("frontend %d/%d provides %s (\"%s\")", adapter, frontend, DeliverySystems[frontendType], frontendInfo.name);
+ char Modulations[64];
+ char *p = Modulations;
+ if (frontendInfo.caps & FE_CAN_QPSK) { numProvidedSystems++; p += sprintf(p, ",%s", MapToUserString(QPSK, ModulationValues)); }
+ if (frontendInfo.caps & FE_CAN_QAM_16) { numProvidedSystems++; p += sprintf(p, ",%s", MapToUserString(QAM_16, ModulationValues)); }
+ if (frontendInfo.caps & FE_CAN_QAM_32) { numProvidedSystems++; p += sprintf(p, ",%s", MapToUserString(QAM_32, ModulationValues)); }
+ if (frontendInfo.caps & FE_CAN_QAM_64) { numProvidedSystems++; p += sprintf(p, ",%s", MapToUserString(QAM_64, ModulationValues)); }
+ if (frontendInfo.caps & FE_CAN_QAM_128) { numProvidedSystems++; p += sprintf(p, ",%s", MapToUserString(QAM_128, ModulationValues)); }
+ if (frontendInfo.caps & FE_CAN_QAM_256) { numProvidedSystems++; p += sprintf(p, ",%s", MapToUserString(QAM_256, ModulationValues)); }
+ if (frontendInfo.caps & FE_CAN_8VSB) { numProvidedSystems++; p += sprintf(p, ",%s", MapToUserString(VSB_8, ModulationValues)); }
+ if (frontendInfo.caps & FE_CAN_16VSB) { numProvidedSystems++; p += sprintf(p, ",%s", MapToUserString(VSB_16, ModulationValues)); }
+ if (frontendInfo.caps & FE_CAN_TURBO_FEC){numProvidedSystems++; p += sprintf(p, ",%s", "TURBO_FEC"); }
+ if (p != Modulations)
+ p = Modulations + 1; // skips first ','
+ else
+ p = (char *)"unknown modulations";
+ isyslog("frontend %d/%d provides %s with %s (\"%s\")", adapter, frontend, DeliverySystems[frontendType], p, frontendInfo.name);
dvbTuner = new cDvbTuner(CardIndex() + 1, fd_frontend, adapter, frontend, frontendType);
}
}
@@ -886,12 +911,21 @@ bool cDvbDevice::ProvidesTransponder(const cChannel *Channel) const
{
if (!ProvidesSource(Channel->Source()))
return false; // doesn't provide source
- if (!cSource::IsSat(Channel->Source()))
- return DeviceHooksProvidesTransponder(Channel); // source is sufficient for non sat
cDvbTransponderParameters dtp(Channel->Parameters());
- if (frontendType == SYS_DVBS && dtp.System() == SYS_DVBS2)
+ if (dtp.System() == SYS_DVBS2 && frontendType == SYS_DVBS ||
+ dtp.Modulation() == QPSK && !(frontendInfo.caps & FE_CAN_QPSK) ||
+ dtp.Modulation() == QAM_16 && !(frontendInfo.caps & FE_CAN_QAM_16) ||
+ dtp.Modulation() == QAM_32 && !(frontendInfo.caps & FE_CAN_QAM_32) ||
+ dtp.Modulation() == QAM_64 && !(frontendInfo.caps & FE_CAN_QAM_64) ||
+ dtp.Modulation() == QAM_128 && !(frontendInfo.caps & FE_CAN_QAM_128) ||
+ dtp.Modulation() == QAM_256 && !(frontendInfo.caps & FE_CAN_QAM_256) ||
+ dtp.Modulation() == QAM_AUTO && !(frontendInfo.caps & FE_CAN_QAM_AUTO) ||
+ dtp.Modulation() == VSB_8 && !(frontendInfo.caps & FE_CAN_8VSB) ||
+ dtp.Modulation() == VSB_16 && !(frontendInfo.caps & FE_CAN_16VSB) ||
+ dtp.Modulation() == PSK_8 && !(frontendInfo.caps & FE_CAN_TURBO_FEC) && dtp.System() == SYS_DVBS) // "turbo fec" is a non standard FEC used by North American broadcasters - this is a best guess to determine this condition
return false; // requires modulation system which frontend doesn't provide
- if (!Setup.DiSEqC || Diseqcs.Get(CardIndex() + 1, Channel->Source(), Channel->Frequency(), dtp.Polarization()))
+ if (!cSource::IsSat(Channel->Source()) ||
+ !Setup.DiSEqC || Diseqcs.Get(CardIndex() + 1, Channel->Source(), Channel->Frequency(), dtp.Polarization()))
return DeviceHooksProvidesTransponder(Channel);
return false;
}
diff --git a/dvbdevice.h b/dvbdevice.h
index dceedd1..ff606fd 100644
--- a/dvbdevice.h
+++ b/dvbdevice.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: dvbdevice.h 2.13 2010/02/21 14:06:08 kls Exp $
+ * $Id: dvbdevice.h 2.14 2010/04/11 10:29:37 kls Exp $
*/
#ifndef __DVBDEVICE_H
@@ -37,6 +37,7 @@ struct tDvbParameterMap {
const char *userString;
};
+const char *MapToUserString(int Value, const tDvbParameterMap *Map);
int MapToUser(int Value, const tDvbParameterMap *Map, const char **String = NULL);
int MapToDriver(int Value, const tDvbParameterMap *Map);
int UserIndex(int Value, const tDvbParameterMap *Map);
diff --git a/dvbsubtitle.c b/dvbsubtitle.c
index a02a01f..6ecb3b7 100644
--- a/dvbsubtitle.c
+++ b/dvbsubtitle.c
@@ -7,7 +7,7 @@
* Original author: Marco Schller <marco@lordzodiac.de>
* With some input from the "subtitle plugin" by Pekka Virtanen <pekka.virtanen@sci.fi>
*
- * $Id: dvbsubtitle.c 2.4 2010/02/07 12:08:13 kls Exp $
+ * $Id: dvbsubtitle.c 2.6 2010/06/05 14:03:55 kls Exp $
*/
#include "dvbsubtitle.h"
@@ -17,6 +17,7 @@
#define REGION_COMPOSITION_SEGMENT 0x11
#define CLUT_DEFINITION_SEGMENT 0x12
#define OBJECT_DATA_SEGMENT 0x13
+#define DISPLAY_DEFINITION_SEGMENT 0x14
#define END_OF_DISPLAY_SET_SEGMENT 0x80
// Set these to 'true' for debug output:
@@ -659,6 +660,11 @@ cDvbSubtitleConverter::cDvbSubtitleConverter(void)
dvbSubtitleAssembler = new cDvbSubtitleAssembler;
osd = NULL;
frozen = false;
+ ddsVersionNumber = 0;
+ displayWidth = 720;
+ displayHeight = 576;
+ displayHorizontalOffset = 0;
+ displayVerticalOffset = 0;
pages = new cList<cDvbSubtitlePage>;
bitmaps = new cList<cDvbSubtitleBitmaps>;
Start();
@@ -687,6 +693,11 @@ void cDvbSubtitleConverter::Reset(void)
bitmaps->Clear();
DELETENULL(osd);
frozen = false;
+ ddsVersionNumber = 0;
+ displayWidth = 720;
+ displayHeight = 576;
+ displayHorizontalOffset = 0;
+ displayVerticalOffset = 0;
Unlock();
}
@@ -842,7 +853,7 @@ tColor cDvbSubtitleConverter::yuv2rgb(int Y, int Cb, int Cr)
bool cDvbSubtitleConverter::AssertOsd(void)
{
- return osd || (osd = cOsdProvider::NewOsd(0, Setup.SubtitleOffset, OSD_LEVEL_SUBTITLES));
+ return osd || (osd = cOsdProvider::NewOsd(displayHorizontalOffset, displayVerticalOffset + Setup.SubtitleOffset, OSD_LEVEL_SUBTITLES));
}
int cDvbSubtitleConverter::ExtractSegment(const uchar *Data, int Length, int64_t Pts)
@@ -1001,6 +1012,26 @@ int cDvbSubtitleConverter::ExtractSegment(const uchar *Data, int Length, int64_t
}
break;
}
+ case DISPLAY_DEFINITION_SEGMENT: {
+ dbgsegments("DISPLAY_DEFINITION_SEGMENT\n");
+ int version = (Data[6] & 0xF0) >> 4;
+ if (version != ddsVersionNumber) {
+ int displayWindowFlag = (Data[6] & 0x08) >> 3;
+ displayHorizontalOffset = 0;
+ displayVerticalOffset = 0;
+ displayWidth = ((Data[7] << 8) | Data[8]) + 1;
+ displayHeight = ((Data[9] << 8) | Data[10]) + 1;
+ if (displayWindowFlag) {
+ displayHorizontalOffset = (Data[11] << 8) | Data[12]; // displayWindowHorizontalPositionMinimum
+ displayWidth = ((Data[13] << 8) | Data[14]) - displayHorizontalOffset + 1; // displayWindowHorizontalPositionMaximum
+ displayVerticalOffset = (Data[15] << 8) | Data[16]; // displayWindowVerticalPositionMinimum
+ displayHeight = ((Data[17] << 8) | Data[18]) - displayVerticalOffset + 1; // displayWindowVerticalPositionMaximum
+ }
+ SetupChanged();
+ ddsVersionNumber = version;
+ }
+ break;
+ }
case END_OF_DISPLAY_SET_SEGMENT: {
dbgsegments("END_OF_DISPLAY_SET_SEGMENT\n");
FinishPage(page);
diff --git a/dvbsubtitle.h b/dvbsubtitle.h
index c6775a9..6888661 100644
--- a/dvbsubtitle.h
+++ b/dvbsubtitle.h
@@ -6,7 +6,7 @@
*
* Original author: Marco Schller <marco@lordzodiac.de>
*
- * $Id: dvbsubtitle.h 2.2 2010/02/07 11:55:14 kls Exp $
+ * $Id: dvbsubtitle.h 2.3 2010/05/13 14:43:44 kls Exp $
*/
#ifndef __DVBSUBTITLE_H
@@ -26,6 +26,11 @@ private:
cDvbSubtitleAssembler *dvbSubtitleAssembler;
cOsd *osd;
bool frozen;
+ int ddsVersionNumber;
+ int displayWidth;
+ int displayHeight;
+ int displayHorizontalOffset;
+ int displayVerticalOffset;
cList<cDvbSubtitlePage> *pages;
cList<cDvbSubtitleBitmaps> *bitmaps;
tColor yuv2rgb(int Y, int Cb, int Cr);
diff --git a/eit.c b/eit.c
index 37a4a4b..ed16163 100644
--- a/eit.c
+++ b/eit.c
@@ -8,7 +8,7 @@
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
* Adapted to 'libsi' for VDR 1.3.0 by Marcel Wiesweg <marcel.wiesweg@gmx.de>.
*
- * $Id: eit.c 2.11 2010/01/08 15:17:09 kls Exp $
+ * $Id: eit.c 2.12 2010/05/14 14:08:35 kls Exp $
*/
#include "eit.h"
@@ -257,7 +257,7 @@ cEIT::cEIT(cSchedules *Schedules, int Source, u_char Tid, const u_char *Data, bo
SI::ComponentDescriptor *cd = (SI::ComponentDescriptor *)d;
uchar Stream = cd->getStreamContent();
uchar Type = cd->getComponentType();
- if (1 <= Stream && Stream <= 4 && Type != 0) { // 1=video, 2=audio, 3=subtitles, 4=AC3
+ if (1 <= Stream && Stream <= 6 && Type != 0) { // 1=MPEG2-video, 2=MPEG1-audio, 3=subtitles, 4=AC3-audio, 5=H.264-video, 6=HEAAC-audio
if (!Components)
Components = new cComponents;
char buffer[Utf8BufSize(256)];
diff --git a/keys.c b/keys.c
index f05e937..3b7c27c 100644
--- a/keys.c
+++ b/keys.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: keys.c 2.0 2008/02/10 14:08:48 kls Exp $
+ * $Id: keys.c 2.1 2010/04/05 10:05:58 kls Exp $
*/
#include "keys.h"
@@ -56,6 +56,7 @@ static tKey keyTable[] = { // "Up" and "Down" must be the first two keys!
{ kRecordings, trNOOP("Key$Recordings") },
{ kSetup, trNOOP("Key$Setup") },
{ kCommands, trNOOP("Key$Commands") },
+ { kUser0, trNOOP("Key$User0") },
{ kUser1, trNOOP("Key$User1") },
{ kUser2, trNOOP("Key$User2") },
{ kUser3, trNOOP("Key$User3") },
diff --git a/keys.h b/keys.h
index 2d2e46c..3cc4371 100644
--- a/keys.h
+++ b/keys.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: keys.h 2.0 2007/08/26 12:34:50 kls Exp $
+ * $Id: keys.h 2.1 2010/04/05 10:06:04 kls Exp $
*/
#ifndef __KEYS_H
@@ -50,7 +50,7 @@ enum eKeys { // "Up" and "Down" must be the first two keys!
kRecordings,
kSetup,
kCommands,
- kUser1, kUser2, kUser3, kUser4, kUser5, kUser6, kUser7, kUser8, kUser9,
+ kUser0, kUser1, kUser2, kUser3, kUser4, kUser5, kUser6, kUser7, kUser8, kUser9,
kNone,
kKbd,
// The following codes are used internally:
diff --git a/menu.c b/menu.c
index e3b49ce..19cfabb 100644
--- a/menu.c
+++ b/menu.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: menu.c 2.21 2010/03/12 16:03:07 kls Exp $
+ * $Id: menu.c 2.24 2010/06/06 09:56:16 kls Exp $
*/
#include "menu.h"
@@ -210,16 +210,18 @@ cMenuEditChannel::cMenuEditChannel(cChannel *Channel, bool New)
{
channel = Channel;
sourceParam = NULL;
+ *name = 0;
if (channel) {
data = *channel;
+ strn0cpy(name, data.name, sizeof(name));
if (New) {
channel = NULL;
data.nid = 0;
data.tid = 0;
data.rid = 0;
}
- Setup();
}
+ Setup();
}
void cMenuEditChannel::Setup(void)
@@ -229,7 +231,6 @@ void cMenuEditChannel::Setup(void)
Clear();
// Parameters for all types of sources:
- strn0cpy(name, data.name, sizeof(name));
Add(new cMenuEditStrItem( tr("Name"), name, sizeof(name)));
Add(new cMenuEditSrcItem( tr("Source"), &data.source));
Add(new cMenuEditIntItem( tr("Frequency"), &data.frequency));
@@ -2568,6 +2569,7 @@ void cMenuSetupOSD::Set(void)
Add(new cMenuEditBoolItem(tr("Setup.OSD$Menu key closes"), &data.MenuKeyCloses));
Add(new cMenuEditBoolItem(tr("Setup.OSD$Recording directories"), &data.RecordingDirs));
Add(new cMenuEditBoolItem(tr("Setup.OSD$Folders in timer menu"), &data.FoldersInTimerMenu));
+ Add(new cMenuEditBoolItem(tr("Setup.OSD$Number keys for characters"), &data.NumberKeysForChars));
SetCurrent(Get(current));
Display();
}
diff --git a/menuitems.c b/menuitems.c
index 7faf2b7..c5eba6e 100644
--- a/menuitems.c
+++ b/menuitems.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: menuitems.c 2.6 2010/02/16 14:44:35 kls Exp $
+ * $Id: menuitems.c 2.7 2010/06/06 10:37:08 kls Exp $
*/
#include "menuitems.h"
@@ -488,6 +488,20 @@ uint cMenuEditStrItem::Inc(uint c, bool Up)
return *p;
}
+void cMenuEditStrItem::Type(uint c)
+{
+ if (insert && lengthUtf8 < length - 1)
+ Insert();
+ valueUtf8[pos] = c;
+ if (pos < length - 2)
+ pos++;
+ if (pos >= lengthUtf8) {
+ valueUtf8[pos] = ' ';
+ valueUtf8[pos + 1] = 0;
+ lengthUtf8 = pos + 1;
+ }
+}
+
void cMenuEditStrItem::Insert(void)
{
memmove(valueUtf8 + pos + 1, valueUtf8 + pos, (lengthUtf8 - pos + 1) * sizeof(*valueUtf8));
@@ -597,39 +611,43 @@ eOSState cMenuEditStrItem::ProcessKey(eKeys Key)
case k0|k_Repeat ... k9|k_Repeat:
case k0 ... k9: {
if (InEditMode()) {
- if (!SameKey) {
- if (!newchar)
- AdvancePos();
- currentCharUtf8 = NULL;
- }
- if (!currentCharUtf8 || !*currentCharUtf8 || *currentCharUtf8 == '\t') {
- // find the beginning of the character map entry for Key
- int n = NORMALKEY(Key) - k0;
- currentCharUtf8 = charMapUtf8;
- while (n > 0 && *currentCharUtf8) {
- if (*currentCharUtf8++ == '\t')
- n--;
+ if (Setup.NumberKeysForChars) {
+ if (!SameKey) {
+ if (!newchar)
+ AdvancePos();
+ currentCharUtf8 = NULL;
+ }
+ if (!currentCharUtf8 || !*currentCharUtf8 || *currentCharUtf8 == '\t') {
+ // find the beginning of the character map entry for Key
+ int n = NORMALKEY(Key) - k0;
+ currentCharUtf8 = charMapUtf8;
+ while (n > 0 && *currentCharUtf8) {
+ if (*currentCharUtf8++ == '\t')
+ n--;
+ }
+ // find first allowed character
+ while (*currentCharUtf8 && *currentCharUtf8 != '\t' && !IsAllowed(*currentCharUtf8))
+ currentCharUtf8++;
+ }
+ if (*currentCharUtf8 && *currentCharUtf8 != '\t') {
+ if (insert && newchar) {
+ // create a new character in insert mode
+ if (lengthUtf8 < length - 1)
+ Insert();
}
- // find first allowed character
- while (*currentCharUtf8 && *currentCharUtf8 != '\t' && !IsAllowed(*currentCharUtf8))
+ valueUtf8[pos] = *currentCharUtf8;
+ if (uppercase)
+ valueUtf8[pos] = Utf8to(upper, valueUtf8[pos]);
+ // find next allowed character
+ do {
currentCharUtf8++;
- }
- if (*currentCharUtf8 && *currentCharUtf8 != '\t') {
- if (insert && newchar) {
- // create a new character in insert mode
- if (lengthUtf8 < length - 1)
- Insert();
+ } while (*currentCharUtf8 && *currentCharUtf8 != '\t' && !IsAllowed(*currentCharUtf8));
+ newchar = false;
+ autoAdvanceTimeout.Set(AUTO_ADVANCE_TIMEOUT);
}
- valueUtf8[pos] = *currentCharUtf8;
- if (uppercase)
- valueUtf8[pos] = Utf8to(upper, valueUtf8[pos]);
- // find next allowed character
- do {
- currentCharUtf8++;
- } while (*currentCharUtf8 && *currentCharUtf8 != '\t' && !IsAllowed(*currentCharUtf8));
- newchar = false;
- autoAdvanceTimeout.Set(AUTO_ADVANCE_TIMEOUT);
}
+ else
+ Type('0' + NORMALKEY(Key) - k0);
}
else
return cMenuEditItem::ProcessKey(Key);
@@ -645,19 +663,8 @@ eOSState cMenuEditStrItem::ProcessKey(eKeys Key)
default: if (InEditMode() && BASICKEY(Key) == kKbd) {
int c = KEYKBD(Key);
if (c <= 0xFF) { // FIXME what about other UTF-8 characters?
- uint *p = IsAllowed(Utf8to(lower, c));
- if (p) {
- if (insert && lengthUtf8 < length - 1)
- Insert();
- valueUtf8[pos] = c;
- if (pos < length - 2)
- pos++;
- if (pos >= lengthUtf8) {
- valueUtf8[pos] = ' ';
- valueUtf8[pos + 1] = 0;
- lengthUtf8 = pos + 1;
- }
- }
+ if (IsAllowed(Utf8to(lower, c)))
+ Type(c);
else {
switch (c) {
case 0x7F: // backspace
diff --git a/menuitems.h b/menuitems.h
index 4805e3f..6e8f108 100644
--- a/menuitems.h
+++ b/menuitems.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: menuitems.h 2.3 2010/02/21 13:58:21 kls Exp $
+ * $Id: menuitems.h 2.4 2010/06/06 10:32:38 kls Exp $
*/
#ifndef __MENUITEMS_H
@@ -108,6 +108,7 @@ private:
void AdvancePos(void);
virtual void Set(void);
uint Inc(uint c, bool Up);
+ void Type(uint c);
void Insert(void);
void Delete(void);
protected:
diff --git a/osd.c b/osd.c
index cc60337..9d4e6a4 100644
--- a/osd.c
+++ b/osd.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: osd.c 2.9 2010/01/22 15:58:39 kls Exp $
+ * $Id: osd.c 2.10 2010/05/02 13:56:53 kls Exp $
*/
#include "osd.h"
@@ -360,10 +360,10 @@ bool cBitmap::SetXpm(const char *const Xpm[], bool IgnoreNone)
}
s = skipspace(s + 1);
if (strcasecmp(s, "none") == 0) {
- s = "#00000000";
NoneColorIndex = i;
- if (IgnoreNone)
- continue;
+ if (!IgnoreNone)
+ SetColor(i, clrTransparent);
+ continue;
}
if (*s != '#') {
esyslog("ERROR: unknown color code in XPM: '%c'", *s);
diff --git a/pat.c b/pat.c
index 0d084e5..56ad5ae 100644
--- a/pat.c
+++ b/pat.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: pat.c 2.8 2010/03/06 12:00:30 kls Exp $
+ * $Id: pat.c 2.11 2010/06/05 13:26:47 kls Exp $
*/
#include "pat.h"
@@ -332,7 +332,9 @@ void cPatFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
int Ppid = 0;
int Vtype = 0;
int Apids[MAXAPIDS + 1] = { 0 }; // these lists are zero-terminated
+ int Atypes[MAXDPIDS + 1] = { 0 };
int Dpids[MAXDPIDS + 1] = { 0 };
+ int Dtypes[MAXDPIDS + 1] = { 0 };
int Spids[MAXSPIDS + 1] = { 0 };
uchar SubtitlingTypes[MAXSPIDS + 1] = { 0 };
uint16_t CompositionPageIds[MAXSPIDS + 1] = { 0 };
@@ -358,9 +360,12 @@ void cPatFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
break;
case 3: // STREAMTYPE_11172_AUDIO
case 4: // STREAMTYPE_13818_AUDIO
+ case 0x0F: // ISO/IEC 13818-7 Audio with ADTS transport sytax
+ case 0x11: // ISO/IEC 14496-3 Audio with LATM transport syntax
{
if (NumApids < MAXAPIDS) {
Apids[NumApids] = esPid;
+ Atypes[NumApids] = stream.getStreamType();
SI::Descriptor *d;
for (SI::Loop::Iterator it; (d = stream.streamDescriptors.getNext(it)); ) {
switch (d->getDescriptorTag()) {
@@ -395,12 +400,15 @@ void cPatFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
//XXX case 8: // STREAMTYPE_13818_DSMCC
{
int dpid = 0;
+ int dtype = 0;
char lang[MAXLANGCODE1] = { 0 };
SI::Descriptor *d;
for (SI::Loop::Iterator it; (d = stream.streamDescriptors.getNext(it)); ) {
switch (d->getDescriptorTag()) {
case SI::AC3DescriptorTag:
+ case SI::EnhancedAC3DescriptorTag:
dpid = esPid;
+ dtype = d->getDescriptorTag();
ProcessCaDescriptors = true;
break;
case SI::SubtitlingDescriptorTag:
@@ -441,6 +449,7 @@ void cPatFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
if (dpid) {
if (NumDpids < MAXDPIDS) {
Dpids[NumDpids] = dpid;
+ Dtypes[NumDpids] = dtype;
strn0cpy(DLangs[NumDpids], lang, MAXLANGCODE1);
NumDpids++;
}
@@ -480,7 +489,7 @@ void cPatFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
}
}
if (Setup.UpdateChannels >= 2) {
- Channel->SetPids(Vpid, Ppid, Vtype, Apids, ALangs, Dpids, DLangs, Spids, SLangs, Tpid);
+ Channel->SetPids(Vpid, Ppid, Vtype, Apids, Atypes, ALangs, Dpids, Dtypes, DLangs, Spids, SLangs, Tpid);
Channel->SetCaIds(CaDescriptors->CaIds());
Channel->SetSubtitlingDescriptors(SubtitlingTypes, CompositionPageIds, AncillaryPageIds);
}
diff --git a/po/ca_ES.po b/po/ca_ES.po
index 1dd35e3..247113b 100644
--- a/po/ca_ES.po
+++ b/po/ca_ES.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2008-03-02 19:02+0100\n"
"Last-Translator: Luca Olivetti <luca@ventoso.org>\n"
"Language-Team: Catalanian\n"
@@ -478,6 +478,9 @@ msgstr "Configuraci"
msgid "Key$Commands"
msgstr "Ordres"
+msgid "Key$User0"
+msgstr "Usuari 0"
+
msgid "Key$User1"
msgstr "Usuari 1"
@@ -839,6 +842,9 @@ msgstr "Gravacions en subcarpetes"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "Guia de Programes"
diff --git a/po/cs_CZ.po b/po/cs_CZ.po
index e8c6687..f6313ba 100644
--- a/po/cs_CZ.po
+++ b/po/cs_CZ.po
@@ -1,381 +1,382 @@
# VDR language source file.
# Copyright (C) 2008 Klaus Schmidinger <kls@tvdr.de>
# This file is distributed under the same license as the VDR package.
-# Vladimr Brta <vladimir.barta@k2atmitec.cz>, 2006, 2008
-# Ji Dobr <jdobry@centrum.cz>, 2008
+# Vladimír Bárta <vladimir.barta@k2atmitec.cz>, 2006, 2008
+# Jiří Dobrý <jdobry@centrum.cz>, 2008
+# Radek Šťastný <dedkus@gmail.com>, 2010
#
msgid ""
msgstr ""
-"Project-Id-Version: VDR 1.6.0\n"
+"Project-Id-Version: VDR 1.7.14\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
-"PO-Revision-Date: 2008-02-28 15:00+0200\n"
-"Last-Translator: Vladimr Brta <vladimir.barta@k2atmitec.cz>, Ji Dobr <jdobry@centrum.cz>\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
+"PO-Revision-Date: 2010-05-06 11:00+0200\n"
+"Last-Translator: Radek Šťastný <dedkus@gmail.com>\n"
"Language-Team: Czech\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=ISO-8859-2\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "*** Invalid Channel ***"
-msgstr "*** Neplatn kanl ***"
+msgstr "*** Neplatný kanál ***"
msgid "Channel not available!"
-msgstr "Kanl nen dostupn!"
+msgstr "Kanál není dostupný!"
msgid "Can't start Transfer Mode!"
-msgstr "Nelze zat s penosem"
+msgstr "Nelze začít s přenosem"
msgid "off"
msgstr "vyp."
msgid "on"
-msgstr ""
+msgstr "zap. "
msgid "auto"
msgstr "auto"
msgid "none"
-msgstr "dn"
+msgstr "žádný"
msgid "Polarization"
msgstr "Polarizace"
msgid "System"
-msgstr ""
+msgstr "Systém"
msgid "Srate"
-msgstr "Srate"
+msgstr ""
msgid "Inversion"
-msgstr "Inversion"
+msgstr ""
msgid "CoderateH"
-msgstr "CoderateH"
+msgstr ""
msgid "CoderateL"
-msgstr "CoderateL"
+msgstr ""
msgid "Modulation"
msgstr "Modulace"
msgid "Bandwidth"
-msgstr "ka psma"
+msgstr "Šířka pásma"
msgid "Transmission"
-msgstr "Penos"
+msgstr "Přenos"
msgid "Guard"
-msgstr "Guard"
+msgstr "Ochranný interval"
msgid "Hierarchy"
-msgstr "Hierarchy"
+msgstr "Hierarchický mód"
msgid "Rolloff"
msgstr ""
msgid "Starting EPG scan"
-msgstr "Zan prohledvn EPG"
+msgstr "Začíná prohledávání EPG"
msgid "Content$Movie/Drama"
-msgstr ""
+msgstr "drama"
msgid "Content$Detective/Thriller"
-msgstr ""
+msgstr "thriller"
msgid "Content$Adventure/Western/War"
-msgstr ""
+msgstr "dobrodruřný/western/válečný"
msgid "Content$Science Fiction/Fantasy/Horror"
-msgstr ""
+msgstr "Science Fiction/Fantasy/Horror"
msgid "Content$Comedy"
-msgstr ""
+msgstr "komedie"
msgid "Content$Soap/Melodrama/Folkloric"
-msgstr ""
+msgstr "mýdlová opera/melodrama/folklorní"
msgid "Content$Romance"
-msgstr ""
+msgstr "romantický"
msgid "Content$Serious/Classical/Religious/Historical Movie/Drama"
-msgstr ""
+msgstr "skutečný/klasický/náboženství/historický film/drama"
msgid "Content$Adult Movie/Drama"
-msgstr ""
+msgstr "film pro dospělé/drama"
msgid "Content$News/Current Affairs"
-msgstr ""
+msgstr "aktuální události"
msgid "Content$News/Weather Report"
-msgstr ""
+msgstr "počasí"
msgid "Content$News Magazine"
-msgstr ""
+msgstr "zprávy"
msgid "Content$Documentary"
-msgstr ""
+msgstr "dokumentární"
msgid "Content$Discussion/Inverview/Debate"
-msgstr ""
+msgstr "diskuze/rozhovor/debata"
msgid "Content$Show/Game Show"
-msgstr ""
+msgstr "zábavné hry"
msgid "Content$Game Show/Quiz/Contest"
-msgstr ""
+msgstr "soutěžní/vědomostní/soutěžní hra"
msgid "Content$Variety Show"
-msgstr ""
+msgstr "varieté"
msgid "Content$Talk Show"
-msgstr ""
+msgstr "diskuzní pořad"
msgid "Content$Sports"
-msgstr ""
+msgstr "sport"
msgid "Content$Special Event"
-msgstr ""
+msgstr "zvláštní událost"
msgid "Content$Sport Magazine"
-msgstr ""
+msgstr "sportovní pořad"
msgid "Content$Football/Soccer"
-msgstr ""
+msgstr "fotbal"
msgid "Content$Tennis/Squash"
-msgstr ""
+msgstr "squash"
msgid "Content$Team Sports"
-msgstr ""
+msgstr "týmové sporty"
msgid "Content$Athletics"
-msgstr ""
+msgstr "atletika"
msgid "Content$Motor Sport"
-msgstr ""
+msgstr "motorismus"
msgid "Content$Water Sport"
-msgstr ""
+msgstr "vodní sporty"
msgid "Content$Winter Sports"
-msgstr ""
+msgstr "zimní sporty"
msgid "Content$Equestrian"
-msgstr ""
+msgstr "jezdectví"
msgid "Content$Martial Sports"
-msgstr ""
+msgstr "bojové sporty"
msgid "Content$Children's/Youth Programme"
-msgstr ""
+msgstr "pro děti a mládež"
msgid "Content$Pre-school Children's Programme"
-msgstr ""
+msgstr "pro předškloní děti"
msgid "Content$Entertainment Programme for 6 to 14"
-msgstr ""
+msgstr "zábavné pro děti od 6 do 14 let"
msgid "Content$Entertainment Programme for 10 to 16"
-msgstr ""
+msgstr "zábavné pro děti od 10 do 16 let"
msgid "Content$Informational/Educational/School Programme"
-msgstr ""
+msgstr "informační/zpravdajský/školní program"
msgid "Content$Cartoons/Puppets"
-msgstr ""
+msgstr "kreslené / loutky"
msgid "Content$Music/Ballet/Dance"
-msgstr ""
+msgstr "hudba/balet/tanec"
msgid "Content$Rock/Pop"
-msgstr ""
+msgstr "rock/pop"
msgid "Content$Serious/Classical Music"
-msgstr ""
+msgstr "vážná/klasická hudba"
msgid "Content$Folk/Tradional Music"
-msgstr ""
+msgstr "folk/country"
msgid "Content$Jazz"
-msgstr ""
+msgstr "jazz"
msgid "Content$Musical/Opera"
-msgstr ""
+msgstr "muzikál/opera"
msgid "Content$Ballet"
-msgstr ""
+msgstr "balet"
msgid "Content$Arts/Culture"
-msgstr ""
+msgstr "umění/kultura"
msgid "Content$Performing Arts"
-msgstr ""
+msgstr "múzické umění"
msgid "Content$Fine Arts"
-msgstr ""
+msgstr "výtvarné umění"
msgid "Content$Religion"
-msgstr ""
+msgstr "náboženství"
msgid "Content$Popular Culture/Traditional Arts"
-msgstr ""
+msgstr "populární kultura/tradiční umění"
msgid "Content$Literature"
-msgstr ""
+msgstr "literatura"
msgid "Content$Film/Cinema"
-msgstr ""
+msgstr "film/kino"
msgid "Content$Experimental Film/Video"
-msgstr ""
+msgstr "experimentální film/video"
msgid "Content$Broadcasting/Press"
-msgstr ""
+msgstr "vysílání/tisk"
msgid "Content$New Media"
-msgstr ""
+msgstr "nová média"
msgid "Content$Arts/Culture Magazine"
-msgstr ""
+msgstr "kulturní magazín"
msgid "Content$Fashion"
-msgstr ""
+msgstr "móda"
msgid "Content$Social/Political/Economics"
-msgstr ""
+msgstr "sociální/politické/ekonomické"
msgid "Content$Magazine/Report/Documentary"
-msgstr ""
+msgstr "časopis/report/dokumentární"
msgid "Content$Economics/Social Advisory"
-msgstr ""
+msgstr "ekonomika/sociální poradenství"
msgid "Content$Remarkable People"
-msgstr ""
+msgstr "významné osobnosti"
msgid "Content$Education/Science/Factual"
-msgstr ""
+msgstr "vzdělávání/věda/fakta"
msgid "Content$Nature/Animals/Environment"
-msgstr ""
+msgstr "příroda/zvířata/životní prostředí"
msgid "Content$Technology/Natural Sciences"
-msgstr ""
+msgstr "technologie/přírodní vědy"
msgid "Content$Medicine/Physiology/Psychology"
-msgstr ""
+msgstr "medicína/filozofie/psychologie"
msgid "Content$Foreign Countries/Expeditions"
-msgstr ""
+msgstr "zahraničí/expedice"
msgid "Content$Social/Spiritual Sciences"
-msgstr ""
+msgstr "sociální / duchovní vědy"
msgid "Content$Further Education"
-msgstr ""
+msgstr "další vzdělávání"
msgid "Content$Languages"
-msgstr ""
+msgstr "jazyky"
msgid "Content$Leisure/Hobbies"
-msgstr ""
+msgstr "volný čas/koníčky"
msgid "Content$Tourism/Travel"
-msgstr ""
+msgstr "turistika/cestování"
msgid "Content$Handicraft"
-msgstr ""
+msgstr "řemesla"
msgid "Content$Motoring"
-msgstr ""
+msgstr "motorismus"
msgid "Content$Fitness & Health"
-msgstr ""
+msgstr "fittens a zdraví"
msgid "Content$Cooking"
-msgstr ""
+msgstr "vaření"
msgid "Content$Advertisement/Shopping"
-msgstr ""
+msgstr "reklama"
msgid "Content$Gardening"
-msgstr ""
+msgstr "zahradnictví"
msgid "Content$Original Language"
-msgstr ""
+msgstr "původní jazyky"
msgid "Content$Black & White"
-msgstr ""
+msgstr "černobílé"
msgid "Content$Unpublished"
-msgstr ""
+msgstr "nepublikované"
msgid "Content$Live Broadcast"
-msgstr ""
+msgstr "živé vysílání"
#, c-format
msgid "ParentalRating$from %d"
-msgstr ""
+msgstr "Rodičovká kontrola od %d"
msgid "No title"
-msgstr "Bez nzvu"
+msgstr "Bez názvu"
#. TRANSLATORS: The name of the language, as written natively
msgid "LanguageName$English"
-msgstr "esky"
+msgstr "Česky"
#. TRANSLATORS: The 3-letter code of the language
msgid "LanguageCode$eng"
msgstr "cze"
msgid "Phase 1: Detecting RC code type"
-msgstr "Fze 1: Detekce typu kdu"
+msgstr "Fáze 1: Detekce typu kódu"
msgid "Press any key on the RC unit"
-msgstr "Stisknte libovolnou klvesu ovldn"
+msgstr "Stiskněte libovolnou klávesu ovládání"
msgid "RC code detected!"
-msgstr "Kd byl detekovn!"
+msgstr "Kód byl detekován!"
msgid "Do not press any key..."
-msgstr "Nemakejte dn klvesy..."
+msgstr "Nemačkejte žádné klávesy..."
msgid "Phase 2: Learning specific key codes"
-msgstr "Fze 2: Uen konkrtnho kdu klves"
+msgstr "Fáze 2: Učení konkrétního kódu kláves"
#, c-format
msgid "Press key for '%s'"
-msgstr "Stisknte klvesu pro '%s'"
+msgstr "Stiskněte klávesu pro '%s'"
msgid "Press 'Up' to confirm"
-msgstr "Stisknte 'Nahoru' pro potvrzen"
+msgstr "Stiskněte 'Nahoru' pro potvrzení"
msgid "Press 'Down' to continue"
-msgstr "Stisknte 'Dol' pro pokraovn"
+msgstr "Stiskněte 'Dolů' pro pokračování"
msgid "(press 'Up' to go back)"
-msgstr "(stisknte 'Nahoru' pro zpt)"
+msgstr "(stiskněte 'Nahoru' pro zpět)"
msgid "(press 'Down' to end key definition)"
-msgstr "(stisknte 'Dol' pro ukonen)"
+msgstr "(stiskněte 'Dolů' pro ukončení)"
msgid "(press 'Menu' to skip this key)"
-msgstr "(stisknte 'Menu' pro peskoen definice klvesy)"
+msgstr "(stiskněte 'Menu' pro přeskočení definice klávesy)"
msgid "Learning Remote Control Keys"
-msgstr "Uen kd dlkovho ovldn"
+msgstr "Učení kódů dálkového ovládání"
msgid "Phase 3: Saving key codes"
-msgstr "Fze 3: Uloen kd"
+msgstr "Fáze 3: Uložení kódů"
msgid "Press 'Up' to save, 'Down' to cancel"
-msgstr "Stisknte 'Nahoru' pro uloen, 'Dol' pro zruen"
+msgstr "Stiskněte 'Nahoru' pro uložení, 'Dolů' pro zrušení"
msgid "Key$Up"
msgstr "Nahoru"
msgid "Key$Down"
-msgstr "Dol"
+msgstr "Dolů"
msgid "Key$Menu"
msgstr "Menu"
@@ -384,7 +385,7 @@ msgid "Key$Ok"
msgstr "Ok"
msgid "Key$Back"
-msgstr "Zpt"
+msgstr "Zpět"
msgid "Key$Left"
msgstr "Vlevo"
@@ -393,55 +394,55 @@ msgid "Key$Right"
msgstr "Vpravo"
msgid "Key$Red"
-msgstr "erven"
+msgstr "Červený"
msgid "Key$Green"
-msgstr "Zelen"
+msgstr "Zelený"
msgid "Key$Yellow"
-msgstr "lut"
+msgstr "Žlutý"
msgid "Key$Blue"
-msgstr "Modr"
+msgstr "Modrý"
msgid "Key$Info"
msgstr "Info"
msgid "Key$Play"
-msgstr "Pehrt"
+msgstr "Přehrát"
msgid "Key$Pause"
-msgstr "Peruit"
+msgstr "Přerušit"
msgid "Key$Stop"
msgstr "Zastavit"
msgid "Key$Record"
-msgstr "Nahrt"
+msgstr "Nahrát"
msgid "Key$FastFwd"
-msgstr "Dopedu"
+msgstr "Dopředu"
msgid "Key$FastRew"
msgstr "Dozadu"
msgid "Key$Next"
-msgstr "Dle"
+msgstr "Dále"
msgid "Key$Prev"
-msgstr "Zpt"
+msgstr "Zpět"
msgid "Key$Power"
-msgstr "Vypna"
+msgstr "Vypínač"
msgid "Key$Channel+"
-msgstr "Kanl+"
+msgstr "Kanál+"
msgid "Key$Channel-"
-msgstr "Kanl-"
+msgstr "Kanál-"
msgid "Key$PrevChannel"
-msgstr "Pedchzejc kanl"
+msgstr "Předcházející kanál"
msgid "Key$Volume+"
msgstr "Hlasitost+"
@@ -462,46 +463,49 @@ msgid "Key$Schedule"
msgstr "Program (EPG)"
msgid "Key$Channels"
-msgstr "Kanly"
+msgstr "Kanály"
msgid "Key$Timers"
-msgstr "asovae"
+msgstr "Časovače"
msgid "Key$Recordings"
-msgstr "Nahrvky"
+msgstr "Nahrávky"
msgid "Key$Setup"
-msgstr "Nastaven"
+msgstr "Nastavení"
msgid "Key$Commands"
-msgstr "Pkazy"
+msgstr "Příkazy"
+
+msgid "Key$User0"
+msgstr "Uživatel0"
msgid "Key$User1"
-msgstr "Uivatel1"
+msgstr "Uživatel1"
msgid "Key$User2"
-msgstr "Uivatel2"
+msgstr "Uživatel2"
msgid "Key$User3"
-msgstr "Uivatel3"
+msgstr "Uživatel3"
msgid "Key$User4"
-msgstr "Uivatel4"
+msgstr "Uživatel4"
msgid "Key$User5"
-msgstr "Uivatel5"
+msgstr "Uživatel5"
msgid "Key$User6"
-msgstr "Uivatel6"
+msgstr "Uživatel6"
msgid "Key$User7"
-msgstr "Uivatel7"
+msgstr "Uživatel7"
msgid "Key$User8"
-msgstr "Uivatel8"
+msgstr "Uživatel8"
msgid "Key$User9"
-msgstr "Uivatel9"
+msgstr "Uživatel9"
msgid "Disk"
msgstr "Disk"
@@ -510,16 +514,16 @@ msgid "free"
msgstr "volno"
msgid "Free To Air"
-msgstr "voln"
+msgstr "volný"
msgid "encrypted"
-msgstr "kdovan"
+msgstr "kódovaný"
msgid "Edit channel"
-msgstr "Editace kanlu"
+msgstr "Editace kanálu"
msgid "Name"
-msgstr "Nzev"
+msgstr "Název"
msgid "Source"
msgstr "Zdroj"
@@ -561,68 +565,68 @@ msgid "Sid"
msgstr "Sid"
msgid "Channel settings are not unique!"
-msgstr "Nastaven kanl nejsou uniktn!"
+msgstr "Nastavení kanálu není jedinečné!"
msgid "Channels"
-msgstr "Kanly"
+msgstr "Kanály"
msgid "Button$Edit"
msgstr "Editace"
msgid "Button$New"
-msgstr "Nov"
+msgstr "Nový"
msgid "Button$Delete"
msgstr "Smazat"
msgid "Button$Mark"
-msgstr "Oznait"
+msgstr "Označit"
msgid "Channel is being used by a timer!"
-msgstr "Kanl je dren asovaem nahrvek!"
+msgstr "Na kanálu se právě nahrává!!"
msgid "Delete channel?"
-msgstr "Smazat kanl?"
+msgstr "Smazat kanál?"
msgid "Edit folder"
-msgstr ""
+msgstr "Změna složky"
msgid "New folder"
-msgstr ""
+msgstr "Nová složka"
msgid "Sub folder"
-msgstr ""
+msgstr "Podsložka"
msgid "Folder name already exists!"
-msgstr ""
+msgstr "Složka již existuje!"
#, c-format
msgid "Folder name must not contain '%c'!"
-msgstr ""
+msgstr "Jméno složky nesmí obsahovat '%c'!"
msgid "Button$Select"
-msgstr ""
+msgstr "Vybrat"
msgid "Delete folder and all sub folders?"
-msgstr ""
+msgstr "Smazat složku včetně podsložek?"
msgid "Delete folder?"
-msgstr ""
+msgstr "Smazat složku?"
msgid "Edit timer"
-msgstr "Editace asovae"
+msgstr "Editace nahrávání"
msgid "Active"
-msgstr "Aktivn"
+msgstr "Aktivní"
msgid "Channel"
-msgstr "Kanl"
+msgstr "Kanál"
msgid "Day"
msgstr "Den"
msgid "Start"
-msgstr "Zatek"
+msgstr "Začátek"
msgid "Stop"
msgstr "Konec"
@@ -634,22 +638,22 @@ msgid "Priority"
msgstr "Priorita"
msgid "Lifetime"
-msgstr "ivotnost"
+msgstr "Životnost"
msgid "File"
msgstr "Soubor"
msgid "Button$Folder"
-msgstr ""
+msgstr "Složka"
msgid "First day"
-msgstr "Prvn den"
+msgstr "První den"
msgid "Select folder"
-msgstr ""
+msgstr "Vybrat složku"
msgid "Timers"
-msgstr "asovae"
+msgstr "Nahrávání"
msgid "Button$On/Off"
msgstr "Zap./Vyp."
@@ -658,40 +662,40 @@ msgid "Button$Info"
msgstr "Info"
msgid "Delete timer?"
-msgstr "Smazat asova?"
+msgstr "Smazat nahrávání?"
msgid "Timer still recording - really delete?"
-msgstr "Probh nahrvn - opravdu smazat?"
+msgstr "Probíhá nahrávání - opravdu smazat?"
msgid "Event"
-msgstr "Udlost"
+msgstr "Událost"
msgid "Button$Timer"
-msgstr "asova"
+msgstr "Nahrávání"
msgid "Button$Record"
-msgstr "Nahrt"
+msgstr "Nahrát"
msgid "Button$Switch"
-msgstr "Pepnout"
+msgstr "Přepnout"
msgid "What's on now?"
-msgstr "Aktuln program"
+msgstr "Aktuální program"
msgid "What's on next?"
-msgstr "Nsledujc program"
+msgstr "Následující program"
msgid "Button$Next"
-msgstr "Dal"
+msgstr "Další"
msgid "Button$Now"
-msgstr "Nyn"
+msgstr "Nyní"
msgid "Button$Schedule"
msgstr "Program"
msgid "Can't switch channel!"
-msgstr "Kanl nelze pepnout!"
+msgstr "Kanál nelze přepnout!"
#, c-format
msgid "Schedule - %s"
@@ -699,50 +703,50 @@ msgstr "Program - %s"
#, c-format
msgid "This event - %s"
-msgstr "Tato udlost - %s"
+msgstr "Tato událost - %s"
msgid "This event - all channels"
-msgstr "Tato udlost - vechny kanly"
+msgstr "Tato událost - všechny kanály"
msgid "All events - all channels"
-msgstr "Vechny udlost - vechny kanly"
+msgstr "Všechny události - všechny kanály"
#, c-format
msgid "Please enter %d digits!"
-msgstr "Prosm vlote %d znak!"
+msgstr "Prosím vložte %d znaků!"
msgid "CAM not responding!"
-msgstr "CAM neodpovd!"
+msgstr "CAM neodpovídá!"
msgid "Recording info"
-msgstr "Detail nahrvky"
+msgstr "Detail nahrávky"
msgid "Button$Play"
-msgstr "Pehrt"
+msgstr "Přehrát"
msgid "Button$Rewind"
-msgstr "Na zatek"
+msgstr "Na začátek"
msgid "Recordings"
-msgstr "Nahrvky"
+msgstr "Nahrávky"
msgid "Button$Open"
-msgstr "Otevt"
+msgstr "Otevřít"
msgid "Commands"
-msgstr "Pkazy"
+msgstr "Příkazy"
msgid "Error while accessing recording!"
-msgstr "Chyba pi pstupu k nahrvkm!"
+msgstr "Chyba při přístupu k nahrávkám!"
msgid "Delete recording?"
-msgstr "Smazat nahrvku?"
+msgstr "Smazat nahrávku?"
msgid "Error while deleting recording!"
-msgstr "Chyba pi mazn nahrvky!"
+msgstr "Chyba při mazání nahrávky!"
msgid "Recording commands"
-msgstr "Pkazy nahrvn"
+msgstr "Příkazy nahrávání"
msgid "never"
msgstr "nikdy"
@@ -751,7 +755,7 @@ msgid "skin dependent"
msgstr "podle vzhledu"
msgid "always"
-msgstr "vdy"
+msgstr "vždy"
msgid "OSD"
msgstr "OSD"
@@ -763,108 +767,111 @@ msgid "Setup.OSD$Skin"
msgstr "Vzhled"
msgid "Setup.OSD$Theme"
-msgstr "Tma"
+msgstr "Téma"
msgid "Setup.OSD$Left (%)"
msgstr "Vlevo (%)"
msgid "Setup.OSD$Top (%)"
-msgstr "Nahoe (%)"
+msgstr "Nahoře (%)"
msgid "Setup.OSD$Width (%)"
-msgstr "ka (%)"
+msgstr "Šířka (%)"
msgid "Setup.OSD$Height (%)"
-msgstr "Vka (%)"
+msgstr "Výška (%)"
msgid "Setup.OSD$Message time (s)"
-msgstr "as zobrazen zpvy (s)"
+msgstr "Čas zobrazení zprávy (s)"
msgid "Setup.OSD$Use small font"
-msgstr "Pouvat mal psmo"
+msgstr "Používat malé písmo"
msgid "Setup.OSD$Anti-alias"
-msgstr "Vyhladit psmo"
+msgstr "Vyhladit písmo"
msgid "Setup.OSD$Default font"
-msgstr "Vchoz psmo"
+msgstr "Výchozí písmo"
msgid "Setup.OSD$Small font"
-msgstr "Mal psmo"
+msgstr "Malé písmo"
msgid "Setup.OSD$Fixed font"
-msgstr "Fixn psmo"
+msgstr "Fixní písmo"
msgid "Setup.OSD$Default font size (%)"
-msgstr "Velikost vchozho psma (%)"
+msgstr "Velikost výchozího písma (%)"
msgid "Setup.OSD$Small font size (%)"
-msgstr "Velikost malho psma (%)"
+msgstr "Velikost malého písma (%)"
msgid "Setup.OSD$Fixed font size (%)"
-msgstr "Velikost fixnho psma (%)"
+msgstr "Velikost fixního písma (%)"
msgid "Setup.OSD$Channel info position"
-msgstr "Pozice informace o kanlu"
+msgstr "Pozice informace o kanálu"
msgid "bottom"
msgstr "dole"
msgid "top"
-msgstr "hahoe"
+msgstr "hahoře"
msgid "Setup.OSD$Channel info time (s)"
-msgstr "as zobr. informace o kanlu (s)"
+msgstr "Čas zobr. informace o kanálu (s)"
msgid "Setup.OSD$Info on channel switch"
-msgstr "Informace pi zmn kanlu"
+msgstr "Informace při změně kanálu"
msgid "Setup.OSD$Timeout requested channel info"
-msgstr "asov limit informace o kanlu"
+msgstr "Časový limit informace o kanálu"
msgid "Setup.OSD$Scroll pages"
msgstr "Rolovat strany"
msgid "Setup.OSD$Scroll wraps"
-msgstr "Z konce na zatek"
+msgstr "Z konce na začátek"
msgid "Setup.OSD$Menu key closes"
-msgstr "Klvesa Menu zavr"
+msgstr "Klávesa Menu zavírá"
msgid "Setup.OSD$Recording directories"
-msgstr "Seznam nahrvek"
+msgstr "Seznam nahrávek"
msgid "Setup.OSD$Folders in timer menu"
+msgstr "Složky v menu časovače"
+
+msgid "Setup.OSD$Number keys for characters"
msgstr ""
msgid "EPG"
msgstr "EPG"
msgid "Button$Scan"
-msgstr "Snmat"
+msgstr "Snímat"
msgid "Setup.EPG$EPG scan timeout (h)"
-msgstr "asov limit pro snmn EPG (h)"
+msgstr "Časový limit pro snímání EPG (h)"
msgid "Setup.EPG$EPG bugfix level"
-msgstr "EPG rove chyb"
+msgstr "EPG úroveň chyb"
msgid "Setup.EPG$EPG linger time (min)"
-msgstr "Ukazovat star EPG data (min)"
+msgstr "Ukazovat starší EPG data (min)"
msgid "Setup.EPG$Set system time"
-msgstr "Nastavit systmov as"
+msgstr "Nastavit systémový čas"
msgid "Setup.EPG$Use time from transponder"
-msgstr "Pout as z kanlu"
+msgstr "Použít čas z kanálu"
#. TRANSLATORS: note the plural!
msgid "Setup.EPG$Preferred languages"
-msgstr "Preferovan jazyky"
+msgstr "Preferované jazyky"
#. TRANSLATORS: note the singular!
msgid "Setup.EPG$Preferred language"
-msgstr "Preferovan jazyk"
+msgstr "Preferovaný jazyk"
msgid "pan&scan"
msgstr "pan&scan"
@@ -873,43 +880,43 @@ msgid "letterbox"
msgstr "letterbox"
msgid "center cut out"
-msgstr "dostedu oznout"
+msgstr "dostředu oříznout"
msgid "no"
msgstr "ne"
msgid "names only"
-msgstr "jen nzvy"
+msgstr "jen názvy"
msgid "PIDs only"
-msgstr "jen PIDs"
+msgstr "jen PID"
msgid "names and PIDs"
-msgstr "nzvy a PIDs"
+msgstr "názvy a PID"
msgid "add new channels"
-msgstr "pidat nov kanly"
+msgstr "přidat nové kanály"
msgid "add new transponders"
-msgstr "pidat nov transpondry"
+msgstr "přidat nové transpondéry"
msgid "DVB"
msgstr "DVB"
msgid "Setup.DVB$Primary DVB interface"
-msgstr "Primrn DVB interface"
+msgstr "Primární DVB zařízení"
msgid "Setup.DVB$Video format"
-msgstr "Formt videa"
+msgstr "Formát videa"
msgid "Setup.DVB$Video display format"
-msgstr "Formt zobrazen videa"
+msgstr "Formát zobrazení videa"
msgid "Setup.DVB$Use Dolby Digital"
-msgstr "Pouvat zvuk v Dolby Digital"
+msgstr "Používat zvuk v Dolby Digital"
msgid "Setup.DVB$Update channels"
-msgstr "Aktualizace kanl"
+msgstr "Aktualizace kanálů"
msgid "Setup.DVB$Audio languages"
msgstr "Jazyky zvuku"
@@ -921,43 +928,43 @@ msgid "Setup.DVB$Display subtitles"
msgstr "Zobrazovat titulky"
msgid "Setup.DVB$Subtitle languages"
-msgstr "Jazyky titulk"
+msgstr "Jazyky titulků"
msgid "Setup.DVB$Subtitle language"
-msgstr "Jazyk titulk"
+msgstr "Jazyk titulků"
msgid "Setup.DVB$Subtitle offset"
-msgstr "Posunut titulk"
+msgstr "Posunutí titulků"
msgid "Setup.DVB$Subtitle foreground transparency"
-msgstr "Prhlednost psma titulk"
+msgstr "Průhlednost písma titulků"
msgid "Setup.DVB$Subtitle background transparency"
-msgstr "Prhlednost pozad titulk"
+msgstr "Průhlednost pozadí titulků"
msgid "LNB"
msgstr "LNB"
msgid "Setup.LNB$Use DiSEqC"
-msgstr "Pouvat DiSEqC"
+msgstr "Používat DiSEqC"
msgid "Setup.LNB$SLOF (MHz)"
msgstr "SLOF (MHz)"
msgid "Setup.LNB$Low LNB frequency (MHz)"
-msgstr "Doln frekvence LNB (MHz)"
+msgstr "Dolní frekvence LNB (MHz)"
msgid "Setup.LNB$High LNB frequency (MHz)"
-msgstr "Horn frekvence LNB (MHz)"
+msgstr "Horní frekvence LNB (MHz)"
msgid "CAM reset"
msgstr "Reset CAMu"
msgid "CAM present"
-msgstr "CAM ptomen"
+msgstr "CAM přítomen"
msgid "CAM ready"
-msgstr "CAM pipraven"
+msgstr "CAM připraven"
msgid "CAM"
msgstr "CAM"
@@ -969,139 +976,139 @@ msgid "Button$Reset"
msgstr "Reset"
msgid "Opening CAM menu..."
-msgstr "Otevr se menu CAM..."
+msgstr "Otevírá se menu CAM..."
msgid "Can't open CAM menu!"
-msgstr "Menu CAM nen dostupn"
+msgstr "Menu CAM není dostupné"
msgid "CAM is in use - really reset?"
-msgstr "CAM se pouv - opravdu restartovat?"
+msgstr "CAM se používá - opravdu restartovat?"
msgid "Can't reset CAM!"
msgstr "CAM modul nelze restartovat!"
msgid "do not pause live video"
-msgstr ""
+msgstr "nepřerusovat běžící program"
msgid "confirm pause live video"
-msgstr ""
+msgstr "potvdit přerušení běžícího programu"
msgid "pause live video"
-msgstr ""
+msgstr "přerušit běžící program"
msgid "confirm"
-msgstr ""
+msgstr "potvrdit"
msgid "yes"
msgstr "ano"
msgid "Recording"
-msgstr "Nahrvn"
+msgstr "Nahrávání"
msgid "Setup.Recording$Margin at start (min)"
-msgstr "Nahrvat ped zatkem (min)"
+msgstr "Nahrávat před začátkem (min)"
msgid "Setup.Recording$Margin at stop (min)"
-msgstr "Nahrvat po konci (min)"
+msgstr "Nahrávat po konci (min)"
msgid "Setup.Recording$Primary limit"
-msgstr "Primrn limit"
+msgstr "Primární limit"
msgid "Setup.Recording$Default priority"
-msgstr "Vchoz priorita"
+msgstr "Výchozí priorita"
msgid "Setup.Recording$Default lifetime (d)"
-msgstr "Vchoz ivotnost"
+msgstr "Výchozí životnost"
msgid "Setup.Recording$Pause key handling"
-msgstr ""
+msgstr "Chování klávesy Přerušení"
msgid "Setup.Recording$Pause priority"
-msgstr "Priorita peruen"
+msgstr "Priorita přerušení"
msgid "Setup.Recording$Pause lifetime (d)"
-msgstr "ivotnost peruen (d)"
+msgstr "Životnost přerušení (d)"
msgid "Setup.Recording$Use episode name"
-msgstr "Pouvat nzev epizody"
+msgstr "Používat název epizody"
msgid "Setup.Recording$Use VPS"
-msgstr "Pouvat VPS"
+msgstr "Používat VPS"
msgid "Setup.Recording$VPS margin (s)"
-msgstr "asov rezerva pro VPS (s)"
+msgstr "Časová rezerva pro VPS (s)"
msgid "Setup.Recording$Mark instant recording"
-msgstr "Oznait okamit nahrvky"
+msgstr "Označit okamžité nahrávky"
msgid "Setup.Recording$Name instant recording"
-msgstr "Pojmenovat okamit nahrvky"
+msgstr "Pojmenovat okamžité nahrávky"
msgid "Setup.Recording$Instant rec. time (min)"
-msgstr "Dlka okamitho nahrvn (min)"
+msgstr "Délka okamžitého nahrávání (min)"
msgid "Setup.Recording$Max. video file size (MB)"
-msgstr "Maximln velikost nahrvky (MB)"
+msgstr "Maximální velikost nahrávky (MB)"
msgid "Setup.Recording$Split edited files"
-msgstr "Dlit editovan soubory"
+msgstr "Dělit editované soubory"
msgid "Setup.Recording$Delete timeshift recording"
-msgstr ""
+msgstr "Mazat nahrávky Timeshift"
msgid "Replay"
-msgstr "Pehrvn"
+msgstr "Přehrávání"
msgid "Setup.Replay$Multi speed mode"
-msgstr "Vcerychlostn md"
+msgstr "Vícerychlostní mód"
msgid "Setup.Replay$Show replay mode"
-msgstr "Zobrazit reim pehrvn"
+msgstr "Zobrazit režim přehrávání"
msgid "Setup.Replay$Resume ID"
-msgstr "ID obnoven"
+msgstr "ID obnovení"
msgid "Miscellaneous"
-msgstr "Rzn"
+msgstr "Různé"
msgid "Setup.Miscellaneous$Min. event timeout (min)"
-msgstr "Min. pauza mezi udlostmi (min)"
+msgstr "Min. pauza mezi událostmi (min)"
msgid "Setup.Miscellaneous$Min. user inactivity (min)"
-msgstr "asov limit neaktivnosti (min)"
+msgstr "Časový limit neaktivnosti (min)"
msgid "Setup.Miscellaneous$SVDRP timeout (s)"
-msgstr "asov limit SVDRP (s)"
+msgstr "Časový limit SVDRP (s)"
msgid "Setup.Miscellaneous$Zap timeout (s)"
-msgstr "asov limit Zap (s)"
+msgstr "Časový limit Zap (s)"
msgid "Setup.Miscellaneous$Channel entry timeout (ms)"
-msgstr "Prodleva pi volb kanlu (ms)"
+msgstr "Prodleva při volbě kanálu (ms)"
msgid "Setup.Miscellaneous$Initial channel"
-msgstr "Kanl po sputn"
+msgstr "Kanál po spuštění"
msgid "Setup.Miscellaneous$as before"
msgstr "jako naposledy"
msgid "Setup.Miscellaneous$Initial volume"
-msgstr "Hlasitost po sputn"
+msgstr "Hlasitost po spuštění"
msgid "Setup.Miscellaneous$Channels wrap"
msgstr ""
msgid "Setup.Miscellaneous$Emergency exit"
-msgstr "Nouzov ukonen"
+msgstr "Nouzové ukončení"
msgid "Plugins"
msgstr "Moduly"
msgid "This plugin has no setup parameters!"
-msgstr "Modul nem konfiguran parametry!"
+msgstr "Modul nemá konfigurační parametry!"
msgid "Setup"
-msgstr "Nastaven"
+msgstr "Nastavení"
msgid "Restart"
msgstr "Restart"
@@ -1111,7 +1118,7 @@ msgstr "Opravdu restartovat?"
#. TRANSLATORS: note the leading and trailing blanks!
msgid " Stop recording "
-msgstr " Zastavit nahrvn "
+msgstr " Zastavit nahrávání "
msgid "Schedule"
msgstr "Program (EPG)"
@@ -1121,197 +1128,197 @@ msgstr "VDR"
#. TRANSLATORS: note the leading blank!
msgid " Stop replaying"
-msgstr " Zastavit pehrvn"
+msgstr " Zastavit přehrávání"
msgid "Button$Audio"
msgstr "Zvuk"
msgid "Button$Pause"
-msgstr "Zastavit"
+msgstr "Přerušit"
msgid "Button$Stop"
-msgstr "Ukonit"
+msgstr "Ukončit"
msgid "Button$Resume"
-msgstr "Pokraovat"
+msgstr "Pokračovat"
#. TRANSLATORS: note the leading blank!
msgid " Cancel editing"
-msgstr " Zruit editaci"
+msgstr " Zrušit editaci"
msgid "Stop recording?"
-msgstr "Ukonit nahrvn?"
+msgstr "Ukončit nahrávání?"
msgid "Cancel editing?"
-msgstr "Zruit editaci?"
+msgstr "Zrušit editaci?"
msgid "No audio available!"
-msgstr "Zvuk nen dostupn!"
+msgstr "Zvuk není dostupný!"
msgid "No subtitles"
-msgstr "Bez titulk"
+msgstr "Bez titulků"
msgid "Button$Subtitles"
msgstr "Titulky"
msgid "No subtitles available!"
-msgstr "dn dostupn titulky!"
+msgstr "Žádné dostupné titulky!"
msgid "Not enough disk space to start recording!"
-msgstr "Nedostatek volnho msta k zapoet nahrvn!"
+msgstr "Nedostatek volného místa k započetí nahrávání!"
msgid "No free DVB device to record!"
-msgstr "dn DVB karta nen voln pro nahrvn"
+msgstr "Žádná DVB karta není volná pro nahrávání"
msgid "Pausing live video..."
-msgstr "Peruuje se bc program ..."
+msgstr "Přerušuje se běžící program ..."
msgid "Delete timeshift recording?"
-msgstr ""
+msgstr "Smazat Timeshift nahrávku?"
#. TRANSLATORS: note the trailing blank!
msgid "Jump: "
msgstr "Skok: "
msgid "No editing marks defined!"
-msgstr "Nejsou definovny editan znaky!"
+msgstr "Nejsou definovány editační značky!"
msgid "Can't start editing process!"
-msgstr "Nelze zat editan proces!"
+msgstr "Nelze začít editační proces!"
msgid "Editing process started"
-msgstr "Editan proces zaal"
+msgstr "Editační proces začal"
msgid "Editing process already active!"
-msgstr "Editan proces je ji aktivn!"
+msgstr "Editační proces je již aktivní!"
msgid "FileNameChars$ abcdefghijklmnopqrstuvwxyz0123456789-.,#~\\^$[]|()*+?{}/:%@&"
-msgstr " abcdefghijklmnopqrstuvwxyz0123456789-.,#~\\^$[]|()*+?{}/:%@&"
+msgstr " aábcčdďeéěfghiíjklmnňoópqrřsštťuúůvwxyýzž0123456789-.,#~\\^$[]|()*+?{}/:%@&"
msgid "CharMap$ 0\t-.,1#~\\^$[]|()*+?{}/:%@&\tabc2\tdef3\tghi4\tjkl5\tmno6\tpqrs7\ttuv8\twxyz9"
-msgstr " 0\t-.,1#~\\^$[]|()*+?{}/:%@&\tabc2\tdef3\tghi4\tjkl5\tmno6\tpqrs7\ttuv8\twxyz9"
+msgstr " 0\t-.,1#~\\^$[]|()*+?{}/:%@&\tabcáč2\tdefďéě3\tghií4\tjkl5\tmnoňó6\tpqrsřš7\ttuvťúů8\twxyzýž9"
msgid "Button$ABC/abc"
msgstr "ABC/abc"
msgid "Button$Overwrite"
-msgstr "Pepsat"
+msgstr "Přepsat"
msgid "Button$Insert"
-msgstr "Vloit"
+msgstr "Vložit"
msgid "Plugin"
msgstr "Modul"
msgid "Up/Dn for new location - OK to move"
-msgstr "Nahoru/Dolu pro novou pozici - Ok pesune"
+msgstr "Nahoru/Dolu pro novou pozici - Ok přesune"
msgid "Channel locked (recording)!"
-msgstr "Kanl je blokovan (nahrv se)!"
+msgstr "Kanál je blokovaný (nahrává se)!"
msgid "Low disk space!"
-msgstr "Disk bude brzy zaplnn!"
+msgstr "Disk bude brzy zaplněn!"
msgid "Regenerating index file"
-msgstr ""
+msgstr "Generování index souboru"
msgid "Index file regeneration complete"
-msgstr ""
+msgstr "Generování index souboru dokončeno"
msgid "Can't shutdown - option '-s' not given!"
-msgstr "Vypnut nen mon - chyb volba '-s'!"
+msgstr "Vypnutí není možné - chybí volba '-s'!"
msgid "Editing - shut down anyway?"
-msgstr "Edituji - pesto vypnout?"
+msgstr "Edituji - přesto vypnout?"
msgid "Recording - shut down anyway?"
-msgstr "Systm je zaneprzdnn - pesto vypnout?"
+msgstr "Systém nahrává - přesto vypnout?"
#, c-format
msgid "Recording in %ld minutes, shut down anyway?"
-msgstr "Nahrvn zane za %ld minut - pesto vypnout?"
+msgstr "Nahrávání začne za %ld minut - přesto vypnout?"
msgid "shut down anyway?"
-msgstr "pesto vypnout?"
+msgstr "přesto vypnout?"
#, c-format
msgid "Plugin %s wakes up in %ld min, continue?"
-msgstr "Modul %s startuje za %ld min., pokraovat?"
+msgstr "Modul %s startuje za %ld min., pokračovat?"
msgid "Editing - restart anyway?"
-msgstr "Edituji - pesto restartovat?"
+msgstr "Edituji - přesto restartovat?"
msgid "Recording - restart anyway?"
-msgstr "Systm je zaneprzdnn - pesto restartovat?"
+msgstr "Nahrávání - přesto restartovat?"
msgid "restart anyway?"
-msgstr "pesto restartovat?"
+msgstr "přesto restartovat?"
#. TRANSLATORS: note the trailing blank!
msgid "Volume "
msgstr "Hlasitost "
msgid "Classic VDR"
-msgstr "Klasick VDR"
+msgstr "Klasické VDR"
msgid "ST:TNG Panels"
msgstr "ST:TNG konzola"
#. TRANSLATORS: the first character of each weekday, beginning with monday
msgid "MTWTFSS"
-msgstr "PSPSN"
+msgstr "PÚSČPSN"
#. TRANSLATORS: abbreviated weekdays, beginning with monday (must all be 3 letters!)
msgid "MonTueWedThuFriSatSun"
-msgstr "Po t St t P So Ne "
+msgstr "Po Út St Čt Pá So Ne "
msgid "Monday"
-msgstr "Pondl"
+msgstr "Pondělí"
msgid "Tuesday"
-msgstr "ter"
+msgstr "Úterý"
msgid "Wednesday"
-msgstr "Steda"
+msgstr "Středa"
msgid "Thursday"
-msgstr "tvrtek"
+msgstr "Čtvrtek"
msgid "Friday"
-msgstr "Ptek"
+msgstr "Pátek"
msgid "Saturday"
msgstr "Sobota"
msgid "Sunday"
-msgstr "Nedle"
+msgstr "Neděle"
msgid "Upcoming recording!"
-msgstr "Brzo zane nahrvn!"
+msgstr "Brzo začne nahrávání!"
msgid "Pause live video?"
-msgstr ""
+msgstr "Přerušit běžící program?"
msgid "Recording started"
-msgstr "Zaalo nahrvn"
+msgstr "Začalo nahrávání"
msgid "VDR will shut down later - press Power to force"
-msgstr "Vypnut VDR bude odloeno - vypnete klvesou Power"
+msgstr "Vypnutí VDR bude odloženo - vypnete klávesou Power"
msgid "Press any key to cancel shutdown"
-msgstr "Jakkoliv klvesa zru vypnut"
+msgstr "Jakákoliv klávesa zruší vypnutí"
msgid "Switching primary DVB..."
-msgstr "Pepnout primrn DVB..."
+msgstr "Přepnout primární DVB..."
msgid "Editing process failed!"
-msgstr "Editan proces selhal!"
+msgstr "Editační proces selhal!"
msgid "Editing process finished"
-msgstr "Editan proces skonil"
+msgstr "Editační proces skončil"
msgid "Press any key to cancel restart"
-msgstr "Jakkoliv klvesa zru restart"
+msgstr "Jakákoliv klávesa zruší restart"
#, c-format
msgid "VDR will shut down in %s minutes"
diff --git a/po/da_DK.po b/po/da_DK.po
index 580d82a..40cdebd 100644
--- a/po/da_DK.po
+++ b/po/da_DK.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
"Last-Translator: Mogens Elneff <mogens@elneff.dk>\n"
"Language-Team: Danish\n"
@@ -475,6 +475,9 @@ msgstr "Indstillinger"
msgid "Key$Commands"
msgstr "Kommandoer"
+msgid "Key$User0"
+msgstr "Bruger0"
+
msgid "Key$User1"
msgstr "Bruger1"
@@ -836,6 +839,9 @@ msgstr "Optagelser i foldere"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "EPG"
diff --git a/po/de_DE.po b/po/de_DE.po
index 42caadc..4d4f3df 100644
--- a/po/de_DE.po
+++ b/po/de_DE.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2010-01-16 16:46+0100\n"
"Last-Translator: Klaus Schmidinger <kls@tvdr.de>\n"
"Language-Team: German\n"
@@ -475,6 +475,9 @@ msgstr "Einstellungen"
msgid "Key$Commands"
msgstr "Befehle"
+msgid "Key$User0"
+msgstr "Benutzer0"
+
msgid "Key$User1"
msgstr "Benutzer1"
@@ -836,6 +839,9 @@ msgstr "Aufnahmeverzeichnisse"
msgid "Setup.OSD$Folders in timer menu"
msgstr "Verzeichnisse im Timer-Men"
+msgid "Setup.OSD$Number keys for characters"
+msgstr "Nummerntasten fr Zeichen"
+
msgid "EPG"
msgstr "EPG"
diff --git a/po/el_GR.po b/po/el_GR.po
index 344b641..5414ebc 100644
--- a/po/el_GR.po
+++ b/po/el_GR.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
"Last-Translator: Dimitrios Dimitrakos <mail@dimitrios.de>\n"
"Language-Team: Greek\n"
@@ -475,6 +475,9 @@ msgstr ""
msgid "Key$Commands"
msgstr ""
+msgid "Key$User0"
+msgstr ""
+
msgid "Key$User1"
msgstr ""
@@ -836,6 +839,9 @@ msgstr " "
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr " "
diff --git a/po/es_ES.po b/po/es_ES.po
index 4630a3b..217f775 100644
--- a/po/es_ES.po
+++ b/po/es_ES.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2008-03-02 19:02+0100\n"
"Last-Translator: Luca Olivetti <luca@ventoso.org>\n"
"Language-Team: Spanish\n"
@@ -476,6 +476,9 @@ msgstr "Configuracin"
msgid "Key$Commands"
msgstr "rdenes"
+msgid "Key$User0"
+msgstr "Usuario 0"
+
msgid "Key$User1"
msgstr "Usuario 1"
@@ -837,6 +840,9 @@ msgstr "Mostrar directorios de grabaciones"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "Gua de Programacin"
diff --git a/po/et_EE.po b/po/et_EE.po
index 803a539..5010dc4 100644
--- a/po/et_EE.po
+++ b/po/et_EE.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
"Last-Translator: Arthur Konovalov <artlov@gmail.com>\n"
"Language-Team: Estonian\n"
@@ -475,6 +475,9 @@ msgstr "Stted"
msgid "Key$Commands"
msgstr "Ksud"
+msgid "Key$User0"
+msgstr "Lisaklahv0"
+
msgid "Key$User1"
msgstr "Lisaklahv1"
@@ -834,6 +837,9 @@ msgid "Setup.OSD$Recording directories"
msgstr "Kausta nime salvestamine"
msgid "Setup.OSD$Folders in timer menu"
+msgstr "Kaustad taimeri mens"
+
+msgid "Setup.OSD$Number keys for characters"
msgstr ""
msgid "EPG"
@@ -911,7 +917,7 @@ msgid "Setup.DVB$Update channels"
msgstr "Kanalite uuendamine"
msgid "Setup.DVB$Audio languages"
-msgstr "Audio keeli"
+msgstr "Audio keeled"
msgid "Setup.DVB$Audio language"
msgstr "Audio keel"
@@ -920,7 +926,7 @@ msgid "Setup.DVB$Display subtitles"
msgstr "Subtiitrite kuvamine"
msgid "Setup.DVB$Subtitle languages"
-msgstr "Subtiitrite keeli"
+msgstr "Subtiitrite keeled"
msgid "Setup.DVB$Subtitle language"
msgstr "Subtiitri keel"
@@ -989,7 +995,7 @@ msgid "pause live video"
msgstr "peatada"
msgid "confirm"
-msgstr ""
+msgstr "kinnitada"
msgid "yes"
msgstr "jah"
@@ -1046,13 +1052,13 @@ msgid "Setup.Recording$Split edited files"
msgstr "Failide jupitamine"
msgid "Setup.Recording$Delete timeshift recording"
-msgstr ""
+msgstr "Kustutada ajanihke salvestus"
msgid "Replay"
msgstr "Taasesitus"
msgid "Setup.Replay$Multi speed mode"
-msgstr "Multi-kiiruse moodus"
+msgstr "Mitmekiiruse moodus"
msgid "Setup.Replay$Show replay mode"
msgstr "Korduse moodus"
@@ -1166,7 +1172,7 @@ msgid "Pausing live video..."
msgstr "Otselekande peatamine..."
msgid "Delete timeshift recording?"
-msgstr ""
+msgstr "Kustutada ajanihke salvestus?"
#. TRANSLATORS: note the trailing blank!
msgid "Jump: "
diff --git a/po/fi_FI.po b/po/fi_FI.po
index 70e4d58..cd57e7c 100644
--- a/po/fi_FI.po
+++ b/po/fi_FI.po
@@ -2,7 +2,7 @@
# Copyright (C) 2008 Klaus Schmidinger <kls@tvdr.de>
# This file is distributed under the same license as the VDR package.
# Hannu Savolainen <hannu@opensound.com>, 2002
-# Jaakko Hyvtti <jaakko@hyvatti.iki.fi>, 2002, 2003
+# Jaakko Hyvätti <jaakko@hyvatti.iki.fi>, 2002, 2003
# Niko Tarnanen <niko.tarnanen@hut.fi>, 2003
# Rolf Ahrenberg <rahrenbe@cc.hut.fi>, 2003, 2004, 2005, 2006, 2007, 2008
#
@@ -10,34 +10,34 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2007-08-15 15:52+0200\n"
"Last-Translator: Rolf Ahrenberg <rahrenbe@cc.hut.fi>\n"
"Language-Team: Finnish\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=ISO-8859-15\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "*** Invalid Channel ***"
msgstr "*** Virheellinen kanavavalinta ***"
msgid "Channel not available!"
-msgstr "Kanava ei ole kytettviss!"
+msgstr "Kanava ei ole käytettävissä!"
msgid "Can't start Transfer Mode!"
-msgstr "Siirtotilan aloitus eponnistui!"
+msgstr "Siirtotilan aloitus epäonnistui!"
msgid "off"
msgstr "poissa"
msgid "on"
-msgstr "pll"
+msgstr "päällä"
msgid "auto"
msgstr "auto"
msgid "none"
-msgstr "tyhj"
+msgstr "tyhjä"
msgid "Polarization"
msgstr "Polarisaatio"
@@ -67,7 +67,7 @@ msgid "Transmission"
msgstr "Transmissio"
msgid "Guard"
-msgstr "Suojavli"
+msgstr "Suojaväli"
msgid "Hierarchy"
msgstr "Hierarkia"
@@ -76,13 +76,13 @@ msgid "Rolloff"
msgstr "Rolloff"
msgid "Starting EPG scan"
-msgstr "Ohjelmaoppaan pivitys aloitettu"
+msgstr "Ohjelmaoppaan päivitys aloitettu"
msgid "Content$Movie/Drama"
msgstr "Elokuva/draama"
msgid "Content$Detective/Thriller"
-msgstr "Etsiv/trilleri"
+msgstr "Etsivä/trilleri"
msgid "Content$Adventure/Western/War"
msgstr "Seikkailu/western/sota"
@@ -109,7 +109,7 @@ msgid "Content$News/Current Affairs"
msgstr "Uutiset/ajankohtaisohjelma"
msgid "Content$News/Weather Report"
-msgstr "Uutiset/stiedot"
+msgstr "Uutiset/säätiedot"
msgid "Content$News Magazine"
msgstr "Uutismakasiini"
@@ -118,7 +118,7 @@ msgid "Content$Documentary"
msgstr "Dokumentti"
msgid "Content$Discussion/Inverview/Debate"
-msgstr "Keskustelu/haastattelu/vittely"
+msgstr "Keskustelu/haastattelu/väittely"
msgid "Content$Show/Game Show"
msgstr "Show/visailu"
@@ -172,7 +172,7 @@ msgid "Content$Children's/Youth Programme"
msgstr "Lasten ja nuorten ohjelma"
msgid "Content$Pre-school Children's Programme"
-msgstr "Alle kouluikisten ohjelma"
+msgstr "Alle kouluikäisten ohjelma"
msgid "Content$Entertainment Programme for 6 to 14"
msgstr "Viihdeohjelma 6-14 vuotiaille"
@@ -232,7 +232,7 @@ msgid "Content$Experimental Film/Video"
msgstr "Kokeellinen elokuva/video"
msgid "Content$Broadcasting/Press"
-msgstr "Televisio/radio/lehdist"
+msgstr "Televisio/radio/lehdistö"
msgid "Content$New Media"
msgstr "Uusmedia"
@@ -253,19 +253,19 @@ msgid "Content$Economics/Social Advisory"
msgstr "Talous/yhteiskunnallinen neuvonta"
msgid "Content$Remarkable People"
-msgstr "Merkittvt henkilt"
+msgstr "Merkittävät henkilöt"
msgid "Content$Education/Science/Factual"
msgstr "Koulutus/tiede"
msgid "Content$Nature/Animals/Environment"
-msgstr "Luonto/elimet/ymprist"
+msgstr "Luonto/eläimet/ympäristö"
msgid "Content$Technology/Natural Sciences"
msgstr "Teknologia/luonnontiede"
msgid "Content$Medicine/Physiology/Psychology"
-msgstr "Lketiede/fysiologia/psykologia"
+msgstr "Lääketiede/fysiologia/psykologia"
msgid "Content$Foreign Countries/Expeditions"
msgstr "Vieraat maat/tutkimusretket"
@@ -286,7 +286,7 @@ msgid "Content$Tourism/Travel"
msgstr "Turismi/matkustaminen"
msgid "Content$Handicraft"
-msgstr "Ksityt"
+msgstr "Käsityöt"
msgid "Content$Motoring"
msgstr "Autoilu"
@@ -304,7 +304,7 @@ msgid "Content$Gardening"
msgstr "Puutarhanhoito"
msgid "Content$Original Language"
-msgstr "Alkuperiskieli"
+msgstr "Alkuperäiskieli"
msgid "Content$Black & White"
msgstr "Mustavalkoinen"
@@ -313,14 +313,14 @@ msgid "Content$Unpublished"
msgstr "Julkaisematon"
msgid "Content$Live Broadcast"
-msgstr "Suoralhetys"
+msgstr "Suoralähetys"
#, c-format
msgid "ParentalRating$from %d"
msgstr "K-%d"
msgid "No title"
-msgstr "Ei esityst"
+msgstr "Ei esitystä"
#. TRANSLATORS: The name of the language, as written natively
msgid "LanguageName$English"
@@ -334,47 +334,47 @@ msgid "Phase 1: Detecting RC code type"
msgstr "Vaihe 1: Koodauksen tunnistaminen"
msgid "Press any key on the RC unit"
-msgstr "Paina mit tahansa kaukostimen nppint"
+msgstr "Paina mitä tahansa kaukosäätimen näppäintä"
msgid "RC code detected!"
-msgstr "Nppinpainallus vastaanotettu!"
+msgstr "Näppäinpainallus vastaanotettu!"
msgid "Do not press any key..."
-msgstr "l paina kaukostimen nppimi..."
+msgstr "Älä paina kaukosäätimen näppäimiä..."
msgid "Phase 2: Learning specific key codes"
-msgstr "Vaihe 2: Nppinkoodien opettelu"
+msgstr "Vaihe 2: Näppäinkoodien opettelu"
#, c-format
msgid "Press key for '%s'"
-msgstr "Paina nppint toiminnolle '%s'"
+msgstr "Paina näppäintä toiminnolle '%s'"
msgid "Press 'Up' to confirm"
-msgstr "Hyvksy painamalla 'Yls'"
+msgstr "Hyväksy painamalla 'Ylös'"
msgid "Press 'Down' to continue"
msgstr "Jatka painamalla 'Alas'"
msgid "(press 'Up' to go back)"
-msgstr "(palaa takaisin painamalla 'Yls')"
+msgstr "(palaa takaisin painamalla 'Ylös')"
msgid "(press 'Down' to end key definition)"
msgstr "(lopeta opettaminen painamalla 'Alas')"
msgid "(press 'Menu' to skip this key)"
-msgstr "nppimen puuttuessa paina 'Valikko'"
+msgstr "näppäimen puuttuessa paina 'Valikko'"
msgid "Learning Remote Control Keys"
-msgstr "Kaukostimen opettaminen"
+msgstr "Kaukosäätimen opettaminen"
msgid "Phase 3: Saving key codes"
-msgstr "Vaihe 3: Nppinkoodien tallentaminen"
+msgstr "Vaihe 3: Näppäinkoodien tallentaminen"
msgid "Press 'Up' to save, 'Down' to cancel"
-msgstr "Paina 'Yls' tallentaaksesi ja 'Alas' peruuttaaksesi"
+msgstr "Paina 'Ylös' tallentaaksesi ja 'Alas' peruuttaaksesi"
msgid "Key$Up"
-msgstr "Yls"
+msgstr "Ylös"
msgid "Key$Down"
msgstr "Alas"
@@ -398,7 +398,7 @@ msgid "Key$Red"
msgstr "Punainen"
msgid "Key$Green"
-msgstr "Vihre"
+msgstr "Vihreä"
msgid "Key$Yellow"
msgstr "Keltainen"
@@ -446,16 +446,16 @@ msgid "Key$PrevChannel"
msgstr "Edellinen kanava"
msgid "Key$Volume+"
-msgstr "nenvoimakkuus +"
+msgstr "Äänenvoimakkuus +"
msgid "Key$Volume-"
-msgstr "nenvoimakkuus -"
+msgstr "Äänenvoimakkuus -"
msgid "Key$Mute"
msgstr "Mykistys"
msgid "Key$Audio"
-msgstr "ni"
+msgstr "Ääni"
msgid "Key$Subtitles"
msgstr "Tekstitys"
@@ -478,32 +478,35 @@ msgstr "Asetukset"
msgid "Key$Commands"
msgstr "Komennot"
+msgid "Key$User0"
+msgstr "Lisänäppäin 0"
+
msgid "Key$User1"
-msgstr "Lisnppin 1"
+msgstr "Lisänäppäin 1"
msgid "Key$User2"
-msgstr "Lisnppin 2"
+msgstr "Lisänäppäin 2"
msgid "Key$User3"
-msgstr "Lisnppin 3"
+msgstr "Lisänäppäin 3"
msgid "Key$User4"
-msgstr "Lisnppin 4"
+msgstr "Lisänäppäin 4"
msgid "Key$User5"
-msgstr "Lisnppin 5"
+msgstr "Lisänäppäin 5"
msgid "Key$User6"
-msgstr "Lisnppin 6"
+msgstr "Lisänäppäin 6"
msgid "Key$User7"
-msgstr "Lisnppin 7"
+msgstr "Lisänäppäin 7"
msgid "Key$User8"
-msgstr "Lisnppin 8"
+msgstr "Lisänäppäin 8"
msgid "Key$User9"
-msgstr "Lisnppin 9"
+msgstr "Lisänäppäin 9"
msgid "Disk"
msgstr "Levy"
@@ -524,7 +527,7 @@ msgid "Name"
msgstr "Nimi"
msgid "Source"
-msgstr "Lhde"
+msgstr "Lähde"
msgid "Frequency"
msgstr "Taajuus"
@@ -536,10 +539,10 @@ msgid "Ppid"
msgstr "PCR-PID"
msgid "Apid1"
-msgstr "ni-PID (1)"
+msgstr "Ääni-PID (1)"
msgid "Apid2"
-msgstr "ni-PID (2)"
+msgstr "Ääni-PID (2)"
msgid "Dpid1"
msgstr "Dolby-PID (1)"
@@ -563,7 +566,7 @@ msgid "Sid"
msgstr "Palvelu-ID"
msgid "Channel settings are not unique!"
-msgstr "Kanava-asetukset eivt ole yksillliset!"
+msgstr "Kanava-asetukset eivät ole yksilölliset!"
msgid "Channels"
msgstr "Kanavat"
@@ -578,10 +581,10 @@ msgid "Button$Delete"
msgstr "Poista"
msgid "Button$Mark"
-msgstr "Siirr"
+msgstr "Siirrä"
msgid "Channel is being used by a timer!"
-msgstr "Kanava on ajastimen kytss!"
+msgstr "Kanava on ajastimen käytössä!"
msgid "Delete channel?"
msgstr "Poistetaanko kanava?"
@@ -600,7 +603,7 @@ msgstr "Kansio on jo olemassa!"
#, c-format
msgid "Folder name must not contain '%c'!"
-msgstr "Kansion nimess ei saa olla '%c'-merkki!"
+msgstr "Kansion nimessä ei saa olla '%c'-merkkiä!"
msgid "Button$Select"
msgstr "Valitse"
@@ -621,7 +624,7 @@ msgid "Channel"
msgstr "Kanava"
msgid "Day"
-msgstr "Piv"
+msgstr "Päivä"
msgid "Start"
msgstr "Aloitus"
@@ -636,7 +639,7 @@ msgid "Priority"
msgstr "Prioriteetti"
msgid "Lifetime"
-msgstr "Elinik"
+msgstr "Elinikä"
msgid "File"
msgstr "Tiedosto"
@@ -645,7 +648,7 @@ msgid "Button$Folder"
msgstr "Kansio"
msgid "First day"
-msgstr "1. piv"
+msgstr "1. päivä"
msgid "Select folder"
msgstr "Valitse kansio"
@@ -654,7 +657,7 @@ msgid "Timers"
msgstr "Ajastimet"
msgid "Button$On/Off"
-msgstr "Pll/Pois"
+msgstr "Päällä/Pois"
msgid "Button$Info"
msgstr "Tiedot"
@@ -663,7 +666,7 @@ msgid "Delete timer?"
msgstr "Poistetaanko ajastin?"
msgid "Timer still recording - really delete?"
-msgstr "Ajastettu tallennus kynniss - poistetaanko silti?"
+msgstr "Ajastettu tallennus käynnissä - poistetaanko silti?"
msgid "Event"
msgstr "Tapahtuma"
@@ -701,17 +704,17 @@ msgstr "Ohjelmisto - %s"
#, c-format
msgid "This event - %s"
-msgstr "Tm tapahtuma - %s"
+msgstr "Tämä tapahtuma - %s"
msgid "This event - all channels"
-msgstr "Tm tapahtuma - kaikki kanavat"
+msgstr "Tämä tapahtuma - kaikki kanavat"
msgid "All events - all channels"
msgstr "Kaikki tapahtumat - kaikki kanavat"
#, c-format
msgid "Please enter %d digits!"
-msgstr "Syt %d numeroa!"
+msgstr "Syötä %d numeroa!"
msgid "CAM not responding!"
msgstr "CA-moduuli ei vastaa!"
@@ -735,13 +738,13 @@ msgid "Commands"
msgstr "Komennot"
msgid "Error while accessing recording!"
-msgstr "Tallenteen toistaminen eponnistui!"
+msgstr "Tallenteen toistaminen epäonnistui!"
msgid "Delete recording?"
msgstr "Poistetaanko tallenne?"
msgid "Error while deleting recording!"
-msgstr "Tallenteen poistaminen eponnistui!"
+msgstr "Tallenteen poistaminen epäonnistui!"
msgid "Recording commands"
msgstr "Tallennekomennot"
@@ -756,7 +759,7 @@ msgid "always"
msgstr "aina"
msgid "OSD"
-msgstr "Kuvaruutunytt"
+msgstr "Kuvaruutunäyttö"
msgid "Setup.OSD$Language"
msgstr "Kieli"
@@ -783,10 +786,10 @@ msgid "Setup.OSD$Message time (s)"
msgstr "Viestien esitysaika (s)"
msgid "Setup.OSD$Use small font"
-msgstr "Kyt pieni kirjasimia"
+msgstr "Käytä pieniä kirjasimia"
msgid "Setup.OSD$Anti-alias"
-msgstr "Kyt reunan pehmennyst"
+msgstr "Käytä reunan pehmennystä"
msgid "Setup.OSD$Default font"
msgstr "Oletuskirjasintyyppi"
@@ -795,7 +798,7 @@ msgid "Setup.OSD$Small font"
msgstr "Pieni kirjasintyyppi"
msgid "Setup.OSD$Fixed font"
-msgstr "Tasavlinen kirjasintyyppi"
+msgstr "Tasavälinen kirjasintyyppi"
msgid "Setup.OSD$Default font size (%)"
msgstr "Oletuskirjasintyypin koko (%)"
@@ -804,7 +807,7 @@ msgid "Setup.OSD$Small font size (%)"
msgstr "Pienen kirjasintyypin koko (%)"
msgid "Setup.OSD$Fixed font size (%)"
-msgstr "Tasavlisen kirjasintyypin koko (%)"
+msgstr "Tasavälisen kirjasintyypin koko (%)"
msgid "Setup.OSD$Channel info position"
msgstr "Kanavatiedon sijainti"
@@ -813,13 +816,13 @@ msgid "bottom"
msgstr "alareuna"
msgid "top"
-msgstr "ylreuna"
+msgstr "yläreuna"
msgid "Setup.OSD$Channel info time (s)"
msgstr "Kanavatiedon esitysaika (s)"
msgid "Setup.OSD$Info on channel switch"
-msgstr "Nyt kanavatieto vaihdettaessa"
+msgstr "Näytä kanavatieto vaihdettaessa"
msgid "Setup.OSD$Timeout requested channel info"
msgstr "Sulje erikseen avattu kanavatieto"
@@ -828,31 +831,34 @@ msgid "Setup.OSD$Scroll pages"
msgstr "Valikoiden vieritys sivuttain"
msgid "Setup.OSD$Scroll wraps"
-msgstr "Valikoiden vieritys ympri"
+msgstr "Valikoiden vieritys ympäri"
msgid "Setup.OSD$Menu key closes"
-msgstr "Sulje valikkonppimell"
+msgstr "Sulje valikkonäppäimellä"
msgid "Setup.OSD$Recording directories"
-msgstr "Nyt tallennehakemistot"
+msgstr "Näytä tallennehakemistot"
msgid "Setup.OSD$Folders in timer menu"
+msgstr "Näytä kansiot ajastinvalikossa"
+
+msgid "Setup.OSD$Number keys for characters"
msgstr ""
msgid "EPG"
msgstr "Ohjelmaopas"
msgid "Button$Scan"
-msgstr "Pivit"
+msgstr "Päivitä"
msgid "Setup.EPG$EPG scan timeout (h)"
-msgstr "Ohjelmaoppaan taustapivitys (h)"
+msgstr "Ohjelmaoppaan taustapäivitys (h)"
msgid "Setup.EPG$EPG bugfix level"
msgstr "Ohjelmaoppaan korjaustaso"
msgid "Setup.EPG$EPG linger time (min)"
-msgstr "Vanha tieto nkyy (min)"
+msgstr "Vanha tieto näkyy (min)"
msgid "Setup.EPG$Set system time"
msgstr "Tahdista kellonaika"
@@ -905,22 +911,22 @@ msgid "Setup.DVB$Video format"
msgstr "Kuvasuhde"
msgid "Setup.DVB$Video display format"
-msgstr "Nyttmuoto"
+msgstr "Näyttömuoto"
msgid "Setup.DVB$Use Dolby Digital"
-msgstr "Kyt Dolby Digital -nt"
+msgstr "Käytä Dolby Digital -ääntä"
msgid "Setup.DVB$Update channels"
-msgstr "Pivit kanavat"
+msgstr "Päivitä kanavat"
msgid "Setup.DVB$Audio languages"
-msgstr "nen kielet"
+msgstr "Äänen kielet"
msgid "Setup.DVB$Audio language"
-msgstr "nen kieli"
+msgstr "Äänen kieli"
msgid "Setup.DVB$Display subtitles"
-msgstr "Nyt tekstitys"
+msgstr "Näytä tekstitys"
msgid "Setup.DVB$Subtitle languages"
msgstr "Tekstityskielet"
@@ -932,16 +938,16 @@ msgid "Setup.DVB$Subtitle offset"
msgstr "Tekstityksen tasaus"
msgid "Setup.DVB$Subtitle foreground transparency"
-msgstr "Tekstityksen lpinkyvyys"
+msgstr "Tekstityksen läpinäkyvyys"
msgid "Setup.DVB$Subtitle background transparency"
-msgstr "Tekstityksen taustan lpinkyvyys"
+msgstr "Tekstityksen taustan läpinäkyvyys"
msgid "LNB"
msgstr "LNB"
msgid "Setup.LNB$Use DiSEqC"
-msgstr "Kyt DiSEqC-kytkint"
+msgstr "Käytä DiSEqC-kytkintä"
msgid "Setup.LNB$SLOF (MHz)"
msgstr "LNB-rajataajuus (MHz)"
@@ -950,7 +956,7 @@ msgid "Setup.LNB$Low LNB frequency (MHz)"
msgstr "LNB-alataajuus (MHz)"
msgid "Setup.LNB$High LNB frequency (MHz)"
-msgstr "LNB-yltaajuus (MHz)"
+msgstr "LNB-ylätaajuus (MHz)"
msgid "CAM reset"
msgstr "CAM nollaus"
@@ -977,25 +983,25 @@ msgid "Can't open CAM menu!"
msgstr "CA-moduulin valikko ei saatavilla"
msgid "CAM is in use - really reset?"
-msgstr "CA-moduuli kytss - nollataanko?"
+msgstr "CA-moduuli käytössä - nollataanko?"
msgid "Can't reset CAM!"
-msgstr "CA-moduulin nollaus eponnistui!"
+msgstr "CA-moduulin nollaus epäonnistui!"
msgid "do not pause live video"
-msgstr "l pysyt lhetyst"
+msgstr "älä pysäytä lähetystä"
msgid "confirm pause live video"
-msgstr "varmista lhetyksen pysyttminen"
+msgstr "varmista lähetyksen pysäyttäminen"
msgid "pause live video"
-msgstr "pysyt lhetys"
+msgstr "pysäytä lähetys"
msgid "confirm"
-msgstr ""
+msgstr "varmista"
msgid "yes"
-msgstr "kyll"
+msgstr "kyllä"
msgid "Recording"
msgstr "Tallennus"
@@ -1013,22 +1019,22 @@ msgid "Setup.Recording$Default priority"
msgstr "Tallenteen oletusprioriteetti"
msgid "Setup.Recording$Default lifetime (d)"
-msgstr "Tallenteen oletuselinik (d)"
+msgstr "Tallenteen oletuselinikä (d)"
msgid "Setup.Recording$Pause key handling"
-msgstr "Taukonppimen toiminta"
+msgstr "Taukonäppäimen toiminta"
msgid "Setup.Recording$Pause priority"
msgstr "Taukotallenteen prioriteetti"
msgid "Setup.Recording$Pause lifetime (d)"
-msgstr "Taukotallenteen elinik (d)"
+msgstr "Taukotallenteen elinikä (d)"
msgid "Setup.Recording$Use episode name"
-msgstr "Kyt jakson nime"
+msgstr "Käytä jakson nimeä"
msgid "Setup.Recording$Use VPS"
-msgstr "Kyt VPS-toimintoa"
+msgstr "Käytä VPS-toimintoa"
msgid "Setup.Recording$VPS margin (s)"
msgstr "VPS-toiminnon aloitusmarginaali (s)"
@@ -1037,7 +1043,7 @@ msgid "Setup.Recording$Mark instant recording"
msgstr "Merkitse pikatallenne"
msgid "Setup.Recording$Name instant recording"
-msgstr "Nime pikatallenne"
+msgstr "Nimeä pikatallenne"
msgid "Setup.Recording$Instant rec. time (min)"
msgstr "Pikatallennuksen kesto (min)"
@@ -1049,16 +1055,16 @@ msgid "Setup.Recording$Split edited files"
msgstr "Jaottele muokatut tallenteet"
msgid "Setup.Recording$Delete timeshift recording"
-msgstr ""
+msgstr "Poista ajansiirtotallenne"
msgid "Replay"
msgstr "Toisto"
msgid "Setup.Replay$Multi speed mode"
-msgstr "Kyt toiston moninopeustilaa"
+msgstr "Käytä toiston moninopeustilaa"
msgid "Setup.Replay$Show replay mode"
-msgstr "Nyt toiston tila"
+msgstr "Näytä toiston tila"
msgid "Setup.Replay$Resume ID"
msgstr "Tallenteen paluutunniste"
@@ -1070,7 +1076,7 @@ msgid "Setup.Miscellaneous$Min. event timeout (min)"
msgstr "Tapahtuman odotusaika (min)"
msgid "Setup.Miscellaneous$Min. user inactivity (min)"
-msgstr "Kyttjtoiminnon odotusaika (min)"
+msgstr "Käyttäjätoiminnon odotusaika (min)"
msgid "Setup.Miscellaneous$SVDRP timeout (s)"
msgstr "SVDRP-komennon odotusaika (s)"
@@ -1079,37 +1085,37 @@ msgid "Setup.Miscellaneous$Zap timeout (s)"
msgstr "Kanavavalinnan odotusaika (s)"
msgid "Setup.Miscellaneous$Channel entry timeout (ms)"
-msgstr "Kanavasytteen odotusaika (ms)"
+msgstr "Kanavasyötteen odotusaika (ms)"
msgid "Setup.Miscellaneous$Initial channel"
-msgstr "Kanava kynnistettess"
+msgstr "Kanava käynnistettäessä"
msgid "Setup.Miscellaneous$as before"
msgstr "edellinen"
msgid "Setup.Miscellaneous$Initial volume"
-msgstr "nenvoimakkuus kynnistettess"
+msgstr "Äänenvoimakkuus käynnistettäessä"
msgid "Setup.Miscellaneous$Channels wrap"
msgstr "Kanavien rullaus"
msgid "Setup.Miscellaneous$Emergency exit"
-msgstr "Kyt htsammutusta"
+msgstr "Käytä hätäsammutusta"
msgid "Plugins"
msgstr "Laajennokset"
msgid "This plugin has no setup parameters!"
-msgstr "Tll laajennoksella ei ole asetuksia!"
+msgstr "Tällä laajennoksella ei ole asetuksia!"
msgid "Setup"
msgstr "Asetukset"
msgid "Restart"
-msgstr "Kynnist uudelleen"
+msgstr "Käynnistä uudelleen"
msgid "Really restart?"
-msgstr "Kynnistetnk uudelleen?"
+msgstr "Käynnistetäänkö uudelleen?"
#. TRANSLATORS: note the leading and trailing blanks!
msgid " Stop recording "
@@ -1126,7 +1132,7 @@ msgid " Stop replaying"
msgstr " Lopeta toisto"
msgid "Button$Audio"
-msgstr "ni"
+msgstr "Ääni"
msgid "Button$Pause"
msgstr "Tauko"
@@ -1148,10 +1154,10 @@ msgid "Cancel editing?"
msgstr "Perutaanko muokkaus?"
msgid "No audio available!"
-msgstr "nen kieli ei ole valittavissa!"
+msgstr "Äänen kieli ei ole valittavissa!"
msgid "No subtitles"
-msgstr "Ei tekstityst"
+msgstr "Ei tekstitystä"
msgid "Button$Subtitles"
msgstr "Tekstitys"
@@ -1160,38 +1166,38 @@ msgid "No subtitles available!"
msgstr "Tekstitys ei ole valittavissa!"
msgid "Not enough disk space to start recording!"
-msgstr "Tallennustilan puute est tallennuksen!"
+msgstr "Tallennustilan puute estää tallennuksen!"
msgid "No free DVB device to record!"
-msgstr "Ei vapaata DVB-viritint tallennukselle!"
+msgstr "Ei vapaata DVB-viritintä tallennukselle!"
msgid "Pausing live video..."
-msgstr "Pysytetn lhetys..."
+msgstr "Pysäytetään lähetys..."
msgid "Delete timeshift recording?"
-msgstr ""
+msgstr "Poistetaanko ajansiirtotallenne?"
#. TRANSLATORS: note the trailing blank!
msgid "Jump: "
msgstr "Siirry: "
msgid "No editing marks defined!"
-msgstr "Muokkausmerkinnt puuttuvat!"
+msgstr "Muokkausmerkinnät puuttuvat!"
msgid "Can't start editing process!"
-msgstr "Muokkauksen aloitus eponnistui!"
+msgstr "Muokkauksen aloitus epäonnistui!"
msgid "Editing process started"
msgstr "Muokkaus aloitettu"
msgid "Editing process already active!"
-msgstr "Muokkaus on jo kynniss!"
+msgstr "Muokkaus on jo käynnissä!"
msgid "FileNameChars$ abcdefghijklmnopqrstuvwxyz0123456789-.,#~\\^$[]|()*+?{}/:%@&"
-msgstr " abcdefghijklmnopqrstuvwxyz0123456789-.,#~\\^$[]|()*+?{}/:%@&"
+msgstr " abcdefghijklmnopqrstuvwxyzåäö0123456789-.,#~\\^$[]|()*+?{}/:%@&"
msgid "CharMap$ 0\t-.,1#~\\^$[]|()*+?{}/:%@&\tabc2\tdef3\tghi4\tjkl5\tmno6\tpqrs7\ttuv8\twxyz9"
-msgstr " 0\t-.,1#~\\^$[]|()*+?{}/:%@&\tabc2\tdef3\tghi4\tjkl5\tmno6\tpqrs7\ttuv8\twxyz9"
+msgstr " 0\t-.,1#~\\^$[]|()*+?{}/:%@&\tabcäå2\tdef3\tghi4\tjkl5\tmnoö6\tpqrs7\ttuv8\twxyz9"
msgid "Button$ABC/abc"
msgstr "ABC/abc"
@@ -1200,16 +1206,16 @@ msgid "Button$Overwrite"
msgstr "Korvaa"
msgid "Button$Insert"
-msgstr "Lis"
+msgstr "Lisää"
msgid "Plugin"
msgstr "Laajennos"
msgid "Up/Dn for new location - OK to move"
-msgstr "'Yls/Alas' uusi paikka - 'OK' hyvksy"
+msgstr "'Ylös/Alas' uusi paikka - 'OK' hyväksy"
msgid "Channel locked (recording)!"
-msgstr "Kanava lukittu (tallennus kynniss)!"
+msgstr "Kanava lukittu (tallennus käynnissä)!"
msgid "Low disk space!"
msgstr "Tallennustila loppumassa!"
@@ -1238,20 +1244,20 @@ msgstr "sammutetaanko?"
#, c-format
msgid "Plugin %s wakes up in %ld min, continue?"
-msgstr "Laajennos %s her %ld minuutin kuluttua - sammutetaanko?"
+msgstr "Laajennos %s herää %ld minuutin kuluttua - sammutetaanko?"
msgid "Editing - restart anyway?"
-msgstr "Muokkaus kesken - kynnistetnk uudelleen?"
+msgstr "Muokkaus kesken - käynnistetäänkö uudelleen?"
msgid "Recording - restart anyway?"
-msgstr "Tallennus kesken - kynnistetnk uudelleen?"
+msgstr "Tallennus kesken - käynnistetäänkö uudelleen?"
msgid "restart anyway?"
-msgstr "kynnistetnk uudelleen?"
+msgstr "käynnistetäänkö uudelleen?"
#. TRANSLATORS: note the trailing blank!
msgid "Volume "
-msgstr "nenvoimakkuus "
+msgstr "Äänenvoimakkuus "
msgid "Classic VDR"
msgstr "Klassinen VDR"
@@ -1292,28 +1298,28 @@ msgid "Upcoming recording!"
msgstr "Tallennus on alkamassa!"
msgid "Pause live video?"
-msgstr "Pysytetnk lhetys?"
+msgstr "Pysäytetäänkö lähetys?"
msgid "Recording started"
msgstr "Tallennus aloitettu"
msgid "VDR will shut down later - press Power to force"
-msgstr "VDR sammuu myhemmin - pakota virtanppimell"
+msgstr "VDR sammuu myöhemmin - pakota virtanäppäimellä"
msgid "Press any key to cancel shutdown"
-msgstr "Peru sammutus painamalla mit tahansa nppint"
+msgstr "Peru sammutus painamalla mitä tahansa näppäintä"
msgid "Switching primary DVB..."
msgstr "Vaihdetaan ensisijaista DVB-sovitinta..."
msgid "Editing process failed!"
-msgstr "Muokkaus eponnistui!"
+msgstr "Muokkaus epäonnistui!"
msgid "Editing process finished"
msgstr "Muokkaus valmis"
msgid "Press any key to cancel restart"
-msgstr "Peru uudelleenkynnistys painamalla mit tahansa nppint"
+msgstr "Peru uudelleenkäynnistys painamalla mitä tahansa näppäintä"
#, c-format
msgid "VDR will shut down in %s minutes"
diff --git a/po/fr_FR.po b/po/fr_FR.po
index 74d8ceb..0d4cb7c 100644
--- a/po/fr_FR.po
+++ b/po/fr_FR.po
@@ -13,7 +13,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2008-02-27 18:14+0100\n"
"Last-Translator: Jean-Claude Repetto <jc@repetto.org>\n"
"Language-Team: French\n"
@@ -481,6 +481,9 @@ msgstr "Configuration"
msgid "Key$Commands"
msgstr "Commandes"
+msgid "Key$User0"
+msgstr "Utilisateur0"
+
msgid "Key$User1"
msgstr "Utilisateur1"
@@ -842,6 +845,9 @@ msgstr "Dossiers d'enregistrements"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "Guide des programmes"
diff --git a/po/hr_HR.po b/po/hr_HR.po
index 55912e5..96ee695 100644
--- a/po/hr_HR.po
+++ b/po/hr_HR.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2008-03-17 19:00+0100\n"
"Last-Translator: Adrian Caval <anrxc@sysphere.org>\n"
"Language-Team: Croatian\n"
@@ -477,6 +477,9 @@ msgstr "Postavke"
msgid "Key$Commands"
msgstr "Naredbe"
+msgid "Key$User0"
+msgstr "Korisnik0"
+
msgid "Key$User1"
msgstr "Korisnik1"
@@ -838,6 +841,9 @@ msgstr "Imenik za snimke"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "EPG (elektronski programski vodi)"
diff --git a/po/hu_HU.po b/po/hu_HU.po
index ccc10cc..a17b209 100644
--- a/po/hu_HU.po
+++ b/po/hu_HU.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2007-12-01 21:42+0200\n"
"Last-Translator: Istvn Fley <ifuley@tigercomp.ro>\n"
"Language-Team: Hungarian\n"
@@ -478,6 +478,9 @@ msgstr "Belltsok"
msgid "Key$Commands"
msgstr "Parancsok"
+msgid "Key$User0"
+msgstr "Felhasznl0"
+
msgid "Key$User1"
msgstr "Felhasznl1"
@@ -839,6 +842,9 @@ msgstr "Felvtelek listja"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "EPG"
diff --git a/po/it_IT.po b/po/it_IT.po
index c478284..89d4237 100644
--- a/po/it_IT.po
+++ b/po/it_IT.po
@@ -5,14 +5,14 @@
# Antonio Ospite <ospite@studenti.unina.it>, 2003, 2006
# Sean Carlos <seanc@libero.it>, 2005
# Nino Gerbino <ngerb@interfree.it>, 2006
-# Diego Pierotto <vdr-italian@tiscali.it>, 2007, 2008
+# Diego Pierotto <vdr-italian@tiscali.it>, 2007, 2008, 2010
#
msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
-"PO-Revision-Date: 2010-01-31 23:06+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
+"PO-Revision-Date: 2010-03-28 22:49+0100\n"
"Last-Translator: Diego Pierotto <vdr-italian@tiscali.it>\n"
"Language-Team: Italian\n"
"MIME-Version: 1.0\n"
@@ -482,6 +482,9 @@ msgstr "Opzioni"
msgid "Key$Commands"
msgstr "Comandi"
+msgid "Key$User0"
+msgstr "Utente0"
+
msgid "Key$User1"
msgstr "Utente1"
@@ -841,6 +844,9 @@ msgid "Setup.OSD$Recording directories"
msgstr "Directory di registrazione"
msgid "Setup.OSD$Folders in timer menu"
+msgstr "Cartelle nel menu timer"
+
+msgid "Setup.OSD$Number keys for characters"
msgstr ""
msgid "EPG"
@@ -996,7 +1002,7 @@ msgid "pause live video"
msgstr "pausa video dal vivo"
msgid "confirm"
-msgstr ""
+msgstr "conferma"
msgid "yes"
msgstr "sì"
@@ -1053,7 +1059,7 @@ msgid "Setup.Recording$Split edited files"
msgstr "Dividi i file modificati"
msgid "Setup.Recording$Delete timeshift recording"
-msgstr ""
+msgstr "Elimina registrazione timeshift"
msgid "Replay"
msgstr "Riproduzione"
@@ -1173,7 +1179,7 @@ msgid "Pausing live video..."
msgstr "Pausa del canale in visione..."
msgid "Delete timeshift recording?"
-msgstr ""
+msgstr "Eliminare registrazione timeshift?"
#. TRANSLATORS: note the trailing blank!
msgid "Jump: "
@@ -1192,10 +1198,10 @@ msgid "Editing process already active!"
msgstr "Processo di modifica già attivo!"
msgid "FileNameChars$ abcdefghijklmnopqrstuvwxyz0123456789-.,#~\\^$[]|()*+?{}/:%@&"
-msgstr " aáàbcdeéèfghiìîjklmnoòpqrstuùvwxyz0123456789-.,#~\\^$[]|()*+?{}/:%@&°"
+msgstr " aáàbcdeéèfghiíìjklmnoóòpqrstuúùvwxyz0123456789-.,#~\\^$[]|()*+?{}/:%@&°"
msgid "CharMap$ 0\t-.,1#~\\^$[]|()*+?{}/:%@&\tabc2\tdef3\tghi4\tjkl5\tmno6\tpqrs7\ttuv8\twxyz9"
-msgstr " 0\t-.,1#~\\^$[]|()*+°?{}/:%@&\taàbc2\tdeèf3\tghiì4\tjkl5\tmnoò6\tpqrs7\ttuùv8\twxyz9"
+msgstr " 0\t-.,1#~\\^$[]|()*+°?{}/:%@&\taáàbc2\tdeéèf3\tghiíì4\tjkl5\tmnoóò6\tpqrs7\ttuúùv8\twxyz9"
msgid "Button$ABC/abc"
msgstr "ABC/abc"
diff --git a/po/lt_LT.po b/po/lt_LT.po
index d79f03f..02465e6 100644
--- a/po/lt_LT.po
+++ b/po/lt_LT.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.7.12\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2010-02-22 18:05+0200\n"
"Last-Translator: Valdemaras Pipiras <varas@ambernet.lt>\n"
"Language-Team: Lithuanian\n"
@@ -475,6 +475,9 @@ msgstr "Nustatymai"
msgid "Key$Commands"
msgstr "Komandos"
+msgid "Key$User0"
+msgstr "Vartotojas0"
+
msgid "Key$User1"
msgstr "Vartotojas1"
@@ -836,6 +839,9 @@ msgstr "Įrašų katalogai"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "Elektroninis programų gidas (EPG)"
diff --git a/po/mk_MK.po b/po/mk_MK.po
new file mode 100644
index 0000000..20727c7
--- /dev/null
+++ b/po/mk_MK.po
@@ -0,0 +1,1324 @@
+# VDR language source file.
+# Copyright (C) 2008 Klaus Schmidinger <kls@tvdr.de>
+# This file is distributed under the same license as the VDR package.
+# Dimitar Petrovski <dimeptr@gmail.com>, 2009
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: VDR-1.7.14\n"
+"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
+"PO-Revision-Date: 2010-03-11 00:54+0100\n"
+"Last-Translator: Dimitar Petrovski <dimeptr@gmail.com>\n"
+"Language-Team: Macedonian <en@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+
+msgid "*** Invalid Channel ***"
+msgstr "*** Невалиден Канал ***"
+
+msgid "Channel not available!"
+msgstr "Каналот е недостапен!"
+
+msgid "Can't start Transfer Mode!"
+msgstr "Невозможно е да се започне пренос!!"
+
+msgid "off"
+msgstr "исклучи"
+
+msgid "on"
+msgstr "вклучи"
+
+msgid "auto"
+msgstr "автоматски"
+
+msgid "none"
+msgstr "ништо"
+
+msgid "Polarization"
+msgstr "Поларизација"
+
+msgid "System"
+msgstr "Систем"
+
+msgid "Srate"
+msgstr "Srate"
+
+msgid "Inversion"
+msgstr "Инверзија"
+
+msgid "CoderateH"
+msgstr "CoderateH"
+
+msgid "CoderateL"
+msgstr "CoderateL"
+
+msgid "Modulation"
+msgstr "Модулација"
+
+msgid "Bandwidth"
+msgstr "Пропусност"
+
+msgid "Transmission"
+msgstr "Пренос"
+
+msgid "Guard"
+msgstr "Заштита"
+
+msgid "Hierarchy"
+msgstr "Хиерархија"
+
+msgid "Rolloff"
+msgstr "Рол-оф"
+
+msgid "Starting EPG scan"
+msgstr "Започнувам скенирање на EPG"
+
+msgid "Content$Movie/Drama"
+msgstr "Филм/Драма"
+
+msgid "Content$Detective/Thriller"
+msgstr "Детективски/Трилер"
+
+msgid "Content$Adventure/Western/War"
+msgstr "Авантура/Вестерн/Воен"
+
+msgid "Content$Science Fiction/Fantasy/Horror"
+msgstr "Научна фантастика/Фантазија/Хорор"
+
+msgid "Content$Comedy"
+msgstr "Комедија"
+
+msgid "Content$Soap/Melodrama/Folkloric"
+msgstr "Сапуница/Мелодрама/Фолклорен"
+
+msgid "Content$Romance"
+msgstr "Романса"
+
+msgid "Content$Serious/Classical/Religious/Historical Movie/Drama"
+msgstr "Сериозен/Класичен/Религиозен/Историски/Драма"
+
+msgid "Content$Adult Movie/Drama"
+msgstr "Филм за возрасни/Драма"
+
+msgid "Content$News/Current Affairs"
+msgstr "Вести/Тековни настани"
+
+msgid "Content$News/Weather Report"
+msgstr "Вести/Временска прогноза"
+
+msgid "Content$News Magazine"
+msgstr "Магазин"
+
+msgid "Content$Documentary"
+msgstr "Документарен"
+
+msgid "Content$Discussion/Inverview/Debate"
+msgstr "Дискусија/Интервју/Дебата"
+
+msgid "Content$Show/Game Show"
+msgstr "Шоу/Забавно шоу"
+
+msgid "Content$Game Show/Quiz/Contest"
+msgstr "Забавно шоу/Квиз/Натпревар"
+
+msgid "Content$Variety Show"
+msgstr "Разнолико шоу"
+
+msgid "Content$Talk Show"
+msgstr "Разговорно шоу"
+
+msgid "Content$Sports"
+msgstr "Спорт"
+
+msgid "Content$Special Event"
+msgstr "Специјален настан"
+
+msgid "Content$Sport Magazine"
+msgstr "Спортски магазин"
+
+msgid "Content$Football/Soccer"
+msgstr "Фудбал"
+
+msgid "Content$Tennis/Squash"
+msgstr "Тенис/Сквош"
+
+msgid "Content$Team Sports"
+msgstr "Тимски спортови"
+
+msgid "Content$Athletics"
+msgstr "Атлетика"
+
+msgid "Content$Motor Sport"
+msgstr "Мото спорт"
+
+msgid "Content$Water Sport"
+msgstr "Воден спорт"
+
+msgid "Content$Winter Sports"
+msgstr "Зимски спорт"
+
+msgid "Content$Equestrian"
+msgstr "Коњички"
+
+msgid "Content$Martial Sports"
+msgstr "Борилачки спорт"
+
+msgid "Content$Children's/Youth Programme"
+msgstr "Детски/Младински програм"
+
+msgid "Content$Pre-school Children's Programme"
+msgstr "Предшколски програм"
+
+msgid "Content$Entertainment Programme for 6 to 14"
+msgstr "Забавна програма од 6 до 14"
+
+msgid "Content$Entertainment Programme for 10 to 16"
+msgstr "Забавна програма од 10 до 16"
+
+msgid "Content$Informational/Educational/School Programme"
+msgstr "Информативен/Образовен/Училишен програм"
+
+msgid "Content$Cartoons/Puppets"
+msgstr "Цртани/Куклени"
+
+msgid "Content$Music/Ballet/Dance"
+msgstr "Музика/Балет/Танц"
+
+msgid "Content$Rock/Pop"
+msgstr "Рок/Поп"
+
+msgid "Content$Serious/Classical Music"
+msgstr "Сериозна/Класична музика"
+
+msgid "Content$Folk/Tradional Music"
+msgstr "Фолк/Народна музика"
+
+msgid "Content$Jazz"
+msgstr "Џез"
+
+msgid "Content$Musical/Opera"
+msgstr "Музички/Опера"
+
+msgid "Content$Ballet"
+msgstr "Балет"
+
+msgid "Content$Arts/Culture"
+msgstr "Уметност/Култура"
+
+msgid "Content$Performing Arts"
+msgstr "Сценска уметност"
+
+msgid "Content$Fine Arts"
+msgstr "Применета уметност"
+
+msgid "Content$Religion"
+msgstr "Религија"
+
+msgid "Content$Popular Culture/Traditional Arts"
+msgstr "Популарна култура/Традиционална уметност"
+
+msgid "Content$Literature"
+msgstr "Литература"
+
+msgid "Content$Film/Cinema"
+msgstr "Филм/Кино"
+
+msgid "Content$Experimental Film/Video"
+msgstr "Експериментален филм/Видео"
+
+msgid "Content$Broadcasting/Press"
+msgstr "Радиодифузно/Печат"
+
+msgid "Content$New Media"
+msgstr "Нов медиум"
+
+msgid "Content$Arts/Culture Magazine"
+msgstr "Уметност/Културен магазин"
+
+msgid "Content$Fashion"
+msgstr "Мода"
+
+msgid "Content$Social/Political/Economics"
+msgstr "Социјален/Политички/Економски"
+
+msgid "Content$Magazine/Report/Documentary"
+msgstr "Магазин/Извештај/Докуметарец"
+
+msgid "Content$Economics/Social Advisory"
+msgstr "Економија/Социјален совети"
+
+msgid "Content$Remarkable People"
+msgstr "Исклучителни луѓе"
+
+msgid "Content$Education/Science/Factual"
+msgstr "Образовен/Научен/Фактички"
+
+msgid "Content$Nature/Animals/Environment"
+msgstr "Природа/Животни/Околина"
+
+msgid "Content$Technology/Natural Sciences"
+msgstr "Технологија/Природни науки"
+
+msgid "Content$Medicine/Physiology/Psychology"
+msgstr "Медицина/Физиологија/Психологија"
+
+msgid "Content$Foreign Countries/Expeditions"
+msgstr "Странски земји/Експедиции"
+
+msgid "Content$Social/Spiritual Sciences"
+msgstr "Социален/Духовни науки"
+
+msgid "Content$Further Education"
+msgstr "Понатамошно образование"
+
+msgid "Content$Languages"
+msgstr "Јазици"
+
+msgid "Content$Leisure/Hobbies"
+msgstr "Одмор/Хоби"
+
+msgid "Content$Tourism/Travel"
+msgstr "Туризам/Патувања"
+
+msgid "Content$Handicraft"
+msgstr "Ракотворби"
+
+msgid "Content$Motoring"
+msgstr "Возење"
+
+msgid "Content$Fitness & Health"
+msgstr "Фитнес и здравје"
+
+msgid "Content$Cooking"
+msgstr "Готвење"
+
+msgid "Content$Advertisement/Shopping"
+msgstr "Рекламирање/Шопинг"
+
+msgid "Content$Gardening"
+msgstr "Градинарство"
+
+msgid "Content$Original Language"
+msgstr "Оригинален јазик"
+
+msgid "Content$Black & White"
+msgstr "Црно бело"
+
+msgid "Content$Unpublished"
+msgstr "Необјавено"
+
+msgid "Content$Live Broadcast"
+msgstr "Емитување во живо"
+
+#, c-format
+msgid "ParentalRating$from %d"
+msgstr "Препорачливо од %d год"
+
+msgid "No title"
+msgstr "Без наслов"
+
+#. TRANSLATORS: The name of the language, as written natively
+msgid "LanguageName$English"
+msgstr "Македонски"
+
+#. TRANSLATORS: The 3-letter code of the language
+msgid "LanguageCode$eng"
+msgstr "mkd"
+
+msgid "Phase 1: Detecting RC code type"
+msgstr "Фаза 1: Детекција на типот на далечински управувач "
+
+msgid "Press any key on the RC unit"
+msgstr "Притиснете копче на далечинскиот управувач"
+
+msgid "RC code detected!"
+msgstr "Кодот е детектиран!"
+
+msgid "Do not press any key..."
+msgstr "Не притискај никое копче..."
+
+msgid "Phase 2: Learning specific key codes"
+msgstr "Фаза 2: Учење на специфични кодови"
+
+#, c-format
+msgid "Press key for '%s'"
+msgstr "Притисни копче за '%s'"
+
+msgid "Press 'Up' to confirm"
+msgstr "Притисни 'Горе' за потврда"
+
+msgid "Press 'Down' to continue"
+msgstr "Притисни 'Доле' за да продолжиш"
+
+msgid "(press 'Up' to go back)"
+msgstr "(притисни 'Горе' за назад)"
+
+msgid "(press 'Down' to end key definition)"
+msgstr "(притисни'Доле' за крај)"
+
+msgid "(press 'Menu' to skip this key)"
+msgstr "(притисни 'Мени' за прескокнување на ова копче)"
+
+msgid "Learning Remote Control Keys"
+msgstr "Учење на коппчињата на далечинскиот управувач"
+
+msgid "Phase 3: Saving key codes"
+msgstr "Фаза 3: Зачувување на кодовите"
+
+msgid "Press 'Up' to save, 'Down' to cancel"
+msgstr "Притисни 'Горе' за потврда, 'Доле' за откажување"
+
+msgid "Key$Up"
+msgstr "Горе"
+
+msgid "Key$Down"
+msgstr "Доле"
+
+msgid "Key$Menu"
+msgstr "Мени"
+
+msgid "Key$Ok"
+msgstr "Ок"
+
+msgid "Key$Back"
+msgstr "Назад"
+
+msgid "Key$Left"
+msgstr "Лево"
+
+msgid "Key$Right"
+msgstr "Десно"
+
+msgid "Key$Red"
+msgstr "Црвено"
+
+msgid "Key$Green"
+msgstr "Зелено"
+
+msgid "Key$Yellow"
+msgstr "Жолто"
+
+msgid "Key$Blue"
+msgstr "Сино"
+
+msgid "Key$Info"
+msgstr "Инфо"
+
+msgid "Key$Play"
+msgstr "Старт"
+
+msgid "Key$Pause"
+msgstr "Пауза"
+
+msgid "Key$Stop"
+msgstr "Стоп"
+
+msgid "Key$Record"
+msgstr "Снимај"
+
+msgid "Key$FastFwd"
+msgstr "Напред"
+
+msgid "Key$FastRew"
+msgstr "Назад"
+
+msgid "Key$Next"
+msgstr "Следно"
+
+msgid "Key$Prev"
+msgstr "Претходно"
+
+msgid "Key$Power"
+msgstr "Исклучи"
+
+msgid "Key$Channel+"
+msgstr "Канал+"
+
+msgid "Key$Channel-"
+msgstr "Канал-"
+
+msgid "Key$PrevChannel"
+msgstr "ПретходенКанал"
+
+msgid "Key$Volume+"
+msgstr "Глас+"
+
+msgid "Key$Volume-"
+msgstr "Глас-"
+
+msgid "Key$Mute"
+msgstr "Без звук"
+
+msgid "Key$Audio"
+msgstr "Аудио"
+
+msgid "Key$Subtitles"
+msgstr "Титл"
+
+msgid "Key$Schedule"
+msgstr "Распоред"
+
+msgid "Key$Channels"
+msgstr "Канали"
+
+msgid "Key$Timers"
+msgstr "Тајмери"
+
+msgid "Key$Recordings"
+msgstr "Снимки"
+
+msgid "Key$Setup"
+msgstr "Уредување"
+
+msgid "Key$Commands"
+msgstr "Наредби"
+
+msgid "Key$User0"
+msgstr "Корисник0"
+
+msgid "Key$User1"
+msgstr "Корисник1"
+
+msgid "Key$User2"
+msgstr "Корисник2"
+
+msgid "Key$User3"
+msgstr "Корисник3"
+
+msgid "Key$User4"
+msgstr "Корисник4"
+
+msgid "Key$User5"
+msgstr "Корисник5"
+
+msgid "Key$User6"
+msgstr "Корисник6"
+
+msgid "Key$User7"
+msgstr "Корисник7"
+
+msgid "Key$User8"
+msgstr "Корисник8"
+
+msgid "Key$User9"
+msgstr "Корисник9"
+
+msgid "Disk"
+msgstr "Диск"
+
+msgid "free"
+msgstr "слободен"
+
+msgid "Free To Air"
+msgstr "Слободно"
+
+msgid "encrypted"
+msgstr "енкриптиран"
+
+msgid "Edit channel"
+msgstr "Уреди канал"
+
+msgid "Name"
+msgstr "Име"
+
+msgid "Source"
+msgstr "Извор"
+
+msgid "Frequency"
+msgstr "Фрекфенција"
+
+msgid "Vpid"
+msgstr "Vpid"
+
+msgid "Ppid"
+msgstr "Ppid"
+
+msgid "Apid1"
+msgstr "Apid1"
+
+msgid "Apid2"
+msgstr "Apid2"
+
+msgid "Dpid1"
+msgstr "Dpid1"
+
+msgid "Dpid2"
+msgstr "Dpid2"
+
+msgid "Spid1"
+msgstr "Spid1"
+
+msgid "Spid2"
+msgstr "Spid2"
+
+msgid "Tpid"
+msgstr "Tpid"
+
+msgid "CA"
+msgstr "Кодирање (CA)"
+
+msgid "Sid"
+msgstr "Sid"
+
+msgid "Channel settings are not unique!"
+msgstr "Уредбите на каналот не се уникатни!"
+
+msgid "Channels"
+msgstr "Канали"
+
+msgid "Button$Edit"
+msgstr "Измени"
+
+msgid "Button$New"
+msgstr "Нов"
+
+msgid "Button$Delete"
+msgstr "Избриши"
+
+msgid "Button$Mark"
+msgstr "Обележи"
+
+msgid "Channel is being used by a timer!"
+msgstr "Каналот е мометално зафатен од тајмер!"
+
+msgid "Delete channel?"
+msgstr "Избриши канал?"
+
+msgid "Edit folder"
+msgstr "Уреди директориум"
+
+msgid "New folder"
+msgstr "Нов директориум"
+
+msgid "Sub folder"
+msgstr "Поддиректориум"
+
+msgid "Folder name already exists!"
+msgstr "Името веќе постои"
+
+#, c-format
+msgid "Folder name must not contain '%c'!"
+msgstr "Името на директориумот не смее да содржи '%c'"
+
+msgid "Button$Select"
+msgstr "Избери"
+
+msgid "Delete folder and all sub folders?"
+msgstr "Избриши директориум со сите поддиректориуми?"
+
+msgid "Delete folder?"
+msgstr "Избриши директориум?"
+
+msgid "Edit timer"
+msgstr "Уреди тајмер"
+
+msgid "Active"
+msgstr "Активен"
+
+msgid "Channel"
+msgstr "Канал"
+
+msgid "Day"
+msgstr "Ден"
+
+msgid "Start"
+msgstr "Почеток"
+
+msgid "Stop"
+msgstr "Крај"
+
+msgid "VPS"
+msgstr "VPS"
+
+msgid "Priority"
+msgstr "Приоритет"
+
+msgid "Lifetime"
+msgstr "Траење"
+
+msgid "File"
+msgstr "Датотека"
+
+msgid "Button$Folder"
+msgstr "Директориум"
+
+msgid "First day"
+msgstr "Прв ден"
+
+msgid "Select folder"
+msgstr "Избери директориум"
+
+msgid "Timers"
+msgstr "Тајмери"
+
+msgid "Button$On/Off"
+msgstr "Де/Активирај"
+
+msgid "Button$Info"
+msgstr "Инфо"
+
+msgid "Delete timer?"
+msgstr "Избриши тајмер?"
+
+msgid "Timer still recording - really delete?"
+msgstr "Тајмерот сеуште снима - бриши?"
+
+msgid "Event"
+msgstr "Емисија"
+
+msgid "Button$Timer"
+msgstr "Тајмер"
+
+msgid "Button$Record"
+msgstr "Сними"
+
+msgid "Button$Switch"
+msgstr "Смени"
+
+msgid "What's on now?"
+msgstr "Што е моментално на програмата?"
+
+msgid "What's on next?"
+msgstr "Што следи?"
+
+msgid "Button$Next"
+msgstr "Следи"
+
+msgid "Button$Now"
+msgstr "Моментално"
+
+msgid "Button$Schedule"
+msgstr "Распоред"
+
+msgid "Can't switch channel!"
+msgstr "Невозможно е да се смени канал!"
+
+#, c-format
+msgid "Schedule - %s"
+msgstr "Распоред - %s"
+
+#, c-format
+msgid "This event - %s"
+msgstr "Овој настан - %s"
+
+msgid "This event - all channels"
+msgstr "Овој настан - сите канали"
+
+msgid "All events - all channels"
+msgstr "Сите настани - сите канали"
+
+#, c-format
+msgid "Please enter %d digits!"
+msgstr "Внеси %d цифри!"
+
+msgid "CAM not responding!"
+msgstr "CAM не одговара!"
+
+msgid "Recording info"
+msgstr "Детали на снимката"
+
+msgid "Button$Play"
+msgstr "Старт"
+
+msgid "Button$Rewind"
+msgstr "Премотај"
+
+msgid "Recordings"
+msgstr "Снимки"
+
+msgid "Button$Open"
+msgstr "Отвори"
+
+msgid "Commands"
+msgstr "Наредби"
+
+msgid "Error while accessing recording!"
+msgstr "Грешка при пристап до снимката!"
+
+msgid "Delete recording?"
+msgstr "Избриши снимка?"
+
+msgid "Error while deleting recording!"
+msgstr "Грешка при бришење на снимката!"
+
+msgid "Recording commands"
+msgstr "Наредби за снимање"
+
+msgid "never"
+msgstr "никогаш"
+
+msgid "skin dependent"
+msgstr "зависно од фасада"
+
+msgid "always"
+msgstr "секогаш"
+
+msgid "OSD"
+msgstr "OSD"
+
+msgid "Setup.OSD$Language"
+msgstr "Јазик"
+
+msgid "Setup.OSD$Skin"
+msgstr "Фасада"
+
+msgid "Setup.OSD$Theme"
+msgstr "Тема"
+
+msgid "Setup.OSD$Left (%)"
+msgstr "Лево (%)"
+
+msgid "Setup.OSD$Top (%)"
+msgstr "Горе (%)"
+
+msgid "Setup.OSD$Width (%)"
+msgstr "Ширина (%)"
+
+msgid "Setup.OSD$Height (%)"
+msgstr "Висина (%)"
+
+msgid "Setup.OSD$Message time (s)"
+msgstr "Време за приказ на пораките (сек)"
+
+msgid "Setup.OSD$Use small font"
+msgstr "Користи мал фонт"
+
+msgid "Setup.OSD$Anti-alias"
+msgstr "Anti-alias"
+
+msgid "Setup.OSD$Default font"
+msgstr "Основен фонт"
+
+msgid "Setup.OSD$Small font"
+msgstr "Мал фонт"
+
+msgid "Setup.OSD$Fixed font"
+msgstr "Непроменлив фонт"
+
+msgid "Setup.OSD$Default font size (%)"
+msgstr "Големина на основниот фонт (%)"
+
+msgid "Setup.OSD$Small font size (%)"
+msgstr "Големина на малиот фонт (%)"
+
+msgid "Setup.OSD$Fixed font size (%)"
+msgstr "Големина на непроменливиот фонт (%)"
+
+msgid "Setup.OSD$Channel info position"
+msgstr "Позиција на информациите за каналот"
+
+msgid "bottom"
+msgstr "дно"
+
+msgid "top"
+msgstr "врв"
+
+msgid "Setup.OSD$Channel info time (s)"
+msgstr "Време за приказ на информациите за каналот (сек)"
+
+msgid "Setup.OSD$Info on channel switch"
+msgstr "Информации при промена на канал"
+
+msgid "Setup.OSD$Timeout requested channel info"
+msgstr "Прекин на приказ на информации за каналот"
+
+msgid "Setup.OSD$Scroll pages"
+msgstr "Листај по страници"
+
+msgid "Setup.OSD$Scroll wraps"
+msgstr "Скокни од крај на почеток"
+
+msgid "Setup.OSD$Menu key closes"
+msgstr "Копчето Мени затвара"
+
+msgid "Setup.OSD$Recording directories"
+msgstr "Директориум за снимки"
+
+msgid "Setup.OSD$Folders in timer menu"
+msgstr "Директориуми во менито за тајмер"
+
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
+msgid "EPG"
+msgstr "EPG (електронски водич на програми)"
+
+msgid "Button$Scan"
+msgstr "Барај"
+
+msgid "Setup.EPG$EPG scan timeout (h)"
+msgstr "Време до барање на EPG (ч)"
+
+msgid "Setup.EPG$EPG bugfix level"
+msgstr "Ниво на поправка на EPG грешки"
+
+msgid "Setup.EPG$EPG linger time (min)"
+msgstr "Време на задржување на EPG (мин)"
+
+msgid "Setup.EPG$Set system time"
+msgstr "Намести системско време"
+
+msgid "Setup.EPG$Use time from transponder"
+msgstr "Користи време од транспондер"
+
+#. TRANSLATORS: note the plural!
+msgid "Setup.EPG$Preferred languages"
+msgstr "Омилени јазици"
+
+#. TRANSLATORS: note the singular!
+msgid "Setup.EPG$Preferred language"
+msgstr "Омилен јазик"
+
+msgid "pan&scan"
+msgstr "прошири и барај"
+
+msgid "letterbox"
+msgstr "плико"
+
+msgid "center cut out"
+msgstr "исечи средина"
+
+msgid "no"
+msgstr "не"
+
+msgid "names only"
+msgstr "само имиња"
+
+msgid "PIDs only"
+msgstr "Само PID-ови"
+
+msgid "names and PIDs"
+msgstr "имиња и идентификатори (PIDs)"
+
+msgid "add new channels"
+msgstr "додај нови канали"
+
+msgid "add new transponders"
+msgstr "додај нови транспондери"
+
+msgid "DVB"
+msgstr "DVB"
+
+msgid "Setup.DVB$Primary DVB interface"
+msgstr "Примарен DVB уред"
+
+msgid "Setup.DVB$Video format"
+msgstr "Видео формат"
+
+msgid "Setup.DVB$Video display format"
+msgstr "Формат на видeo приказ"
+
+msgid "Setup.DVB$Use Dolby Digital"
+msgstr "Користи Dolby Digital"
+
+msgid "Setup.DVB$Update channels"
+msgstr "Ажурирај канали"
+
+msgid "Setup.DVB$Audio languages"
+msgstr "Аудио јазици"
+
+msgid "Setup.DVB$Audio language"
+msgstr "Аудио јазик"
+
+msgid "Setup.DVB$Display subtitles"
+msgstr "Прикажи титл"
+
+msgid "Setup.DVB$Subtitle languages"
+msgstr "Јазици на титл"
+
+msgid "Setup.DVB$Subtitle language"
+msgstr "Јазик на титл"
+
+msgid "Setup.DVB$Subtitle offset"
+msgstr "Поместување на титл"
+
+msgid "Setup.DVB$Subtitle foreground transparency"
+msgstr "Провидност на титлот"
+
+msgid "Setup.DVB$Subtitle background transparency"
+msgstr "Провидност на позадината на титлот"
+
+msgid "LNB"
+msgstr "LNB"
+
+msgid "Setup.LNB$Use DiSEqC"
+msgstr "Користи DiSEqC"
+
+msgid "Setup.LNB$SLOF (MHz)"
+msgstr "Фрекфенција на преклоп SLOF (MHz)"
+
+msgid "Setup.LNB$Low LNB frequency (MHz)"
+msgstr "Долна LNB фрекфенција (MHz)"
+
+msgid "Setup.LNB$High LNB frequency (MHz)"
+msgstr "Форна LNB фрекфенција (MHz)"
+
+msgid "CAM reset"
+msgstr "Рестартирај CAM"
+
+msgid "CAM present"
+msgstr "CAM присутен"
+
+msgid "CAM ready"
+msgstr "CAM спремен"
+
+msgid "CAM"
+msgstr "CAM"
+
+msgid "Button$Menu"
+msgstr "Мени"
+
+msgid "Button$Reset"
+msgstr "Ресетирај"
+
+msgid "Opening CAM menu..."
+msgstr "Отварам CAM мени..."
+
+msgid "Can't open CAM menu!"
+msgstr "Неуспешно отварање на CAM менито!"
+
+msgid "CAM is in use - really reset?"
+msgstr "CAM е во употреба - рестартирај?"
+
+msgid "Can't reset CAM!"
+msgstr "Неуспешно рестартирање на CAM-от!"
+
+msgid "do not pause live video"
+msgstr "не паузирај пренос во живо"
+
+msgid "confirm pause live video"
+msgstr "потврди пауза на пренос во живо"
+
+msgid "pause live video"
+msgstr "пауза на пренос во живо"
+
+msgid "confirm"
+msgstr "потврди"
+
+msgid "yes"
+msgstr "да"
+
+msgid "Recording"
+msgstr "Снимање"
+
+msgid "Setup.Recording$Margin at start (min)"
+msgstr "Резерва на почеток на снимање (мин)"
+
+msgid "Setup.Recording$Margin at stop (min)"
+msgstr "Резерва на крајот на снимање (мин)"
+
+msgid "Setup.Recording$Primary limit"
+msgstr "Стандардно огранучување"
+
+msgid "Setup.Recording$Default priority"
+msgstr "Зададен приоритет"
+
+msgid "Setup.Recording$Default lifetime (d)"
+msgstr "Стандардно веметраење (денови)"
+
+msgid "Setup.Recording$Pause key handling"
+msgstr "Подесување на копчето пауза"
+
+msgid "Setup.Recording$Pause priority"
+msgstr "Приоритет на пауза"
+
+msgid "Setup.Recording$Pause lifetime (d)"
+msgstr "Траење на пауза (денови)"
+
+msgid "Setup.Recording$Use episode name"
+msgstr "Користи име на епизода"
+
+msgid "Setup.Recording$Use VPS"
+msgstr "Користи VPS"
+
+msgid "Setup.Recording$VPS margin (s)"
+msgstr "Временска резерва на VPS (сек)"
+
+msgid "Setup.Recording$Mark instant recording"
+msgstr "Означи директно снимање"
+
+msgid "Setup.Recording$Name instant recording"
+msgstr "Име на директно снимање"
+
+msgid "Setup.Recording$Instant rec. time (min)"
+msgstr "Траење на директно снимање (мин)"
+
+msgid "Setup.Recording$Max. video file size (MB)"
+msgstr "Максимална големина на датотека (MB)"
+
+msgid "Setup.Recording$Split edited files"
+msgstr "Раздвои уредени датотеки"
+
+msgid "Setup.Recording$Delete timeshift recording"
+msgstr "Избриши временски поместена снимка"
+
+msgid "Replay"
+msgstr "Репродукција"
+
+msgid "Setup.Replay$Multi speed mode"
+msgstr "Повеќебрзински режим"
+
+msgid "Setup.Replay$Show replay mode"
+msgstr "Прикажи начин на пуштање"
+
+msgid "Setup.Replay$Resume ID"
+msgstr "ID на продолжеток"
+
+msgid "Miscellaneous"
+msgstr "Разно"
+
+msgid "Setup.Miscellaneous$Min. event timeout (min)"
+msgstr "Минимално време на тајмаут (мин)"
+
+msgid "Setup.Miscellaneous$Min. user inactivity (min)"
+msgstr "Минимум неактивност на корисникот (мин)"
+
+msgid "Setup.Miscellaneous$SVDRP timeout (s)"
+msgstr "SVDRP тајмаут (сек)"
+
+msgid "Setup.Miscellaneous$Zap timeout (s)"
+msgstr "Зап тајмаут (сек)"
+
+msgid "Setup.Miscellaneous$Channel entry timeout (ms)"
+msgstr "Тајмаут за внес на канал (ms)"
+
+msgid "Setup.Miscellaneous$Initial channel"
+msgstr "Почетен канал"
+
+msgid "Setup.Miscellaneous$as before"
+msgstr "како претходно"
+
+msgid "Setup.Miscellaneous$Initial volume"
+msgstr "Почетна јачина на звук"
+
+msgid "Setup.Miscellaneous$Channels wrap"
+msgstr "Премотување канали"
+
+msgid "Setup.Miscellaneous$Emergency exit"
+msgstr "Итен излез"
+
+msgid "Plugins"
+msgstr "Додатоци"
+
+msgid "This plugin has no setup parameters!"
+msgstr "Овој додаток нема параметри!"
+
+msgid "Setup"
+msgstr "Уредување"
+
+msgid "Restart"
+msgstr "Рестартирање"
+
+msgid "Really restart?"
+msgstr "Рестартирање?"
+
+#. TRANSLATORS: note the leading and trailing blanks!
+msgid " Stop recording "
+msgstr " Запри снимање "
+
+msgid "Schedule"
+msgstr "Распоред"
+
+msgid "VDR"
+msgstr "VDR"
+
+#. TRANSLATORS: note the leading blank!
+msgid " Stop replaying"
+msgstr " Запри пуштање"
+
+msgid "Button$Audio"
+msgstr "Аудио"
+
+msgid "Button$Pause"
+msgstr "Пауза"
+
+msgid "Button$Stop"
+msgstr "Стоп"
+
+msgid "Button$Resume"
+msgstr "Продолжи"
+
+#. TRANSLATORS: note the leading blank!
+msgid " Cancel editing"
+msgstr " Откажи уредување"
+
+msgid "Stop recording?"
+msgstr "Запри снимање?"
+
+msgid "Cancel editing?"
+msgstr "Запри уредување?"
+
+msgid "No audio available!"
+msgstr "Аудио недостапно!"
+
+msgid "No subtitles"
+msgstr "Без титл"
+
+msgid "Button$Subtitles"
+msgstr "Титл"
+
+msgid "No subtitles available!"
+msgstr "Титлови недостапни!"
+
+msgid "Not enough disk space to start recording!"
+msgstr "Нема доволно празен простор за снимање!"
+
+msgid "No free DVB device to record!"
+msgstr "Нема слободни DVB уреди за снимање!"
+
+msgid "Pausing live video..."
+msgstr "Пауза на пренос во живо..."
+
+msgid "Delete timeshift recording?"
+msgstr "Избриши временски поместена снимка?"
+
+#. TRANSLATORS: note the trailing blank!
+msgid "Jump: "
+msgstr "Скокни:"
+
+msgid "No editing marks defined!"
+msgstr "Нема одредено ознаки за сечење!"
+
+msgid "Can't start editing process!"
+msgstr "Не може да почне уредување!"
+
+msgid "Editing process started"
+msgstr "Уредувањето започна"
+
+msgid "Editing process already active!"
+msgstr "Уредувањето е веќе во тек!!"
+
+msgid "FileNameChars$ abcdefghijklmnopqrstuvwxyz0123456789-.,#~\\^$[]|()*+?{}/:%@&"
+msgstr "абвгдѓежзѕијклљмнњопрстќуфхцчџш0123456789-.,#~\\^$[]|()*+?{}/:%@&"
+
+msgid "CharMap$ 0\t-.,1#~\\^$[]|()*+?{}/:%@&\tabc2\tdef3\tghi4\tjkl5\tmno6\tpqrs7\ttuv8\twxyz9"
+msgstr "0\t-.,1#~\\^$[]|()*+?{}/:%@&\tabcабвг2\tdefдѓеж3\tghiзѕиј4\tjklклљм5\tmnoнњоп6\tpqrsрстќ7\ttuvуфхц8\twxyzчџш9"
+
+msgid "Button$ABC/abc"
+msgstr "АБВ/абв"
+
+msgid "Button$Overwrite"
+msgstr "Препиши"
+
+msgid "Button$Insert"
+msgstr "Вметни"
+
+msgid "Plugin"
+msgstr "Додаток"
+
+msgid "Up/Dn for new location - OK to move"
+msgstr "Горе/Доле за нова позиција - OK за потврда"
+
+msgid "Channel locked (recording)!"
+msgstr "Каналот е заклучен (снимање)!"
+
+msgid "Low disk space!"
+msgstr "Малку простор на дискот!"
+
+msgid "Regenerating index file"
+msgstr "Регенерирање на индекс датотека"
+
+msgid "Index file regeneration complete"
+msgstr "Регенерирањето на индексот заврши"
+
+msgid "Can't shutdown - option '-s' not given!"
+msgstr "Невозможно гаснење - недостасува опцијата '-s'!"
+
+msgid "Editing - shut down anyway?"
+msgstr "Уредување во тек - исклучи?"
+
+msgid "Recording - shut down anyway?"
+msgstr "Снимање во тек - исклучи?"
+
+#, c-format
+msgid "Recording in %ld minutes, shut down anyway?"
+msgstr "Снимање уште %ld минути - исклучи?"
+
+msgid "shut down anyway?"
+msgstr "сеедно исклучи?"
+
+#, c-format
+msgid "Plugin %s wakes up in %ld min, continue?"
+msgstr "Додатокот %s се подига за %ld мин, продолжи?"
+
+msgid "Editing - restart anyway?"
+msgstr "Уредување во тек - рестартирај?"
+
+msgid "Recording - restart anyway?"
+msgstr "Снимање во тек - рестартирај?"
+
+msgid "restart anyway?"
+msgstr "сеедно рестартирај?"
+
+#. TRANSLATORS: note the trailing blank!
+msgid "Volume "
+msgstr "Глас"
+
+msgid "Classic VDR"
+msgstr "Класичен VDR"
+
+msgid "ST:TNG Panels"
+msgstr "ST:TNG Панели"
+
+#. TRANSLATORS: the first character of each weekday, beginning with monday
+msgid "MTWTFSS"
+msgstr "ПВСЧПСН"
+
+#. TRANSLATORS: abbreviated weekdays, beginning with monday (must all be 3 letters!)
+msgid "MonTueWedThuFriSatSun"
+msgstr "ПонВтоСреЧетПетСабНед"
+
+msgid "Monday"
+msgstr "Понеделник"
+
+msgid "Tuesday"
+msgstr "Вторник"
+
+msgid "Wednesday"
+msgstr "Среда"
+
+msgid "Thursday"
+msgstr "Четврток"
+
+msgid "Friday"
+msgstr "Петок"
+
+msgid "Saturday"
+msgstr "Сабота"
+
+msgid "Sunday"
+msgstr "Недела"
+
+msgid "Upcoming recording!"
+msgstr "Претстои снимање!"
+
+msgid "Pause live video?"
+msgstr "Паузирај пренос во живо?"
+
+msgid "Recording started"
+msgstr "Снимањето почна"
+
+msgid "VDR will shut down later - press Power to force"
+msgstr "VDR ќе се исклучи подоцна - притиснете Исклучи за присилно исклучување"
+
+msgid "Press any key to cancel shutdown"
+msgstr "Притиснете копче за отказ на исклучување"
+
+msgid "Switching primary DVB..."
+msgstr "Промена на примарниот DVB уред..."
+
+msgid "Editing process failed!"
+msgstr "Сечењето е неуспешно!"
+
+msgid "Editing process finished"
+msgstr "Сечењето заврши"
+
+msgid "Press any key to cancel restart"
+msgstr "Притиснете копче за откажување на рестарт"
+
+#, c-format
+msgid "VDR will shut down in %s minutes"
+msgstr "VDR ќе се исклучи за %s минути"
diff --git a/po/nl_NL.po b/po/nl_NL.po
index f4d9120..f570337 100644
--- a/po/nl_NL.po
+++ b/po/nl_NL.po
@@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2008-02-26 17:20+0100\n"
"Last-Translator: Johan Schuring <johan.schuring@vetteblei.nl>\n"
"Language-Team: Dutch\n"
@@ -479,6 +479,9 @@ msgstr "Instellingen"
msgid "Key$Commands"
msgstr "Commando's"
+msgid "Key$User0"
+msgstr "Gebruiker0"
+
msgid "Key$User1"
msgstr "Gebruiker1"
@@ -840,6 +843,9 @@ msgstr "Opname mappen"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "EPG"
diff --git a/po/nn_NO.po b/po/nn_NO.po
index e739b35..2f40cfe 100644
--- a/po/nn_NO.po
+++ b/po/nn_NO.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
"Last-Translator: Truls Slevigen <truls@slevigen.no>\n"
"Language-Team: Norwegian\n"
@@ -476,6 +476,9 @@ msgstr "Konfigurasjon"
msgid "Key$Commands"
msgstr "Kommandoer"
+msgid "Key$User0"
+msgstr ""
+
msgid "Key$User1"
msgstr ""
@@ -837,6 +840,9 @@ msgstr "Kataloger til opptak"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "Programoversikt"
diff --git a/po/pl_PL.po b/po/pl_PL.po
index 9af0227..9620e1b 100644
--- a/po/pl_PL.po
+++ b/po/pl_PL.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2008-03-09 12:59+0100\n"
"Last-Translator: Michael Rakowski <mrak@gmx.de>\n"
"Language-Team: Polish\n"
@@ -476,6 +476,9 @@ msgstr "Ustawienia"
msgid "Key$Commands"
msgstr "Polecenia"
+msgid "Key$User0"
+msgstr "Uytkownik 0"
+
msgid "Key$User1"
msgstr "Uytkownik 1"
@@ -837,6 +840,9 @@ msgstr "Katalogi nagra"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "EPG"
diff --git a/po/pt_PT.po b/po/pt_PT.po
index edea421..0510d9d 100644
--- a/po/pt_PT.po
+++ b/po/pt_PT.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2008-03-18 17:04+0100\n"
"Last-Translator: anonymous\n"
"Language-Team: Portuguese\n"
@@ -475,6 +475,9 @@ msgstr "Configurao"
msgid "Key$Commands"
msgstr "Comandos"
+msgid "Key$User0"
+msgstr "Definida0"
+
msgid "Key$User1"
msgstr "Definida1"
@@ -836,6 +839,9 @@ msgstr "Directorias de gravao"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "Guia de programao"
diff --git a/po/ro_RO.po b/po/ro_RO.po
index ffac7e9..e0a2119 100644
--- a/po/ro_RO.po
+++ b/po/ro_RO.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.7.12\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2010-02-11 13:38+0100\n"
"Last-Translator: Lucian Muresan <lucianm@users.sourceforge.net>\n"
"Language-Team: Romanian\n"
@@ -478,6 +478,9 @@ msgstr "Configuraie"
msgid "Key$Commands"
msgstr "Comenzi"
+msgid "Key$User0"
+msgstr "Utilizator0"
+
msgid "Key$User1"
msgstr "Utilizator1"
@@ -839,6 +842,9 @@ msgstr "Directoare nregistrri"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "EPG"
diff --git a/po/ru_RU.po b/po/ru_RU.po
index 4409394..889b98b 100644
--- a/po/ru_RU.po
+++ b/po/ru_RU.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2008-12-15 14:37+0100\n"
"Last-Translator: Oleg Roitburd <oleg@roitburd.de>\n"
"Language-Team: Russian\n"
@@ -476,6 +476,9 @@ msgstr ""
msgid "Key$Commands"
msgstr ""
+msgid "Key$User0"
+msgstr "0"
+
msgid "Key$User1"
msgstr "1"
@@ -837,6 +840,9 @@ msgstr " "
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr ""
diff --git a/po/sk_SK.po b/po/sk_SK.po
index bedb133..129fad3 100644
--- a/po/sk_SK.po
+++ b/po/sk_SK.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2009-09-30 12:50+0100\n"
"Last-Translator: Milan Hrala <hrala.milan@gmail.com>\n"
"Language-Team: Slovak\n"
@@ -476,6 +476,9 @@ msgstr "Nastavenie"
msgid "Key$Commands"
msgstr "Prkazy"
+msgid "Key$User0"
+msgstr "Uvate0"
+
msgid "Key$User1"
msgstr "Uvate1"
@@ -837,6 +840,9 @@ msgstr "Zoznam zznamov"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "EPG"
diff --git a/po/sl_SI.po b/po/sl_SI.po
index 7f45b02..9f1e806 100644
--- a/po/sl_SI.po
+++ b/po/sl_SI.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2008-02-28 19:44+0100\n"
"Last-Translator: Matjaz Thaler <matjaz.thaler@guest.arnes.si>\n"
"Language-Team: Slovenian\n"
@@ -476,6 +476,9 @@ msgstr "Nastavitve"
msgid "Key$Commands"
msgstr "Ukazi"
+msgid "Key$User0"
+msgstr "Uporabnik0"
+
msgid "Key$User1"
msgstr "Uporabnik1"
@@ -837,6 +840,9 @@ msgstr "Direktoriji za posnetke"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "Programski vodnik"
diff --git a/po/sv_SE.po b/po/sv_SE.po
index 732e179..e9d39dd 100644
--- a/po/sv_SE.po
+++ b/po/sv_SE.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2008-03-12 18:25+0100\n"
"Last-Translator: Magnus Andersson <svankan@bahnhof.se>\n"
"Language-Team: Swedish\n"
@@ -478,6 +478,9 @@ msgstr "Instllningar"
msgid "Key$Commands"
msgstr "Kommandon"
+msgid "Key$User0"
+msgstr "Anvndare0"
+
msgid "Key$User1"
msgstr "Anvndare1"
@@ -839,6 +842,9 @@ msgstr "Kataloger fr inspelningar"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "EPG"
diff --git a/po/tr_TR.po b/po/tr_TR.po
index 1a3382c..9acd1c1 100644
--- a/po/tr_TR.po
+++ b/po/tr_TR.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2008-02-28 00:33+0100\n"
"Last-Translator: Oktay Yolgeen <oktay_73@yahoo.de>\n"
"Language-Team: Turkish\n"
@@ -475,6 +475,9 @@ msgstr "Ayarlar"
msgid "Key$Commands"
msgstr "Komutlar"
+msgid "Key$User0"
+msgstr "Kullanc0"
+
msgid "Key$User1"
msgstr "Kullanc1"
@@ -836,6 +839,9 @@ msgstr "Kayt dizinleri"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "EPG"
diff --git a/po/uk_UA.po b/po/uk_UA.po
index a373fb5..b62fca7 100644
--- a/po/uk_UA.po
+++ b/po/uk_UA.po
@@ -1,14 +1,14 @@
# VDR language source file.
# Copyright (C) 2008 Klaus Schmidinger <kls@tvdr.de>
# This file is distributed under the same license as the VDR package.
-# Yarema Aka Knedlyk <yupadmin@gmail.com>, 2007, 2008
+# Yarema Aka Knedlyk <yupadmin@gmail.com>, 2007, 2008, 2010
#
msgid ""
msgstr ""
"Project-Id-Version: VDR 1.7.7\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
-"PO-Revision-Date: 2009-05-31 13:17+0200\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
+"PO-Revision-Date: 2010-04-25 16:35+0200\n"
"Last-Translator: Yarema aka Knedlyk <yupadmin@gmail.com>\n"
"Language-Team: Ukrainian\n"
"MIME-Version: 1.0\n"
@@ -34,7 +34,7 @@ msgid "auto"
msgstr "авто"
msgid "none"
-msgstr "нічого"
+msgstr "нема"
msgid "Polarization"
msgstr "Поляризація"
@@ -76,245 +76,245 @@ msgid "Starting EPG scan"
msgstr "Починаю EPG-сканування"
msgid "Content$Movie/Drama"
-msgstr ""
+msgstr "Фільм/Драма"
msgid "Content$Detective/Thriller"
-msgstr ""
+msgstr "Детектив/Тріллер"
msgid "Content$Adventure/Western/War"
-msgstr ""
+msgstr "Пригоди/Вестерн/Війна"
msgid "Content$Science Fiction/Fantasy/Horror"
-msgstr ""
+msgstr "Наукова фантастика/Фантастика/Жахи"
msgid "Content$Comedy"
-msgstr ""
+msgstr "Комедія"
msgid "Content$Soap/Melodrama/Folkloric"
-msgstr ""
+msgstr "Мильна опера/Мелодрама/Фольклор"
msgid "Content$Romance"
-msgstr ""
+msgstr "Романс"
msgid "Content$Serious/Classical/Religious/Historical Movie/Drama"
-msgstr ""
+msgstr "Серйозне/Класика/Релігія/Історія/Драма"
msgid "Content$Adult Movie/Drama"
-msgstr ""
+msgstr "Кіно для дорослих/Драма"
msgid "Content$News/Current Affairs"
-msgstr ""
+msgstr "Новини/Поточні події"
msgid "Content$News/Weather Report"
-msgstr ""
+msgstr "Новини/Спорт"
msgid "Content$News Magazine"
-msgstr ""
+msgstr "Журнал новин"
msgid "Content$Documentary"
-msgstr ""
+msgstr "Документальне"
msgid "Content$Discussion/Inverview/Debate"
-msgstr ""
+msgstr "Дискусія/Інтерв’ю/Дебати"
msgid "Content$Show/Game Show"
-msgstr ""
+msgstr "Шоу//Ігри"
msgid "Content$Game Show/Quiz/Contest"
-msgstr ""
+msgstr "Ігрове шоу/Тести"
msgid "Content$Variety Show"
-msgstr ""
+msgstr "Вар’єте"
msgid "Content$Talk Show"
-msgstr ""
+msgstr "Ток шоу"
msgid "Content$Sports"
-msgstr ""
+msgstr "Спорт"
msgid "Content$Special Event"
-msgstr ""
+msgstr "Спеціальні події"
msgid "Content$Sport Magazine"
-msgstr ""
+msgstr "Спортивний журнал"
msgid "Content$Football/Soccer"
-msgstr ""
+msgstr "Футбол"
msgid "Content$Tennis/Squash"
-msgstr ""
+msgstr "Теніс/Сквош"
msgid "Content$Team Sports"
-msgstr ""
+msgstr "Спортивні команди"
msgid "Content$Athletics"
-msgstr ""
+msgstr "Атлетика"
msgid "Content$Motor Sport"
-msgstr ""
+msgstr "Моторний спорт"
msgid "Content$Water Sport"
-msgstr ""
+msgstr "Водний спорт"
msgid "Content$Winter Sports"
-msgstr ""
+msgstr "Зимовий спорт"
msgid "Content$Equestrian"
-msgstr ""
+msgstr "Кінний спорт"
msgid "Content$Martial Sports"
-msgstr ""
+msgstr "Військовий спорт"
msgid "Content$Children's/Youth Programme"
-msgstr ""
+msgstr "Дитяче/Молодіжні програми"
msgid "Content$Pre-school Children's Programme"
-msgstr ""
+msgstr "Дошкільні дитячі програми"
msgid "Content$Entertainment Programme for 6 to 14"
-msgstr ""
+msgstr "Програми для дітей від 6 до 14 років"
msgid "Content$Entertainment Programme for 10 to 16"
-msgstr ""
+msgstr "Програми для дітей від 10 до 16 років"
msgid "Content$Informational/Educational/School Programme"
-msgstr ""
+msgstr "Інформаційні/Навчальні/Шкільна програма"
msgid "Content$Cartoons/Puppets"
-msgstr ""
+msgstr "Мультфільми"
msgid "Content$Music/Ballet/Dance"
-msgstr ""
+msgstr "Музика/Балет/Танці"
msgid "Content$Rock/Pop"
-msgstr ""
+msgstr "Рок/Поп"
msgid "Content$Serious/Classical Music"
-msgstr ""
+msgstr "Серйозна/Класична музика"
msgid "Content$Folk/Tradional Music"
-msgstr ""
+msgstr "Фльк/Традиційна музика"
msgid "Content$Jazz"
-msgstr ""
+msgstr "Джаз"
msgid "Content$Musical/Opera"
-msgstr ""
+msgstr "Мюзикл/Опера"
msgid "Content$Ballet"
-msgstr ""
+msgstr "Балет"
msgid "Content$Arts/Culture"
-msgstr ""
+msgstr "Мистецтво/Культура"
msgid "Content$Performing Arts"
-msgstr ""
+msgstr "Дресирування"
msgid "Content$Fine Arts"
-msgstr ""
+msgstr "Образотворче мистецтво"
msgid "Content$Religion"
-msgstr ""
+msgstr "Релігія"
msgid "Content$Popular Culture/Traditional Arts"
-msgstr ""
+msgstr "Популярна культура/Традиційне мистецтво"
msgid "Content$Literature"
-msgstr ""
+msgstr "Література"
msgid "Content$Film/Cinema"
-msgstr ""
+msgstr "Кінофільм"
msgid "Content$Experimental Film/Video"
-msgstr ""
+msgstr "Експериментальний фільм/Відео"
msgid "Content$Broadcasting/Press"
-msgstr ""
+msgstr "Трансляція/Преса"
msgid "Content$New Media"
-msgstr ""
+msgstr "Нові медія"
msgid "Content$Arts/Culture Magazine"
-msgstr ""
+msgstr "Мистецтво/Культурний журнал"
msgid "Content$Fashion"
-msgstr ""
+msgstr "Мода"
msgid "Content$Social/Political/Economics"
-msgstr ""
+msgstr "Соцільне/Політичне/Економічне"
msgid "Content$Magazine/Report/Documentary"
-msgstr ""
+msgstr "Журнал/Рапорт/Документальне"
msgid "Content$Economics/Social Advisory"
-msgstr ""
+msgstr "Економіка/Соціальний порадник"
msgid "Content$Remarkable People"
-msgstr ""
+msgstr "Незвичайні люди"
msgid "Content$Education/Science/Factual"
-msgstr ""
+msgstr "Навчання/Наука/Факти"
msgid "Content$Nature/Animals/Environment"
-msgstr ""
+msgstr "Природа/Тварини/Навколишнє оточення"
msgid "Content$Technology/Natural Sciences"
-msgstr ""
+msgstr "Технологія/Природничі науки"
msgid "Content$Medicine/Physiology/Psychology"
-msgstr ""
+msgstr "Медицина/Фізіологія/Психологія"
msgid "Content$Foreign Countries/Expeditions"
-msgstr ""
+msgstr "Зарубіжні країни/Експедиції"
msgid "Content$Social/Spiritual Sciences"
-msgstr ""
+msgstr "Соціальна/Духовна наука"
msgid "Content$Further Education"
-msgstr ""
+msgstr "Дальше навчання"
msgid "Content$Languages"
-msgstr ""
+msgstr "Мови"
msgid "Content$Leisure/Hobbies"
-msgstr ""
+msgstr "Відпочинок/Хоббі"
msgid "Content$Tourism/Travel"
-msgstr ""
+msgstr "Туризм/Подорожі"
msgid "Content$Handicraft"
-msgstr ""
+msgstr "Ремісниче"
msgid "Content$Motoring"
-msgstr ""
+msgstr "Автомобільна справа"
msgid "Content$Fitness & Health"
-msgstr ""
+msgstr "Фітнес і здоров’я"
msgid "Content$Cooking"
-msgstr ""
+msgstr "Готування їжі"
msgid "Content$Advertisement/Shopping"
-msgstr ""
+msgstr "Реклама/Закупи"
msgid "Content$Gardening"
-msgstr ""
+msgstr "Сад/Город"
msgid "Content$Original Language"
-msgstr ""
+msgstr "Оригінальна мова"
msgid "Content$Black & White"
-msgstr ""
+msgstr "Чорне і біле"
msgid "Content$Unpublished"
-msgstr ""
+msgstr "Неопубліковане"
msgid "Content$Live Broadcast"
-msgstr ""
+msgstr "Трансляція"
#, c-format
msgid "ParentalRating$from %d"
-msgstr ""
+msgstr "з %d"
msgid "No title"
msgstr "Без назви"
@@ -337,7 +337,7 @@ msgid "RC code detected!"
msgstr "Визначено код пульта!"
msgid "Do not press any key..."
-msgstr "Не натискайте кнопки..."
+msgstr "Не натискайте жодної кнопки..."
msgid "Phase 2: Learning specific key codes"
msgstr "Крок 2: Приписування кодів для відповідних кнопок"
@@ -458,7 +458,7 @@ msgid "Key$Subtitles"
msgstr "Субтитри"
msgid "Key$Schedule"
-msgstr "Телегід"
+msgstr "Програма"
msgid "Key$Channels"
msgstr "Канали"
@@ -475,6 +475,9 @@ msgstr "Налаштування"
msgid "Key$Commands"
msgstr "Команди"
+msgid "Key$User0"
+msgstr "Користувач0"
+
msgid "Key$User1"
msgstr "Користувач1"
@@ -575,7 +578,7 @@ msgid "Button$Delete"
msgstr "Видалити"
msgid "Button$Mark"
-msgstr "Перемістити"
+msgstr "Помітити"
msgid "Channel is being used by a timer!"
msgstr "Канал зайнятий таймером!"
@@ -584,29 +587,29 @@ msgid "Delete channel?"
msgstr "Видалити канал?"
msgid "Edit folder"
-msgstr ""
+msgstr "Редагувати каталог"
msgid "New folder"
-msgstr ""
+msgstr "Новий каталог"
msgid "Sub folder"
-msgstr ""
+msgstr "Підкаталог"
msgid "Folder name already exists!"
-msgstr ""
+msgstr "Назва каталогу вже існує!"
#, c-format
msgid "Folder name must not contain '%c'!"
-msgstr ""
+msgstr "Назва каталогу не повинна містити '%c'!"
msgid "Button$Select"
-msgstr ""
+msgstr "Вибрати"
msgid "Delete folder and all sub folders?"
-msgstr ""
+msgstr "Видалити каталог і всі підкаталоги?"
msgid "Delete folder?"
-msgstr ""
+msgstr "Видалити каталог?"
msgid "Edit timer"
msgstr "Налаштування таймера"
@@ -639,13 +642,13 @@ msgid "File"
msgstr "Файл"
msgid "Button$Folder"
-msgstr ""
+msgstr "Каталог"
msgid "First day"
msgstr "Перший день"
msgid "Select folder"
-msgstr ""
+msgstr "Вибрати каталог"
msgid "Timers"
msgstr "Таймери"
@@ -708,7 +711,7 @@ msgstr "Всі передачі - всі канали"
#, c-format
msgid "Please enter %d digits!"
-msgstr "Натисніть %d цифри!"
+msgstr "Введіть %d цифри!"
msgid "CAM not responding!"
msgstr "CAM не відповідає!"
@@ -753,7 +756,7 @@ msgid "always"
msgstr "завжди"
msgid "OSD"
-msgstr "OSD меню"
+msgstr "Меню"
msgid "Setup.OSD$Language"
msgstr "Мова"
@@ -777,10 +780,10 @@ msgid "Setup.OSD$Height (%)"
msgstr "Висота (%)"
msgid "Setup.OSD$Message time (s)"
-msgstr "Тривалість показу повідомлень (сек)"
+msgstr "Час показу повідомлень (сек)"
msgid "Setup.OSD$Use small font"
-msgstr "Використовувати малий фонт"
+msgstr "Викор. малий фонт"
msgid "Setup.OSD$Anti-alias"
msgstr "Згладжування фонтів"
@@ -795,7 +798,7 @@ msgid "Setup.OSD$Fixed font"
msgstr "Фіксований фонт"
msgid "Setup.OSD$Default font size (%)"
-msgstr "Размір фонта для меню (%)"
+msgstr "Розмір типового фонта (%)"
msgid "Setup.OSD$Small font size (%)"
msgstr "Размір малого фонта (%)"
@@ -804,7 +807,7 @@ msgid "Setup.OSD$Fixed font size (%)"
msgstr "Размір фіксованого фонта (%)"
msgid "Setup.OSD$Channel info position"
-msgstr "Положення вікна інформації про канал"
+msgstr "Положення інформації про канал"
msgid "bottom"
msgstr "внизу"
@@ -816,10 +819,10 @@ msgid "Setup.OSD$Channel info time (s)"
msgstr "Показ інформації про канал (сек)"
msgid "Setup.OSD$Info on channel switch"
-msgstr "Показ канал-інфо при переключанні "
+msgstr "Інфо при переключанні каналу"
msgid "Setup.OSD$Timeout requested channel info"
-msgstr "Інформацію про канал закрити"
+msgstr "Час очікування інфо про канал"
msgid "Setup.OSD$Scroll pages"
msgstr "Прокрутка сторінок меню"
@@ -834,19 +837,22 @@ msgid "Setup.OSD$Recording directories"
msgstr "Каталоги зберігання записів"
msgid "Setup.OSD$Folders in timer menu"
+msgstr "Каталоги в меню таймера"
+
+msgid "Setup.OSD$Number keys for characters"
msgstr ""
msgid "EPG"
-msgstr "Телегід"
+msgstr "Телегід (EPG)"
msgid "Button$Scan"
msgstr "Сканувати"
msgid "Setup.EPG$EPG scan timeout (h)"
-msgstr "Затримка сканування телегіда (ч)"
+msgstr "Затримка сканування телегіда (г)"
msgid "Setup.EPG$EPG bugfix level"
-msgstr "Рівень корекції помилок"
+msgstr "Рівень корекції помилок EPG"
msgid "Setup.EPG$EPG linger time (min)"
msgstr "Зберігання застарілих даних (хв)"
@@ -855,7 +861,7 @@ msgid "Setup.EPG$Set system time"
msgstr "Встановити системий час"
msgid "Setup.EPG$Use time from transponder"
-msgstr "Використати час транспондера"
+msgstr "Викор. час з транспондера"
#. TRANSLATORS: note the plural!
msgid "Setup.EPG$Preferred languages"
@@ -905,10 +911,10 @@ msgid "Setup.DVB$Video display format"
msgstr "Формат зображення відео"
msgid "Setup.DVB$Use Dolby Digital"
-msgstr "Використовувати Dolby Digital"
+msgstr "Викор. Dolby Digital"
msgid "Setup.DVB$Update channels"
-msgstr "Оновлювати настройки каналів"
+msgstr "Оновлювати канали"
msgid "Setup.DVB$Audio languages"
msgstr "Бажані мови (звук)"
@@ -974,7 +980,7 @@ msgid "Can't open CAM menu!"
msgstr "Меню CAM-модуля недоступне!"
msgid "CAM is in use - really reset?"
-msgstr "CAM використовується - дійсно перезавантажити?"
+msgstr "CAM використовується - дійсно перезапустити?"
msgid "Can't reset CAM!"
msgstr "Помилка перезапуску CAM-модуля!"
@@ -989,7 +995,7 @@ msgid "pause live video"
msgstr "призупинити перегляд"
msgid "confirm"
-msgstr ""
+msgstr "підтвердити"
msgid "yes"
msgstr "так"
@@ -1022,10 +1028,10 @@ msgid "Setup.Recording$Pause lifetime (d)"
msgstr "Зберігання відкладеного перегляду (дні)"
msgid "Setup.Recording$Use episode name"
-msgstr "Використовувати назву епізоду"
+msgstr "Викор. назву епізоду"
msgid "Setup.Recording$Use VPS"
-msgstr "Використовувати сигнали VPS"
+msgstr "Викор. VPS"
msgid "Setup.Recording$VPS margin (s)"
msgstr "Буферний час VPS (сек)"
@@ -1043,10 +1049,10 @@ msgid "Setup.Recording$Max. video file size (MB)"
msgstr "Макс. размір відеофайлу (Мб)"
msgid "Setup.Recording$Split edited files"
-msgstr "Ділити відредаговані файли"
+msgstr "Поділити відредаговані файли"
msgid "Setup.Recording$Delete timeshift recording"
-msgstr ""
+msgstr "Видалити записи з зсувом по часу"
msgid "Replay"
msgstr "Перегляд"
@@ -1058,7 +1064,7 @@ msgid "Setup.Replay$Show replay mode"
msgstr "Віображати режим перегляду"
msgid "Setup.Replay$Resume ID"
-msgstr "ID перегляду"
+msgstr "ID продовження"
msgid "Miscellaneous"
msgstr "Різне"
@@ -1088,7 +1094,7 @@ msgid "Setup.Miscellaneous$Initial volume"
msgstr "Гучність при включенні"
msgid "Setup.Miscellaneous$Channels wrap"
-msgstr ""
+msgstr "Кінець каналів"
msgid "Setup.Miscellaneous$Emergency exit"
msgstr "Аварійний вихід"
@@ -1136,13 +1142,13 @@ msgstr "Продовжити"
#. TRANSLATORS: note the leading blank!
msgid " Cancel editing"
-msgstr " Перервати монтаж запису"
+msgstr " Перервати монтаж"
msgid "Stop recording?"
msgstr "Припинити запис?"
msgid "Cancel editing?"
-msgstr "Перервати редактування?"
+msgstr "Перервати монтаж?"
msgid "No audio available!"
msgstr "Відсутній звук!"
@@ -1166,7 +1172,7 @@ msgid "Pausing live video..."
msgstr "Режим відкладеного перегляду..."
msgid "Delete timeshift recording?"
-msgstr ""
+msgstr "Видалити запис з часовим зсувом?"
#. TRANSLATORS: note the trailing blank!
msgid "Jump: "
@@ -1212,10 +1218,10 @@ msgid "Low disk space!"
msgstr "Недостатньо місця на диску!"
msgid "Regenerating index file"
-msgstr ""
+msgstr "Регенерація файлу індексів"
msgid "Index file regeneration complete"
-msgstr ""
+msgstr "Регенерацію файлу індексу завершено"
msgid "Can't shutdown - option '-s' not given!"
msgstr "Виключенння неможливе - не задано параметр '-s'!"
@@ -1286,10 +1292,10 @@ msgid "Sunday"
msgstr "Неділя"
msgid "Upcoming recording!"
-msgstr "Запис скоро почнеться"
+msgstr "Запис скоро почнеться!"
msgid "Pause live video?"
-msgstr "Режим відкладеного перегляду..."
+msgstr "Призупинити перегляд?"
msgid "Recording started"
msgstr "Запис почався"
diff --git a/po/zh_CN.po b/po/zh_CN.po
index 48c4a38..bffa301 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
-"POT-Creation-Date: 2010-03-12 16:49+0100\n"
+"POT-Creation-Date: 2010-06-06 12:52+0200\n"
"PO-Revision-Date: 2009-09-23 23:50+0800\n"
"Last-Translator: Nan Feng <nfgx@21cn.com>\n"
"Language-Team: Chinese\n"
@@ -478,6 +478,9 @@ msgstr "设置"
msgid "Key$Commands"
msgstr "命令"
+msgid "Key$User0"
+msgstr "用户0"
+
msgid "Key$User1"
msgstr "用户1"
@@ -839,6 +842,9 @@ msgstr "录像目录"
msgid "Setup.OSD$Folders in timer menu"
msgstr ""
+msgid "Setup.OSD$Number keys for characters"
+msgstr ""
+
msgid "EPG"
msgstr "电子节目单设置"
diff --git a/remux.c b/remux.c
index 2532c63..5206544 100644
--- a/remux.c
+++ b/remux.c
@@ -1,10 +1,10 @@
/*
- * remux.h: Tools for detecting frames and handling PAT/PMT
+ * remux.c: Tools for detecting frames and handling PAT/PMT
*
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: remux.c 2.42 2010/02/28 14:42:07 kls Exp $
+ * $Id: remux.c 2.47 2010/06/05 13:32:15 kls Exp $
*/
#include "remux.h"
@@ -188,10 +188,10 @@ int cPatPmtGenerator::MakeStream(uchar *Target, uchar Type, int Pid)
return i;
}
-int cPatPmtGenerator::MakeAC3Descriptor(uchar *Target)
+int cPatPmtGenerator::MakeAC3Descriptor(uchar *Target, uchar Type)
{
int i = 0;
- Target[i++] = SI::AC3DescriptorTag;
+ Target[i++] = Type;
Target[i++] = 0x01; // length
Target[i++] = 0x00;
IncEsInfoLength(i);
@@ -219,11 +219,17 @@ int cPatPmtGenerator::MakeLanguageDescriptor(uchar *Target, const char *Language
{
int i = 0;
Target[i++] = SI::ISO639LanguageDescriptorTag;
- Target[i++] = 0x04; // length
- Target[i++] = *Language++;
- Target[i++] = *Language++;
- Target[i++] = *Language++;
- Target[i++] = 0x01; // audio type
+ int Length = i++;
+ Target[Length] = 0x00; // length
+ for (const char *End = Language + strlen(Language); Language < End; ) {
+ Target[i++] = *Language++;
+ Target[i++] = *Language++;
+ Target[i++] = *Language++;
+ Target[i++] = 0x01; // audio type
+ Target[Length] += 0x04; // length
+ if (*Language == '+')
+ Language++;
+ }
IncEsInfoLength(i);
return i;
}
@@ -315,15 +321,13 @@ void cPatPmtGenerator::GeneratePmt(const cChannel *Channel)
if (Vpid)
i += MakeStream(buf + i, Channel->Vtype(), Vpid);
for (int n = 0; Channel->Apid(n); n++) {
- i += MakeStream(buf + i, 0x04, Channel->Apid(n));
+ i += MakeStream(buf + i, Channel->Atype(n), Channel->Apid(n));
const char *Alang = Channel->Alang(n);
i += MakeLanguageDescriptor(buf + i, Alang);
- if (Alang[3] == '+')
- i += MakeLanguageDescriptor(buf + i, Alang + 3);
}
for (int n = 0; Channel->Dpid(n); n++) {
i += MakeStream(buf + i, 0x06, Channel->Dpid(n));
- i += MakeAC3Descriptor(buf + i);
+ i += MakeAC3Descriptor(buf + i, Channel->Dtype(n));
i += MakeLanguageDescriptor(buf + i, Channel->Dlang(n));
}
for (int n = 0; Channel->Spid(n); n++) {
@@ -506,6 +510,8 @@ void cPatPmtParser::ParsePmt(const uchar *Data, int Length)
break;
case 0x03: // STREAMTYPE_11172_AUDIO
case 0x04: // STREAMTYPE_13818_AUDIO
+ case 0x0F: // ISO/IEC 13818-7 Audio with ADTS transport sytax
+ case 0x11: // ISO/IEC 14496-3 Audio with LATM transport syntax
{
if (NumApids < MAXAPIDS) {
apids[NumApids] = stream.getPid();
@@ -546,13 +552,16 @@ void cPatPmtParser::ParsePmt(const uchar *Data, int Length)
case 0x06: // STREAMTYPE_13818_PES_PRIVATE
{
int dpid = 0;
+ int dtype = 0;
char lang[MAXLANGCODE1] = "";
SI::Descriptor *d;
for (SI::Loop::Iterator it; (d = stream.streamDescriptors.getNext(it)); ) {
switch (d->getDescriptorTag()) {
case SI::AC3DescriptorTag:
+ case SI::EnhancedAC3DescriptorTag:
dbgpatpmt(" AC3");
dpid = stream.getPid();
+ dtype = d->getDescriptorTag();
break;
case SI::SubtitlingDescriptorTag:
dbgpatpmt(" subtitling");
@@ -599,7 +608,7 @@ void cPatPmtParser::ParsePmt(const uchar *Data, int Length)
if (dpid) {
if (NumDpids < MAXDPIDS) {
dpids[NumDpids] = dpid;
- dtypes[NumDpids] = stream.getStreamType();
+ dtypes[NumDpids] = dtype;
strn0cpy(dlangs[NumDpids], lang, sizeof(dlangs[NumDpids]));
if (updatePrimaryDevice && Setup.UseDolbyDigital)
cDevice::PrimaryDevice()->SetAvailableTrack(ttDolby, NumDpids, dpid, lang);
@@ -659,6 +668,10 @@ void cTsToPes::PutTs(const uchar *Data, int Length)
if (length + Length > size) {
size = max(KILOBYTE(2), length + Length);
data = (uchar *)realloc(data, size);
+ if (!data) {
+ Reset();
+ return;
+ }
}
memcpy(data + length, Data, Length);
length += Length;
@@ -817,7 +830,7 @@ int cFrameDetector::Analyze(const uchar *Data, int Length)
if (synced && Processed)
return Processed;
if (Length < MIN_TS_PACKETS_FOR_FRAME_DETECTOR * TS_SIZE)
- return 0; // need more data, in case the frame type is not stored in the first TS packet
+ return Processed; // need more data, in case the frame type is not stored in the first TS packet
if (!frameDuration) {
// frame duration unknown, so collect a sequence of PTS values:
if (numPtsValues < MaxPtsValues && numIFrames < 2) { // collect a sequence containing at least two I-frames
diff --git a/remux.h b/remux.h
index 1115c4a..7b62187 100644
--- a/remux.h
+++ b/remux.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: remux.h 2.24 2010/01/29 16:51:26 kls Exp $
+ * $Id: remux.h 2.26 2010/06/05 13:27:55 kls Exp $
*/
#ifndef __REMUX_H
@@ -84,7 +84,8 @@ inline bool TsIsScrambled(const uchar *p)
inline int TsPayloadOffset(const uchar *p)
{
- return (p[3] & TS_ADAPT_FIELD_EXISTS) ? p[4] + 5 : 4;
+ int o = (p[3] & TS_ADAPT_FIELD_EXISTS) ? p[4] + 5 : 4;
+ return o <= TS_SIZE ? o : TS_SIZE;
}
inline int TsGetPayload(const uchar **p)
@@ -168,7 +169,7 @@ private:
void IncEsInfoLength(int Length);
protected:
int MakeStream(uchar *Target, uchar Type, int Pid);
- int MakeAC3Descriptor(uchar *Target);
+ int MakeAC3Descriptor(uchar *Target, uchar Type);
int MakeSubtitlingDescriptor(uchar *Target, const char *Language, uchar SubtitlingType, uint16_t CompositionPageId, uint16_t AncillaryPageId);
int MakeLanguageDescriptor(uchar *Target, const char *Language);
int MakeCRC(uchar *Target, const uchar *Data, int Length);
diff --git a/sdt.c b/sdt.c
index 1ed9b32..5f2502b 100644
--- a/sdt.c
+++ b/sdt.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: sdt.c 2.4 2009/12/23 16:02:47 kls Exp $
+ * $Id: sdt.c 2.5 2010/05/16 14:23:21 kls Exp $
*/
#include "sdt.h"
@@ -55,6 +55,7 @@ void cSdtFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
case 0x02: // digital radio sound service
case 0x04: // NVOD reference service
case 0x05: // NVOD time-shifted service
+ case 0x16: // digital SD television service
case 0x19: // digital HD television service
{
char NameBuf[Utf8BufSize(1024)];
diff --git a/svdrpsend.pl b/svdrpsend.pl
index 5efd504..03d78fe 100755
--- a/svdrpsend.pl
+++ b/svdrpsend.pl
@@ -7,13 +7,13 @@ $Usage = qq{
Usage: $0 options command...
Options: -d hostname destination hostname (default: localhost)
- -p port SVDRP port number (default: 2001)
+ -p port SVDRP port number (default: 6419)
};
die $Usage if (!$ARGV[0] || !getopts("d:p:"));
$Dest = $opt_d || "localhost";
-$Port = $opt_p || 2001;
+$Port = $opt_p || 6419;
$Cmd = "@ARGV" || Error("missing command");
$Timeout = 10; # max. seconds to wait for response
diff --git a/vdr.1 b/vdr.1
index 9bd1f0e..ea93bdd 100644
--- a/vdr.1
+++ b/vdr.1
@@ -8,7 +8,7 @@
.\" License as specified in the file COPYING that comes with the
.\" vdr distribution.
.\"
-.\" $Id: vdr.1 2.4 2010/01/02 12:08:40 kls Exp $
+.\" $Id: vdr.1 2.5 2010/04/02 12:22:08 kls Exp $
.\"
.TH vdr 1 "10 Feb 2008" "1.6" "Video Disk Recorder"
.SH NAME
@@ -37,7 +37,7 @@ It can be controlled by the PC keyboard, a home built "Remote Control Unit"
(RCU) or the "Linux Infrared Remote Control" (LIRC).
Remote access is possible via the "Simple Video Disk Recorder Protocol" (SVDRP),
-which can be accessed on port 2001, for instance by \fBtelnet\fR.
+which can be accessed on port 6419, for instance by \fBtelnet\fR.
.SH OPTIONS
.TP
.BI \-a\ cmd ,\ \-\-audio= cmd
@@ -124,7 +124,7 @@ Don't use the keyboard as an input device.
.TP
.BI \-p\ port ,\ \-\-port= port
Use \fIport\fR for SVDRP. A value of \fB0\fR turns off SVDRP.
-The default SVDRP port is \fB2001\fR.
+The default SVDRP port is \fB6419\fR.
You need to edit the file \fIsvdrphosts.conf\fR in order to enable
access to the SVDRP port.
.TP
diff --git a/vdr.5 b/vdr.5
index dbef7dc..68711b5 100644
--- a/vdr.5
+++ b/vdr.5
@@ -8,7 +8,7 @@
.\" License as specified in the file COPYING that comes with the
.\" vdr distribution.
.\"
-.\" $Id: vdr.5 2.17 2010/03/06 14:04:54 kls Exp $
+.\" $Id: vdr.5 2.19 2010/05/16 12:15:48 kls Exp $
.\"
.TH vdr 5 "10 Feb 2008" "1.6" "Video Disk Recorder Files"
.SH NAME
@@ -204,6 +204,13 @@ can be indicated by adding a second language code, delimited by a '+' sign, as i
.B ...:101=deu,102=eng+spa;103=deu,104=eng:...
+The audio type is appended with a separating '@' character, as in
+
+.B ...:101=deu@4,102=eng+spa@4,105=@4:...
+
+Note that if there is no language code, there still is the separating '='
+if there is an audio type.
+
.TP
.B TPID
The teletext PID.
@@ -463,7 +470,9 @@ If this is not the case in a particular setup, lines of the form
may be inserted in the \fIdiseqc.conf\fR file, defining the devices that are able
to receive the satellites following thereafter. In this case, only the devices
-1, 2 and 4 would be able to receive any satellites following this line.
+1, 2 and 4 would be able to receive any satellites following this line and up
+to the next such line, or the end of the file. Devices may be listed more than
+once.
.SS REMOTE CONTROL KEYS
The file \fIremote.conf\fR contains the key assignments for all remote control
units. Each line consists of one key assignment in the following format:
diff --git a/vdr.c b/vdr.c
index e7abdcb..93f586a 100644
--- a/vdr.c
+++ b/vdr.c
@@ -22,7 +22,7 @@
*
* The project's page is at http://www.tvdr.de
*
- * $Id: vdr.c 2.17 2010/02/21 14:08:09 kls Exp $
+ * $Id: vdr.c 2.19 2010/04/05 10:06:16 kls Exp $
*/
#include <getopt.h>
@@ -177,7 +177,7 @@ int main(int argc, char *argv[])
// Command line options:
-#define DEFAULTSVDRPPORT 2001
+#define DEFAULTSVDRPPORT 6419
#define DEFAULTWATCHDOG 0 // seconds
#define DEFAULTCONFDIR CONFDIR
#define DEFAULTPLUGINDIR PLUGINDIR
@@ -992,7 +992,7 @@ int main(int argc, char *argv[])
case kRecordings: DirectMainFunction(osRecordings); break;
case kSetup: DirectMainFunction(osSetup); break;
case kCommands: DirectMainFunction(osCommands); break;
- case kUser1 ... kUser9: cRemote::PutMacro(key); key = kNone; break;
+ case kUser0 ... kUser9: cRemote::PutMacro(key); key = kNone; break;
case k_Plugin: {
const char *PluginName = cRemote::GetPlugin();
if (PluginName) {