summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaus Schmidinger <kls (at) cadsoft (dot) de>2008-04-13 18:00:00 +0200
committerKlaus Schmidinger <kls (at) cadsoft (dot) de>2008-04-13 18:00:00 +0200
commit771986b89fc19b4ae65179ccf7dd8082512f8b7d (patch)
tree7c9b53c2f3008ea61bc3af93b2c4a5ac3e4a7b6a
parentfa56503b9a050ec0f0445d48f9bc167b9abe5ee1 (diff)
downloadvdr-patch-lnbsharing-771986b89fc19b4ae65179ccf7dd8082512f8b7d.tar.gz
vdr-patch-lnbsharing-771986b89fc19b4ae65179ccf7dd8082512f8b7d.tar.bz2
Version 1.7.0vdr-1.7.0
- Re-implemented handling of DVB-S2, which first appeared in version 1.5.14, but was revoked in version 1.5.15 in favor of making a stable version 1.6.0. VDR now requires the "multiproto" DVB driver, e.g. from http://jusst.de/hg/multiproto. Note that the channels.conf file now supports additional parameters, so you may want to make sure you have a backup of this file in case you need to go back to the previous version of VDR! - Fixed displaying transponder data when it is modified (thanks to Reinhard Nissl). - Fixed handling the counter in detection of pre 1.3.19 PS data (thanks to Reinhard Nissl). - Improved logging system time changes to avoid problems on slow systems under heavy load (suggested by Helmut Auer). - Now setting the thread name, so that it can be seen in 'top -H' (thanks to Rolf Ahrenberg). - Fixed initializing the timer's flags in the cTimer copy constructor (thanks to Andreas Mair). - Fixed setting the OSD level in the 'osddemo' example (thanks to Wolfgang Rohdewald). - Increased the time between checking the CAM status to 500ms to avoid problems with some CAMs (reported by Arthur Konovalov).
-rw-r--r--CONTRIBUTORS8
-rw-r--r--HISTORY32
-rw-r--r--Make.config.template2
-rw-r--r--Makefile2
-rw-r--r--PLUGINS/src/hello/Makefile2
-rw-r--r--PLUGINS/src/hello/hello.c2
-rw-r--r--PLUGINS/src/osddemo/HISTORY4
-rw-r--r--PLUGINS/src/osddemo/Makefile2
-rw-r--r--PLUGINS/src/osddemo/osddemo.c6
-rw-r--r--PLUGINS/src/pictures/Makefile2
-rw-r--r--PLUGINS/src/pictures/entry.c2
-rw-r--r--PLUGINS/src/pictures/entry.h2
-rw-r--r--PLUGINS/src/pictures/menu.c2
-rw-r--r--PLUGINS/src/pictures/menu.h2
-rwxr-xr-xPLUGINS/src/pictures/pic2mpg2
-rw-r--r--PLUGINS/src/pictures/pictures.c2
-rw-r--r--PLUGINS/src/pictures/player.c2
-rw-r--r--PLUGINS/src/pictures/player.h2
-rw-r--r--PLUGINS/src/servicedemo/Makefile2
-rw-r--r--PLUGINS/src/servicedemo/svccli.c2
-rw-r--r--PLUGINS/src/servicedemo/svcsvr.c2
-rw-r--r--PLUGINS/src/skincurses/Makefile2
-rw-r--r--[-rwxr-xr-x]PLUGINS/src/skincurses/po/it_IT.po0
-rw-r--r--PLUGINS/src/skincurses/skincurses.c2
-rw-r--r--PLUGINS/src/sky/Makefile2
-rwxr-xr-xPLUGINS/src/sky/getskyepg.pl2
-rw-r--r--PLUGINS/src/sky/sky.c2
-rw-r--r--PLUGINS/src/status/Makefile2
-rw-r--r--PLUGINS/src/status/status.c2
-rw-r--r--PLUGINS/src/svdrpdemo/Makefile2
-rw-r--r--PLUGINS/src/svdrpdemo/svdrpdemo.c2
-rw-r--r--audio.c2
-rw-r--r--audio.h2
-rw-r--r--channels.c225
-rw-r--r--channels.h23
-rw-r--r--ci.c4
-rw-r--r--ci.h2
-rw-r--r--config.c2
-rw-r--r--config.h10
-rw-r--r--cutter.c2
-rw-r--r--cutter.h2
-rw-r--r--device.c28
-rw-r--r--device.h8
-rw-r--r--diseqc.c2
-rw-r--r--diseqc.h2
-rw-r--r--dvbci.c2
-rw-r--r--dvbci.h2
-rw-r--r--dvbdevice.c303
-rw-r--r--dvbdevice.h10
-rw-r--r--dvbosd.c2
-rw-r--r--dvbosd.h2
-rw-r--r--dvbplayer.c2
-rw-r--r--dvbplayer.h2
-rw-r--r--dvbspu.c2
-rw-r--r--dvbspu.h2
-rw-r--r--dvbsubtitle.c2
-rw-r--r--dvbsubtitle.h2
-rw-r--r--eit.c8
-rw-r--r--eit.h2
-rw-r--r--eitscan.c2
-rw-r--r--eitscan.h2
-rw-r--r--epg.c2
-rw-r--r--epg.h2
-rwxr-xr-xepg2html.pl2
-rw-r--r--filter.c2
-rw-r--r--filter.h2
-rw-r--r--font.c2
-rw-r--r--font.h2
-rwxr-xr-xi18n-to-gettext.pl2
-rw-r--r--i18n.c2
-rw-r--r--i18n.h2
-rw-r--r--interface.c2
-rw-r--r--interface.h2
-rw-r--r--keys.c2
-rw-r--r--keys.h2
-rw-r--r--libsi/Makefile2
-rw-r--r--libsi/descriptor.c2
-rw-r--r--libsi/descriptor.h2
-rwxr-xr-xlibsi/gendescr.pl2
-rw-r--r--libsi/headers.h2
-rw-r--r--libsi/section.c2
-rw-r--r--libsi/section.h2
-rw-r--r--libsi/si.c2
-rw-r--r--libsi/si.h2
-rw-r--r--libsi/util.c2
-rw-r--r--libsi/util.h2
-rw-r--r--lirc.c2
-rw-r--r--lirc.h2
-rw-r--r--menu.c80
-rw-r--r--menu.h2
-rw-r--r--menuitems.c60
-rw-r--r--menuitems.h13
-rwxr-xr-xnewplugin2
-rw-r--r--nit.c38
-rw-r--r--nit.h2
-rw-r--r--osd.c2
-rw-r--r--osd.h2
-rw-r--r--osdbase.c2
-rw-r--r--osdbase.h2
-rw-r--r--pat.c3
-rw-r--r--pat.h2
-rw-r--r--player.c2
-rw-r--r--player.h2
-rw-r--r--plugin.c2
-rw-r--r--plugin.h2
-rw-r--r--po/ca_ES.po44
-rw-r--r--po/cs_CZ.po44
-rw-r--r--po/da_DK.po44
-rw-r--r--po/de_DE.po44
-rw-r--r--po/el_GR.po44
-rw-r--r--po/es_ES.po44
-rw-r--r--po/et_EE.po44
-rw-r--r--po/fi_FI.po44
-rw-r--r--po/fr_FR.po44
-rw-r--r--po/hr_HR.po44
-rw-r--r--po/hu_HU.po47
-rw-r--r--po/it_IT.po44
-rw-r--r--po/nl_NL.po44
-rw-r--r--po/nn_NO.po44
-rw-r--r--po/pl_PL.po44
-rw-r--r--po/pt_PT.po44
-rw-r--r--po/ro_RO.po44
-rw-r--r--po/ru_RU.po44
-rw-r--r--po/sl_SI.po44
-rw-r--r--po/sv_SE.po44
-rw-r--r--po/tr_TR.po44
-rw-r--r--po/uk_UA.po46
-rw-r--r--po/zh_CN.po44
-rw-r--r--rcu.c2
-rw-r--r--rcu.h2
-rw-r--r--receiver.c2
-rw-r--r--receiver.h2
-rw-r--r--recorder.c2
-rw-r--r--recorder.h2
-rw-r--r--recording.c2
-rw-r--r--recording.h2
-rw-r--r--remote.c2
-rw-r--r--remote.h2
-rw-r--r--remux.c2
-rw-r--r--remux.h2
-rw-r--r--ringbuffer.c2
-rw-r--r--ringbuffer.h2
-rwxr-xr-xrunvdr2
-rw-r--r--sdt.c3
-rw-r--r--sdt.h2
-rw-r--r--sections.c2
-rw-r--r--sections.h2
-rw-r--r--shutdown.c2
-rw-r--r--shutdown.h2
-rw-r--r--skinclassic.c2
-rw-r--r--skinclassic.h2
-rw-r--r--skins.c2
-rw-r--r--skins.h2
-rw-r--r--skinsttng.c2
-rw-r--r--skinsttng.h2
-rw-r--r--sources.c2
-rw-r--r--sources.h2
-rw-r--r--spu.c2
-rw-r--r--spu.h2
-rw-r--r--status.c2
-rw-r--r--status.h2
-rwxr-xr-xsummary2info.pl2
-rw-r--r--svdrp.c2
-rw-r--r--svdrp.h2
-rw-r--r--themes.c2
-rw-r--r--themes.h2
-rw-r--r--thread.c10
-rw-r--r--thread.h2
-rw-r--r--timers.c3
-rw-r--r--timers.h2
-rw-r--r--tools.c2
-rw-r--r--tools.h2
-rw-r--r--transfer.c2
-rw-r--r--transfer.h2
-rw-r--r--vdr.12
-rw-r--r--vdr.518
-rw-r--r--vdr.c2
-rw-r--r--videodir.c2
-rw-r--r--videodir.h2
179 files changed, 1428 insertions, 752 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 6ce5d25..d02b08d 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -595,6 +595,8 @@ Helmut Auer <vdr@helmutauer.de>
not two hex digits after the '#'
for suggesting to suppress the automatic shutdown if the remote control is
currently disabled
+ for suggesting to improve logging system time changes to avoid problems on slow
+ systems under heavy load
Jeremy Hall <jhall@UU.NET>
for fixing an incomplete initialization of the filter parameters in eit.c
@@ -958,6 +960,7 @@ Andreas Mair <andreas@vdr-developer.org>
for making the SVDRP command LSTC list the channels with group separators if the
option ':groups' is given
for fixing handling 3 and 4 byte UTF-8 symbols in Utf8CharGet()
+ for fixing initializing the timer's flags in the cTimer copy constructor
Olivier Jacques <jacquesolivier@hotmail.com>)
for translating OSD texts to the French language
@@ -1050,6 +1053,7 @@ Rolf Ahrenberg <rahrenbe@cc.hut.fi>
language
for fixing displaying the free disk space when entering the recordings menu where
the last replayed recording was in a subdirectory, and pressing Back
+ for setting the thread name, so that it can be seen in 'top -H'
Ralf Klueber <ralf.klueber@vodafone.com>
for reporting a bug in cutting a recording if there is only a single editing mark
@@ -1174,6 +1178,8 @@ Reinhard Nissl <rnissl@gmx.de>
for reporting an invalid access in the section handler when ending VDR
for pointing out that cDevice::Transferring() doesn't return the right value in the
early stage of channel switching
+ for fixing displaying transponder data when it is modified
+ for fixing handling the counter in detection of pre 1.3.19 PS data
Richard Robson <richard_robson@beeb.net>
for reporting freezing replay if a timer starts while in Transfer Mode from the
@@ -1506,6 +1512,7 @@ Arthur Konovalov <kasjas@hot.ee>
for translating OSD texts to the Estonian language
for fixing a missing ',' in the Greek OSD texts
for fixing a missing ',' in the Swedish OSD texts
+ for reporting problems with CAMs when checking the CAM status too frequently
Milos Kapoun <m.kapoun@cra.cz>
for suggesting to skip code table info in SI data
@@ -1702,6 +1709,7 @@ Wolfgang Rohdewald <wolfgang@rohdewald.de>
Channel+ or Channel- is pressed
for pointing out a possible problem with asprintf() if the return value is not
checked
+ for fixing setting the OSD level in the 'osddemo' example
Chad Flynt <hoochster@sofnet.com>
for suggestions and experiments regarding the buffer reserve in cTransfer
diff --git a/HISTORY b/HISTORY
index c94d1d2..e5424f8 100644
--- a/HISTORY
+++ b/HISTORY
@@ -5729,3 +5729,35 @@ Video Disk Recorder Revision History
- Added Chinese language texts (thanks to Nan Feng).
- Updated the Portuguese language texts.
- Added a note about VDR_CHARSET_OVERRIDE to the INSTALL file.
+
+2008-04-13: Version 1.7.0
+
+- Re-implemented handling of DVB-S2, which first appeared in version 1.5.14, but was
+ revoked in version 1.5.15 in favor of making a stable version 1.6.0. VDR now
+ requires the "multiproto" DVB driver, e.g. from http://jusst.de/hg/multiproto.
+ Note that the channels.conf file now supports additional parameters, so you may
+ want to make sure you have a backup of this file in case you need to go back to
+ the previous version of VDR!
+- Fixed displaying transponder data when it is modified (thanks to Reinhard Nissl).
+- Fixed handling the counter in detection of pre 1.3.19 PS data (thanks to Reinhard
+ Nissl).
+- Improved logging system time changes to avoid problems on slow systems under
+ heavy load (suggested by Helmut Auer).
+- Now setting the thread name, so that it can be seen in 'top -H' (thanks to Rolf
+ Ahrenberg).
+- Fixed initializing the timer's flags in the cTimer copy constructor (thanks to
+ Andreas Mair).
+- Fixed setting the OSD level in the 'osddemo' example (thanks to Wolfgang Rohdewald).
+- Increased the time between checking the CAM status to 500ms to avoid problems
+ with some CAMs (reported by Arthur Konovalov).
+
+2008-04-13: Version 1.6.0-1
+
+- Fixed handling the counter in detection of pre 1.3.19 PS data (thanks to Reinhard
+ Nissl).
+- Improved logging system time changes to avoid problems on slow systems under
+ heavy load (suggested by Helmut Auer).
+- Fixed initializing the timer's flags in the cTimer copy constructor (thanks to
+ Andreas Mair).
+- Increased the time between checking the CAM status to 500ms to avoid problems
+ with some CAMs (reported by Arthur Konovalov).
diff --git a/Make.config.template b/Make.config.template
index 32284fc..03e7813 100644
--- a/Make.config.template
+++ b/Make.config.template
@@ -6,7 +6,7 @@
# See the main source file 'vdr.c' for copyright information and
# how to reach the author.
#
-# $Id: Make.config.template 1.16 2008/01/13 12:54:09 kls Exp $
+# $Id: Make.config.template 2.0 2008/01/13 12:54:09 kls Exp $
### The C compiler and options:
diff --git a/Makefile b/Makefile
index b07b1df..2651102 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 1.113 2008/02/29 21:43:03 kls Exp $
+# $Id: Makefile 2.0 2008/02/29 21:43:03 kls Exp $
.DELETE_ON_ERROR:
diff --git a/PLUGINS/src/hello/Makefile b/PLUGINS/src/hello/Makefile
index c4ea46f..9cd3562 100644
--- a/PLUGINS/src/hello/Makefile
+++ b/PLUGINS/src/hello/Makefile
@@ -1,7 +1,7 @@
#
# Makefile for a Video Disk Recorder plugin
#
-# $Id: Makefile 1.22 2008/01/13 12:59:58 kls Exp $
+# $Id: Makefile 2.0 2008/01/13 12:59:58 kls Exp $
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
diff --git a/PLUGINS/src/hello/hello.c b/PLUGINS/src/hello/hello.c
index 4d87d04..f3a6588 100644
--- a/PLUGINS/src/hello/hello.c
+++ b/PLUGINS/src/hello/hello.c
@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
- * $Id: hello.c 1.15 2008/03/18 17:13:25 kls Exp $
+ * $Id: hello.c 2.0 2008/03/18 17:13:25 kls Exp $
*/
#include <getopt.h>
diff --git a/PLUGINS/src/osddemo/HISTORY b/PLUGINS/src/osddemo/HISTORY
index b0f300a..4217cb1 100644
--- a/PLUGINS/src/osddemo/HISTORY
+++ b/PLUGINS/src/osddemo/HISTORY
@@ -17,3 +17,7 @@ VDR Plugin 'osddemo' Revision History
- Moved the "all" target in the Makefile before the "Implicit rules",
so that a plain "make" will compile everything.
+
+2008-04-13: Version 0.1.3
+
+- Fixed setting the OSD level (thanks to Wolfgang Rohdewald).
diff --git a/PLUGINS/src/osddemo/Makefile b/PLUGINS/src/osddemo/Makefile
index e85663f..1b1c622 100644
--- a/PLUGINS/src/osddemo/Makefile
+++ b/PLUGINS/src/osddemo/Makefile
@@ -1,7 +1,7 @@
#
# Makefile for a Video Disk Recorder plugin
#
-# $Id: Makefile 1.11 2008/01/13 13:00:01 kls Exp $
+# $Id: Makefile 2.0 2008/01/13 13:00:01 kls Exp $
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
diff --git a/PLUGINS/src/osddemo/osddemo.c b/PLUGINS/src/osddemo/osddemo.c
index a4c0b8f..2a9e09a 100644
--- a/PLUGINS/src/osddemo/osddemo.c
+++ b/PLUGINS/src/osddemo/osddemo.c
@@ -3,12 +3,12 @@
*
* See the README file for copyright information and how to reach the author.
*
- * $Id: osddemo.c 1.4 2007/08/15 13:17:55 kls Exp $
+ * $Id: osddemo.c 2.1 2008/04/13 12:59:57 kls Exp $
*/
#include <vdr/plugin.h>
-static const char *VERSION = "0.1.2";
+static const char *VERSION = "0.1.3";
static const char *DESCRIPTION = "Demo of arbitrary OSD setup";
static const char *MAINMENUENTRY = "Osd Demo";
@@ -41,7 +41,7 @@ cLineGame::~cLineGame()
void cLineGame::Show(void)
{
- osd = cOsdProvider::NewOsd(100, 50);
+ osd = cOsdProvider::NewOsd(100, 50, 50);
if (osd) {
tArea Area = { 0, 0, 99, 199, 4 };
osd->SetAreas(&Area, 1);
diff --git a/PLUGINS/src/pictures/Makefile b/PLUGINS/src/pictures/Makefile
index d949944..4935a60 100644
--- a/PLUGINS/src/pictures/Makefile
+++ b/PLUGINS/src/pictures/Makefile
@@ -1,7 +1,7 @@
#
# Makefile for a Video Disk Recorder plugin
#
-# $Id: Makefile 1.2 2008/01/13 13:00:04 kls Exp $
+# $Id: Makefile 2.0 2008/01/13 13:00:04 kls Exp $
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
diff --git a/PLUGINS/src/pictures/entry.c b/PLUGINS/src/pictures/entry.c
index 427585e..1438481 100644
--- a/PLUGINS/src/pictures/entry.c
+++ b/PLUGINS/src/pictures/entry.c
@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
- * $Id: entry.c 1.3 2008/02/17 13:42:34 kls Exp $
+ * $Id: entry.c 2.0 2008/02/17 13:42:34 kls Exp $
*/
#include "entry.h"
diff --git a/PLUGINS/src/pictures/entry.h b/PLUGINS/src/pictures/entry.h
index 5c72e5e..60b7773 100644
--- a/PLUGINS/src/pictures/entry.h
+++ b/PLUGINS/src/pictures/entry.h
@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
- * $Id: entry.h 1.1 2008/01/06 12:30:50 kls Exp $
+ * $Id: entry.h 2.0 2008/01/06 12:30:50 kls Exp $
*/
#ifndef _ENTRY_H
diff --git a/PLUGINS/src/pictures/menu.c b/PLUGINS/src/pictures/menu.c
index 6a64d48..8c51d52 100644
--- a/PLUGINS/src/pictures/menu.c
+++ b/PLUGINS/src/pictures/menu.c
@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
- * $Id: menu.c 1.1 2008/01/13 11:35:18 kls Exp $
+ * $Id: menu.c 2.0 2008/01/13 11:35:18 kls Exp $
*/
#include "menu.h"
diff --git a/PLUGINS/src/pictures/menu.h b/PLUGINS/src/pictures/menu.h
index ace753e..9090fd0 100644
--- a/PLUGINS/src/pictures/menu.h
+++ b/PLUGINS/src/pictures/menu.h
@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
- * $Id: menu.h 1.1 2008/01/12 11:22:52 kls Exp $
+ * $Id: menu.h 2.0 2008/01/12 11:22:52 kls Exp $
*/
#ifndef _MENU_H
diff --git a/PLUGINS/src/pictures/pic2mpg b/PLUGINS/src/pictures/pic2mpg
index af58f97..d317510 100755
--- a/PLUGINS/src/pictures/pic2mpg
+++ b/PLUGINS/src/pictures/pic2mpg
@@ -7,7 +7,7 @@
#
# See the README file for copyright information and how to reach the author.
#
-# $Id: pic2mpg 1.4 2008/02/29 14:34:22 kls Exp $
+# $Id: pic2mpg 2.0 2008/02/29 14:34:22 kls Exp $
## TODO implement HDTV (1920 x 1080)
diff --git a/PLUGINS/src/pictures/pictures.c b/PLUGINS/src/pictures/pictures.c
index 6130f19..9c4e515 100644
--- a/PLUGINS/src/pictures/pictures.c
+++ b/PLUGINS/src/pictures/pictures.c
@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
- * $Id: pictures.c 1.7 2008/03/14 12:57:19 kls Exp $
+ * $Id: pictures.c 2.0 2008/03/14 12:57:19 kls Exp $
*/
#include <getopt.h>
diff --git a/PLUGINS/src/pictures/player.c b/PLUGINS/src/pictures/player.c
index 8981b60..a0123e4 100644
--- a/PLUGINS/src/pictures/player.c
+++ b/PLUGINS/src/pictures/player.c
@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
- * $Id: player.c 1.3 2008/02/09 12:13:10 kls Exp $
+ * $Id: player.c 2.0 2008/02/09 12:13:10 kls Exp $
*/
#include "player.h"
diff --git a/PLUGINS/src/pictures/player.h b/PLUGINS/src/pictures/player.h
index ee9488f..67a274d 100644
--- a/PLUGINS/src/pictures/player.h
+++ b/PLUGINS/src/pictures/player.h
@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
- * $Id: player.h 1.1 2008/01/12 16:21:57 kls Exp $
+ * $Id: player.h 2.0 2008/01/12 16:21:57 kls Exp $
*/
#ifndef _PLAYER_H
diff --git a/PLUGINS/src/servicedemo/Makefile b/PLUGINS/src/servicedemo/Makefile
index a20009a..ea7e66a 100644
--- a/PLUGINS/src/servicedemo/Makefile
+++ b/PLUGINS/src/servicedemo/Makefile
@@ -1,7 +1,7 @@
#
# Makefile for a Video Disk Recorder plugin
#
-# $Id: Makefile 1.10 2008/01/13 13:00:07 kls Exp $
+# $Id: Makefile 2.0 2008/01/13 13:00:07 kls Exp $
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
diff --git a/PLUGINS/src/servicedemo/svccli.c b/PLUGINS/src/servicedemo/svccli.c
index 6e812b4..a426416 100644
--- a/PLUGINS/src/servicedemo/svccli.c
+++ b/PLUGINS/src/servicedemo/svccli.c
@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
- * $Id: svccli.c 1.2 2007/08/15 13:18:08 kls Exp $
+ * $Id: svccli.c 2.0 2007/08/15 13:18:08 kls Exp $
*/
#include <stdlib.h>
diff --git a/PLUGINS/src/servicedemo/svcsvr.c b/PLUGINS/src/servicedemo/svcsvr.c
index 9ccb73c..1eea1d5 100644
--- a/PLUGINS/src/servicedemo/svcsvr.c
+++ b/PLUGINS/src/servicedemo/svcsvr.c
@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
- * $Id: svcsvr.c 1.2 2007/08/15 13:18:59 kls Exp $
+ * $Id: svcsvr.c 2.0 2007/08/15 13:18:59 kls Exp $
*/
#include <stdlib.h>
diff --git a/PLUGINS/src/skincurses/Makefile b/PLUGINS/src/skincurses/Makefile
index 4dc4e28..1d6d9c5 100644
--- a/PLUGINS/src/skincurses/Makefile
+++ b/PLUGINS/src/skincurses/Makefile
@@ -1,7 +1,7 @@
#
# Makefile for a Video Disk Recorder plugin
#
-# $Id: Makefile 1.15 2008/01/19 11:40:33 kls Exp $
+# $Id: Makefile 2.0 2008/01/19 11:40:33 kls Exp $
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
diff --git a/PLUGINS/src/skincurses/po/it_IT.po b/PLUGINS/src/skincurses/po/it_IT.po
index 038b6e5..038b6e5 100755..100644
--- a/PLUGINS/src/skincurses/po/it_IT.po
+++ b/PLUGINS/src/skincurses/po/it_IT.po
diff --git a/PLUGINS/src/skincurses/skincurses.c b/PLUGINS/src/skincurses/skincurses.c
index 9499e23..8a7a846 100644
--- a/PLUGINS/src/skincurses/skincurses.c
+++ b/PLUGINS/src/skincurses/skincurses.c
@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
- * $Id: skincurses.c 1.23 2008/03/14 12:57:14 kls Exp $
+ * $Id: skincurses.c 2.0 2008/03/14 12:57:14 kls Exp $
*/
#include <ncurses.h>
diff --git a/PLUGINS/src/sky/Makefile b/PLUGINS/src/sky/Makefile
index 30fbb42..87fbcba 100644
--- a/PLUGINS/src/sky/Makefile
+++ b/PLUGINS/src/sky/Makefile
@@ -1,7 +1,7 @@
#
# Makefile for a Video Disk Recorder plugin
#
-# $Id: Makefile 1.11 2008/01/13 13:00:16 kls Exp $
+# $Id: Makefile 2.0 2008/01/13 13:00:16 kls Exp $
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
diff --git a/PLUGINS/src/sky/getskyepg.pl b/PLUGINS/src/sky/getskyepg.pl
index d42744d..da553ba 100755
--- a/PLUGINS/src/sky/getskyepg.pl
+++ b/PLUGINS/src/sky/getskyepg.pl
@@ -8,7 +8,7 @@
#
# See the README file for copyright information and how to reach the author.
#
-# $Id: getskyepg.pl 1.7 2008/03/22 10:17:42 kls Exp $
+# $Id: getskyepg.pl 2.0 2008/03/22 10:17:42 kls Exp $
use Getopt::Std;
use Time::Local;
diff --git a/PLUGINS/src/sky/sky.c b/PLUGINS/src/sky/sky.c
index 0393dc2..cb9b9c5 100644
--- a/PLUGINS/src/sky/sky.c
+++ b/PLUGINS/src/sky/sky.c
@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
- * $Id: sky.c 1.15 2008/03/22 10:19:32 kls Exp $
+ * $Id: sky.c 2.0 2008/03/22 10:19:32 kls Exp $
*/
#include <sys/socket.h>
diff --git a/PLUGINS/src/status/Makefile b/PLUGINS/src/status/Makefile
index d725a39..81d4163 100644
--- a/PLUGINS/src/status/Makefile
+++ b/PLUGINS/src/status/Makefile
@@ -1,7 +1,7 @@
#
# Makefile for a Video Disk Recorder plugin
#
-# $Id: Makefile 1.15 2008/01/13 13:00:18 kls Exp $
+# $Id: Makefile 2.0 2008/01/13 13:00:18 kls Exp $
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
diff --git a/PLUGINS/src/status/status.c b/PLUGINS/src/status/status.c
index 3959871..5c1f7da 100644
--- a/PLUGINS/src/status/status.c
+++ b/PLUGINS/src/status/status.c
@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
- * $Id: status.c 1.10 2008/02/16 15:41:05 kls Exp $
+ * $Id: status.c 2.0 2008/02/16 15:41:05 kls Exp $
*/
#include <vdr/plugin.h>
diff --git a/PLUGINS/src/svdrpdemo/Makefile b/PLUGINS/src/svdrpdemo/Makefile
index 7715284..c835f3c 100644
--- a/PLUGINS/src/svdrpdemo/Makefile
+++ b/PLUGINS/src/svdrpdemo/Makefile
@@ -1,7 +1,7 @@
#
# Makefile for a Video Disk Recorder plugin
#
-# $Id: Makefile 1.9 2008/01/13 13:00:20 kls Exp $
+# $Id: Makefile 2.0 2008/01/13 13:00:20 kls Exp $
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
diff --git a/PLUGINS/src/svdrpdemo/svdrpdemo.c b/PLUGINS/src/svdrpdemo/svdrpdemo.c
index 008d25b..d618e26 100644
--- a/PLUGINS/src/svdrpdemo/svdrpdemo.c
+++ b/PLUGINS/src/svdrpdemo/svdrpdemo.c
@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
- * $Id: svdrpdemo.c 1.3 2007/08/15 13:19:57 kls Exp $
+ * $Id: svdrpdemo.c 2.0 2007/08/15 13:19:57 kls Exp $
*/
#include <vdr/plugin.h>
diff --git a/audio.c b/audio.c
index 7109a7d..dbf18f2 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 1.5 2006/05/28 15:03:24 kls Exp $
+ * $Id: audio.c 2.0 2006/05/28 15:03:24 kls Exp $
*/
#include "audio.h"
diff --git a/audio.h b/audio.h
index 03ec01d..5f84aaa 100644
--- a/audio.h
+++ b/audio.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: audio.h 1.3 2005/02/12 12:20:19 kls Exp $
+ * $Id: audio.h 2.0 2005/02/12 12:20:19 kls Exp $
*/
#ifndef __AUDIO_H
diff --git a/channels.c b/channels.c
index 86d0238..3c3e743 100644
--- a/channels.c
+++ b/channels.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: channels.c 1.60 2008/03/05 16:42:50 kls Exp $
+ * $Id: channels.c 2.2 2008/04/12 13:49:12 kls Exp $
*/
#include "channels.h"
@@ -21,67 +21,114 @@
// --- Channel Parameter Maps ------------------------------------------------
const tChannelParameterMap InversionValues[] = {
- { 0, INVERSION_OFF },
- { 1, INVERSION_ON },
- { 999, INVERSION_AUTO },
+ { 0, DVBFE_INVERSION_OFF, trNOOP("off") },
+ { 1, DVBFE_INVERSION_ON, trNOOP("on") },
+ { 999, DVBFE_INVERSION_AUTO },
{ -1 }
};
const tChannelParameterMap BandwidthValues[] = {
- { 6, BANDWIDTH_6_MHZ },
- { 7, BANDWIDTH_7_MHZ },
- { 8, BANDWIDTH_8_MHZ },
- { 999, BANDWIDTH_AUTO },
+ { 5, DVBFE_BANDWIDTH_5_MHZ, "5 MHz" },
+ { 6, DVBFE_BANDWIDTH_6_MHZ, "6 MHz" },
+ { 7, DVBFE_BANDWIDTH_7_MHZ, "7 MHz" },
+ { 8, DVBFE_BANDWIDTH_8_MHZ, "8 MHz" },
+ { 999, DVBFE_BANDWIDTH_AUTO },
{ -1 }
};
const tChannelParameterMap CoderateValues[] = {
- { 0, FEC_NONE },
- { 12, FEC_1_2 },
- { 23, FEC_2_3 },
- { 34, FEC_3_4 },
- { 45, FEC_4_5 },
- { 56, FEC_5_6 },
- { 67, FEC_6_7 },
- { 78, FEC_7_8 },
- { 89, FEC_8_9 },
- { 999, FEC_AUTO },
+ { 0, DVBFE_FEC_NONE, trNOOP("none") },
+ { 12, DVBFE_FEC_1_2, "1/2" },
+ { 13, DVBFE_FEC_1_3, "1/3" },
+ { 14, DVBFE_FEC_1_4, "1/4" },
+ { 23, DVBFE_FEC_2_3, "2/3" },
+ { 25, DVBFE_FEC_2_5, "2/5" },
+ { 34, DVBFE_FEC_3_4, "3/4" },
+ { 35, DVBFE_FEC_3_5, "3/5" },
+ { 45, DVBFE_FEC_4_5, "4/5" },
+ { 56, DVBFE_FEC_5_6, "5/6" },
+ { 67, DVBFE_FEC_6_7, "6/7" },
+ { 78, DVBFE_FEC_7_8, "7/8" },
+ { 89, DVBFE_FEC_8_9, "8/9" },
+ { 910, DVBFE_FEC_9_10, "9/10" },
+ { 999, DVBFE_FEC_AUTO },
{ -1 }
};
const tChannelParameterMap ModulationValues[] = {
- { 0, QPSK },
- { 16, QAM_16 },
- { 32, QAM_32 },
- { 64, QAM_64 },
- { 128, QAM_128 },
- { 256, QAM_256 },
- { 999, QAM_AUTO },
+ { 0, DVBFE_MOD_NONE, trNOOP("none") },
+ { 4, DVBFE_MOD_QAM4, "QAM4" },
+ { 16, DVBFE_MOD_QAM16, "QAM16" },
+ { 32, DVBFE_MOD_QAM32, "QAM32" },
+ { 64, DVBFE_MOD_QAM64, "QAM64" },
+ { 128, DVBFE_MOD_QAM128, "QAM128" },
+ { 256, DVBFE_MOD_QAM256, "QAM256" },
+ { 512, DVBFE_MOD_QAM512, "QAM512" },
+ {1024, DVBFE_MOD_QAM1024, "QAM1024" },
+ { 1, DVBFE_MOD_BPSK, "BPSK" },
+ { 2, DVBFE_MOD_QPSK, "QPSK" },
+ { 3, DVBFE_MOD_OQPSK, "OQPSK" },
+ { 5, DVBFE_MOD_8PSK, "8PSK" },
+ { 6, DVBFE_MOD_16APSK, "16APSK" },
+ { 7, DVBFE_MOD_32APSK, "32APSK" },
+ { 8, DVBFE_MOD_OFDM, "OFDM" },
+ { 9, DVBFE_MOD_COFDM, "COFDM" },
+ { 10, DVBFE_MOD_VSB8, "VSB8" },
+ { 11, DVBFE_MOD_VSB16, "VSB16" },
+ { 998, DVBFE_MOD_QAMAUTO, "QAMAUTO" },
+ { 999, DVBFE_MOD_AUTO },
+ { -1 }
+ };
+
+const tChannelParameterMap SystemValues[] = {
+ { 0, DVBFE_DELSYS_DVBS, "DVB-S" },
+ { 1, DVBFE_DELSYS_DVBS2, "DVB-S2" },
{ -1 }
};
const tChannelParameterMap TransmissionValues[] = {
- { 2, TRANSMISSION_MODE_2K },
- { 8, TRANSMISSION_MODE_8K },
- { 999, TRANSMISSION_MODE_AUTO },
+ { 2, DVBFE_TRANSMISSION_MODE_2K, "2K" },
+ { 4, DVBFE_TRANSMISSION_MODE_4K, "4K" },
+ { 8, DVBFE_TRANSMISSION_MODE_8K, "8K" },
+ { 999, DVBFE_TRANSMISSION_MODE_AUTO },
{ -1 }
};
const tChannelParameterMap GuardValues[] = {
- { 4, GUARD_INTERVAL_1_4 },
- { 8, GUARD_INTERVAL_1_8 },
- { 16, GUARD_INTERVAL_1_16 },
- { 32, GUARD_INTERVAL_1_32 },
- { 999, GUARD_INTERVAL_AUTO },
+ { 4, DVBFE_GUARD_INTERVAL_1_4, "1/4" },
+ { 8, DVBFE_GUARD_INTERVAL_1_8, "1/8" },
+ { 16, DVBFE_GUARD_INTERVAL_1_16, "1/16" },
+ { 32, DVBFE_GUARD_INTERVAL_1_32, "1/32" },
+ { 999, DVBFE_GUARD_INTERVAL_AUTO },
{ -1 }
};
const tChannelParameterMap HierarchyValues[] = {
- { 0, HIERARCHY_NONE },
- { 1, HIERARCHY_1 },
- { 2, HIERARCHY_2 },
- { 4, HIERARCHY_4 },
- { 999, HIERARCHY_AUTO },
+ { 0, DVBFE_HIERARCHY_OFF, trNOOP("off") },
+ { 1, DVBFE_HIERARCHY_ON, trNOOP("on") },
+ { 999, DVBFE_HIERARCHY_AUTO },
+ { -1 }
+ };
+
+const tChannelParameterMap AlphaValues[] = {
+ { 0, 0 },
+ { 1, DVBFE_ALPHA_1 },
+ { 2, DVBFE_ALPHA_2 },
+ { 4, DVBFE_ALPHA_4 },
+ { -1 }
+ };
+
+const tChannelParameterMap PriorityValues[] = {
+ { 0, DVBFE_STREAM_PRIORITY_HP, trNOOP("high") },
+ { 1, DVBFE_STREAM_PRIORITY_LP, trNOOP("low") },
+ { -1 }
+ };
+
+const tChannelParameterMap RollOffValues[] = {
+ { 0, DVBFE_ROLLOFF_UNKNOWN },
+ { 20, DVBFE_ROLLOFF_20, "0.20" },
+ { 25, DVBFE_ROLLOFF_25, "0.25" },
+ { 35, DVBFE_ROLLOFF_35, "0.35" },
{ -1 }
};
@@ -107,11 +154,14 @@ int DriverIndex(int Value, const tChannelParameterMap *Map)
return -1;
}
-int MapToUser(int Value, const tChannelParameterMap *Map)
+int MapToUser(int Value, const tChannelParameterMap *Map, const char **String)
{
int n = DriverIndex(Value, Map);
- if (n >= 0)
+ if (n >= 0) {
+ if (String)
+ *String = tr(Map[n].userString);
return Map[n].userValue;
+ }
return -1;
}
@@ -167,14 +217,18 @@ cChannel::cChannel(void)
provider = strdup("");
portalName = strdup("");
memset(&__BeginData__, 0, (char *)&__EndData__ - (char *)&__BeginData__);
- inversion = INVERSION_AUTO;
- bandwidth = BANDWIDTH_AUTO;
- coderateH = FEC_AUTO;
- coderateL = FEC_AUTO;
- modulation = QAM_AUTO;
- transmission = TRANSMISSION_MODE_AUTO;
- guard = GUARD_INTERVAL_AUTO;
- hierarchy = HIERARCHY_AUTO;
+ inversion = DVBFE_INVERSION_AUTO;
+ bandwidth = DVBFE_BANDWIDTH_AUTO;
+ coderateH = DVBFE_FEC_AUTO;
+ coderateL = DVBFE_FEC_AUTO;
+ modulation = DVBFE_MOD_AUTO;
+ system = DVBFE_DELSYS_DVBS;
+ transmission = DVBFE_TRANSMISSION_MODE_AUTO;
+ guard = DVBFE_GUARD_INTERVAL_AUTO;
+ hierarchy = DVBFE_HIERARCHY_AUTO;
+ alpha = 0;
+ priority = DVBFE_STREAM_PRIORITY_HP;
+ rollOff = DVBFE_ROLLOFF_UNKNOWN;
modification = CHANNELMOD_NONE;
schedule = NULL;
linkChannels = NULL;
@@ -277,13 +331,17 @@ void cChannel::CopyTransponderData(const cChannel *Channel)
coderateH = Channel->coderateH;
coderateL = Channel->coderateL;
modulation = Channel->modulation;
+ system = Channel->system;
transmission = Channel->transmission;
guard = Channel->guard;
hierarchy = Channel->hierarchy;
+ alpha = Channel->alpha;
+ priority = Channel->priority;
+ rollOff = Channel->rollOff;
}
}
-bool cChannel::SetSatTransponderData(int Source, int Frequency, char Polarization, int Srate, int CoderateH)
+bool cChannel::SetSatTransponderData(int Source, int Frequency, char Polarization, int Srate, int CoderateH, int Modulation, int System, int RollOff)
{
// Workarounds for broadcaster stupidity:
// Some providers broadcast the transponder frequency of their channels with two different
@@ -297,19 +355,22 @@ bool cChannel::SetSatTransponderData(int Source, int Frequency, char Polarizatio
if (abs(srate - Srate) <= 1)
Srate = srate;
- if (source != Source || frequency != Frequency || polarization != Polarization || srate != Srate || coderateH != CoderateH) {
- if (Number()) {
- dsyslog("changing transponder data of channel %d from %s:%d:%c:%d:%d to %s:%d:%c:%d:%d", Number(), *cSource::ToString(source), frequency, polarization, srate, coderateH, *cSource::ToString(Source), Frequency, Polarization, Srate, CoderateH);
- modification |= CHANNELMOD_TRANSP;
- Channels.SetModified();
- }
+ if (source != Source || frequency != Frequency || polarization != Polarization || srate != Srate || coderateH != CoderateH || modulation != Modulation || system != System || rollOff != RollOff) {
+ cString OldTransponderData = TransponderDataToString();
source = Source;
frequency = Frequency;
polarization = Polarization;
srate = Srate;
coderateH = CoderateH;
- modulation = QPSK;
+ modulation = Modulation;
+ system = System;
+ rollOff = RollOff;
schedule = NULL;
+ if (Number()) {
+ dsyslog("changing transponder data of channel %d from %s to %s", Number(), *OldTransponderData, *TransponderDataToString());
+ modification |= CHANNELMOD_TRANSP;
+ Channels.SetModified();
+ }
}
return true;
}
@@ -317,29 +378,26 @@ bool cChannel::SetSatTransponderData(int Source, int Frequency, char Polarizatio
bool cChannel::SetCableTransponderData(int Source, int Frequency, int Modulation, int Srate, int CoderateH)
{
if (source != Source || frequency != Frequency || modulation != Modulation || srate != Srate || coderateH != CoderateH) {
- if (Number()) {
- dsyslog("changing transponder data of channel %d from %s:%d:%d:%d:%d to %s:%d:%d:%d:%d", Number(), *cSource::ToString(source), frequency, modulation, srate, coderateH, *cSource::ToString(Source), Frequency, Modulation, Srate, CoderateH);
- modification |= CHANNELMOD_TRANSP;
- Channels.SetModified();
- }
+ cString OldTransponderData = TransponderDataToString();
source = Source;
frequency = Frequency;
modulation = Modulation;
srate = Srate;
coderateH = CoderateH;
schedule = NULL;
+ if (Number()) {
+ dsyslog("changing transponder data of channel %d from %s to %s", Number(), *OldTransponderData, *TransponderDataToString());
+ modification |= CHANNELMOD_TRANSP;
+ Channels.SetModified();
+ }
}
return true;
}
-bool cChannel::SetTerrTransponderData(int Source, int Frequency, int Bandwidth, int Modulation, int Hierarchy, int CoderateH, int CoderateL, int Guard, int Transmission)
+bool cChannel::SetTerrTransponderData(int Source, int Frequency, int Bandwidth, int Modulation, int Hierarchy, int CoderateH, int CoderateL, int Guard, int Transmission, int Alpha, int Priority)
{
- if (source != Source || frequency != Frequency || bandwidth != Bandwidth || modulation != Modulation || hierarchy != Hierarchy || coderateH != CoderateH || coderateL != CoderateL || guard != Guard || transmission != Transmission) {
- if (Number()) {
- dsyslog("changing transponder data of channel %d from %s:%d:%d:%d:%d:%d:%d:%d:%d to %s:%d:%d:%d:%d:%d:%d:%d:%d", Number(), *cSource::ToString(source), frequency, bandwidth, modulation, hierarchy, coderateH, coderateL, guard, transmission, *cSource::ToString(Source), Frequency, Bandwidth, Modulation, Hierarchy, CoderateH, CoderateL, Guard, Transmission);
- modification |= CHANNELMOD_TRANSP;
- Channels.SetModified();
- }
+ if (source != Source || frequency != Frequency || bandwidth != Bandwidth || modulation != Modulation || hierarchy != Hierarchy || coderateH != CoderateH || coderateL != CoderateL || guard != Guard || transmission != Transmission || alpha != Alpha || priority != Priority) {
+ cString OldTransponderData = TransponderDataToString();
source = Source;
frequency = Frequency;
bandwidth = Bandwidth;
@@ -349,7 +407,14 @@ bool cChannel::SetTerrTransponderData(int Source, int Frequency, int Bandwidth,
coderateL = CoderateL;
guard = Guard;
transmission = Transmission;
+ alpha = Alpha;
+ priority = Priority;
schedule = NULL;
+ if (Number()) {
+ dsyslog("changing transponder data of channel %d from %s to %s", Number(), *OldTransponderData, *TransponderDataToString());
+ modification |= CHANNELMOD_TRANSP;
+ Channels.SetModified();
+ }
}
return true;
}
@@ -587,6 +652,13 @@ static int PrintParameter(char *p, char Name, int Value)
return Value >= 0 && Value != 999 ? sprintf(p, "%c%d", Name, Value) : 0;
}
+cString cChannel::TransponderDataToString(void) const
+{
+ if (cSource::IsTerr(source))
+ return cString::sprintf("%d:%s:%s", frequency, *ParametersToString(), *cSource::ToString(source));
+ return cString::sprintf("%d:%s:%s:%d", frequency, *ParametersToString(), *cSource::ToString(source), srate);
+}
+
cString cChannel::ParametersToString(void) const
{
char type = **cSource::ToString(source);
@@ -597,13 +669,17 @@ cString cChannel::ParametersToString(void) const
char *q = buffer;
*q = 0;
ST(" S ") q += sprintf(q, "%c", polarization);
- ST("CST") q += PrintParameter(q, 'I', MapToUser(inversion, InversionValues));
+ ST(" T") q += PrintParameter(q, 'A', MapToUser(alpha, AlphaValues));
+ ST(" T") q += PrintParameter(q, 'B', MapToUser(bandwidth, BandwidthValues));
ST("CST") q += PrintParameter(q, 'C', MapToUser(coderateH, CoderateValues));
ST(" T") q += PrintParameter(q, 'D', MapToUser(coderateL, CoderateValues));
- ST("C T") q += PrintParameter(q, 'M', MapToUser(modulation, ModulationValues));
- ST(" T") q += PrintParameter(q, 'B', MapToUser(bandwidth, BandwidthValues));
- ST(" T") q += PrintParameter(q, 'T', MapToUser(transmission, TransmissionValues));
ST(" T") q += PrintParameter(q, 'G', MapToUser(guard, GuardValues));
+ ST("CST") q += PrintParameter(q, 'I', MapToUser(inversion, InversionValues));
+ ST("CST") q += PrintParameter(q, 'M', MapToUser(modulation, ModulationValues));
+ ST(" S ") q += PrintParameter(q, 'O', MapToUser(rollOff, RollOffValues));
+ ST(" T") q += PrintParameter(q, 'P', MapToUser(priority, PriorityValues));
+ ST(" S ") q += PrintParameter(q, 'S', MapToUser(system, SystemValues));
+ ST(" T") q += PrintParameter(q, 'T', MapToUser(transmission, TransmissionValues));
ST(" T") q += PrintParameter(q, 'Y', MapToUser(hierarchy, HierarchyValues));
return buffer;
}
@@ -628,6 +704,7 @@ bool cChannel::StringToParameters(const char *s)
{
while (s && *s) {
switch (toupper(*s)) {
+ case 'A': s = ParseParameter(s, alpha, AlphaValues); break;
case 'B': s = ParseParameter(s, bandwidth, BandwidthValues); break;
case 'C': s = ParseParameter(s, coderateH, CoderateValues); break;
case 'D': s = ParseParameter(s, coderateL, CoderateValues); break;
@@ -636,7 +713,11 @@ bool cChannel::StringToParameters(const char *s)
case 'I': s = ParseParameter(s, inversion, InversionValues); break;
case 'L': polarization = *s++; break;
case 'M': s = ParseParameter(s, modulation, ModulationValues); break;
+ case 'Z':// for compatibility with the original DVB-S2 patch - may be removed in future versions
+ case 'O': s = ParseParameter(s, rollOff, RollOffValues); break;
+ case 'P': s = ParseParameter(s, priority, PriorityValues); break;
case 'R': polarization = *s++; break;
+ case 'S': s = ParseParameter(s, system, SystemValues); break;
case 'T': s = ParseParameter(s, transmission, TransmissionValues); break;
case 'V': polarization = *s++; break;
case 'Y': s = ParseParameter(s, hierarchy, HierarchyValues); break;
diff --git a/channels.h b/channels.h
index c3073d1..4d26ec2 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 1.47 2008/02/08 13:48:31 kls Exp $
+ * $Id: channels.h 2.2 2008/04/12 13:46:50 kls Exp $
*/
#ifndef __CHANNELS_H
@@ -50,10 +50,10 @@
struct tChannelParameterMap {
int userValue;
int driverValue;
+ const char *userString;
};
-//XXX into cChannel???
-int MapToUser(int Value, const tChannelParameterMap *Map);
+int MapToUser(int Value, const tChannelParameterMap *Map, const char **String = NULL);
int MapToDriver(int Value, const tChannelParameterMap *Map);
int UserIndex(int Value, const tChannelParameterMap *Map);
int DriverIndex(int Value, const tChannelParameterMap *Map);
@@ -62,9 +62,13 @@ extern const tChannelParameterMap InversionValues[];
extern const tChannelParameterMap BandwidthValues[];
extern const tChannelParameterMap CoderateValues[];
extern const tChannelParameterMap ModulationValues[];
+extern const tChannelParameterMap SystemValues[];
extern const tChannelParameterMap TransmissionValues[];
extern const tChannelParameterMap GuardValues[];
extern const tChannelParameterMap HierarchyValues[];
+extern const tChannelParameterMap AlphaValues[];
+extern const tChannelParameterMap PriorityValues[];
+extern const tChannelParameterMap RollOffValues[];
struct tChannelID {
private:
@@ -140,14 +144,19 @@ private:
int coderateH;
int coderateL;
int modulation;
+ int system;
int transmission;
int guard;
int hierarchy;
+ int alpha;
+ int priority;
+ int rollOff;
int __EndData__;
int modification;
mutable const cSchedule *schedule;
cLinkChannels *linkChannels;
cChannel *refChannel;
+ cString TransponderDataToString(void) const;
cString ParametersToString(void) const;
bool StringToParameters(const char *s);
public:
@@ -194,9 +203,13 @@ public:
int CoderateH(void) const { return coderateH; }
int CoderateL(void) const { return coderateL; }
int Modulation(void) const { return modulation; }
+ int System(void) const { return system; }
int Transmission(void) const { return transmission; }
int Guard(void) const { return guard; }
int Hierarchy(void) const { return hierarchy; }
+ int Alpha(void) const { return alpha; }
+ int Priority(void) const { return priority; }
+ int RollOff(void) const { return rollOff; }
const cLinkChannels* LinkChannels(void) const { return linkChannels; }
const cChannel *RefChannel(void) const { return refChannel; }
bool IsCable(void) const { return cSource::IsCable(source); }
@@ -206,9 +219,9 @@ public:
bool HasTimer(void) const;
int Modification(int Mask = CHANNELMOD_ALL);
void CopyTransponderData(const cChannel *Channel);
- bool SetSatTransponderData(int Source, int Frequency, char Polarization, int Srate, int CoderateH);
+ bool SetSatTransponderData(int Source, int Frequency, char Polarization, int Srate, int CoderateH, int Modulation, int System, int RollOff);
bool SetCableTransponderData(int Source, int Frequency, int Modulation, int Srate, int CoderateH);
- bool SetTerrTransponderData(int Source, int Frequency, int Bandwidth, int Modulation, int Hierarchy, int CodeRateH, int CodeRateL, int Guard, int Transmission);
+ bool SetTerrTransponderData(int Source, int Frequency, int Bandwidth, int Modulation, int Hierarchy, int CodeRateH, int CodeRateL, int Guard, int Transmission, int Alpha, int Priority);
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);
diff --git a/ci.c b/ci.c
index 05a1bd4..4d3df3e 100644
--- a/ci.c
+++ b/ci.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: ci.c 1.48 2007/04/30 13:02:49 kls Exp $
+ * $Id: ci.c 2.1 2008/04/13 13:28:52 kls Exp $
*/
#include "ci.h"
@@ -1525,7 +1525,7 @@ void cCiAdapter::Action(void)
cCamSlots CamSlots;
-#define MODULE_CHECK_INTERVAL 100 // ms
+#define MODULE_CHECK_INTERVAL 500 // ms
#define MODULE_RESET_TIMEOUT 2 // s
cCamSlot::cCamSlot(cCiAdapter *CiAdapter)
diff --git a/ci.h b/ci.h
index 37514a5..c31dccf 100644
--- a/ci.h
+++ b/ci.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: ci.h 1.23 2007/01/03 12:49:10 kls Exp $
+ * $Id: ci.h 2.0 2007/01/03 12:49:10 kls Exp $
*/
#ifndef __CI_H
diff --git a/config.c b/config.c
index 090a6a1..d3e1dee 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 1.161 2008/02/17 13:39:00 kls Exp $
+ * $Id: config.c 2.0 2008/02/17 13:39:00 kls Exp $
*/
#include "config.h"
diff --git a/config.h b/config.h
index 822ee17..7fad138 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 1.310 2008/03/23 10:26:10 kls Exp $
+ * $Id: config.h 2.1 2008/04/12 13:02:10 kls Exp $
*/
#ifndef __CONFIG_H
@@ -22,13 +22,13 @@
// VDR's own version number:
-#define VDRVERSION "1.6.0"
-#define VDRVERSNUM 10600 // Version * 10000 + Major * 100 + Minor
+#define VDRVERSION "1.7.0"
+#define VDRVERSNUM 10700 // Version * 10000 + Major * 100 + Minor
// The plugin API's version number:
-#define APIVERSION "1.6.0"
-#define APIVERSNUM 10600 // Version * 10000 + Major * 100 + Minor
+#define APIVERSION "1.7.0"
+#define APIVERSNUM 10700 // 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
diff --git a/cutter.c b/cutter.c
index 42f3ab3..a19dba0 100644
--- a/cutter.c
+++ b/cutter.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: cutter.c 1.18 2008/01/13 12:22:21 kls Exp $
+ * $Id: cutter.c 2.0 2008/01/13 12:22:21 kls Exp $
*/
#include "cutter.h"
diff --git a/cutter.h b/cutter.h
index 8275281..e27ceb6 100644
--- a/cutter.h
+++ b/cutter.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: cutter.h 1.1 2002/06/22 10:03:15 kls Exp $
+ * $Id: cutter.h 2.0 2002/06/22 10:03:15 kls Exp $
*/
#ifndef __CUTTER_H
diff --git a/device.c b/device.c
index 95bcb91..12b8dd9 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 1.157 2008/03/09 10:03:34 kls Exp $
+ * $Id: device.c 2.2 2008/04/12 14:12:14 kls Exp $
*/
#include "device.h"
@@ -355,6 +355,21 @@ cDevice *cDevice::GetDevice(int Index)
return (0 <= Index && Index < numDevices) ? device[Index] : NULL;
}
+static int GetClippedNumProvidedSystems(int AvailableBits, cDevice *Device)
+{
+ int MaxNumProvidedSystems = 1 << AvailableBits;
+ 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);
+ NumProvidedSystems = MaxNumProvidedSystems;
+ }
+ else if (NumProvidedSystems <= 0) {
+ esyslog("ERROR: device %d reported an invalid number (%d) of supported delivery systems - assuming 1", Device->CardIndex() + 1, NumProvidedSystems);
+ NumProvidedSystems = 1;
+ }
+ return NumProvidedSystems;
+}
+
cDevice *cDevice::GetDevice(const cChannel *Channel, int Priority, bool LiveView)
{
cDevice *AvoidDevice = avoidDevice;
@@ -408,6 +423,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 <<= 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)
@@ -712,6 +728,11 @@ bool cDevice::ProvidesChannel(const cChannel *Channel, int Priority, bool *Needs
return false;
}
+int cDevice::NumProvidedSystems(void) const
+{
+ return 0;
+}
+
bool cDevice::IsTunedToTransponder(const cChannel *Channel)
{
return false;
@@ -1273,7 +1294,7 @@ int cDevice::PlayPesPacket(const uchar *Data, int Length, bool VideoOnly)
uchar SubStreamIndex = SubStreamId & 0x1F;
// Compatibility mode for old VDR recordings, where 0xBD was only AC3:
-pre_1_3_19_PrivateStreamDeteced:
+pre_1_3_19_PrivateStreamDetected:
if (pre_1_3_19_PrivateStream > MIN_PRE_1_3_19_PRIVATESTREAM) {
SubStreamId = c;
SubStreamType = 0x80;
@@ -1314,7 +1335,8 @@ pre_1_3_19_PrivateStreamDeteced:
if (pre_1_3_19_PrivateStream > MIN_PRE_1_3_19_PRIVATESTREAM) {
dsyslog("switching to pre 1.3.19 Dolby Digital compatibility mode - substream id = %02X", SubStreamId);
ClrAvailableTracks();
- goto pre_1_3_19_PrivateStreamDeteced;
+ pre_1_3_19_PrivateStream = MIN_PRE_1_3_19_PRIVATESTREAM + 1;
+ goto pre_1_3_19_PrivateStreamDetected;
}
}
}
diff --git a/device.h b/device.h
index 06daa5e..2712f91 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 1.91 2008/02/23 13:13:04 kls Exp $
+ * $Id: device.h 2.1 2008/04/12 11:11:23 kls Exp $
*/
#ifndef __DEVICE_H
@@ -228,6 +228,12 @@ public:
///< function itself actually returns true.
///< The default implementation always returns false, so a derived cDevice
///< class that can provide channels must implement this function.
+ virtual int NumProvidedSystems(void) const;
+ ///< Returns the number of individual "delivery systems" this device provides.
+ ///< The default implementation returns 0, so any derived class that can
+ ///< actually provide channels must implement this function.
+ ///< The result of this function is used when selecting a device, in order
+ ///< to avoid devices that provide more than one system.
virtual bool IsTunedToTransponder(const cChannel *Channel);
///< Returns true if this device is currently tuned to the given Channel's
///< transponder.
diff --git a/diseqc.c b/diseqc.c
index 3ce60d2..91f6d5f 100644
--- a/diseqc.c
+++ b/diseqc.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: diseqc.c 1.6 2008/02/10 14:09:27 kls Exp $
+ * $Id: diseqc.c 2.0 2008/02/10 14:09:27 kls Exp $
*/
#include "diseqc.h"
diff --git a/diseqc.h b/diseqc.h
index 602bdec..c60cb81 100644
--- a/diseqc.h
+++ b/diseqc.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: diseqc.h 1.2 2002/12/07 13:54:02 kls Exp $
+ * $Id: diseqc.h 2.0 2002/12/07 13:54:02 kls Exp $
*/
#ifndef __DISEQC_H
diff --git a/dvbci.c b/dvbci.c
index 9d44008..5289bbd 100644
--- a/dvbci.c
+++ b/dvbci.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: dvbci.c 1.1 2007/01/04 12:49:10 kls Exp $
+ * $Id: dvbci.c 2.0 2007/01/04 12:49:10 kls Exp $
*/
#include "dvbci.h"
diff --git a/dvbci.h b/dvbci.h
index 1669c8c..adbe40d 100644
--- a/dvbci.h
+++ b/dvbci.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: dvbci.h 1.1 2006/11/26 11:19:42 kls Exp $
+ * $Id: dvbci.h 2.0 2006/11/26 11:19:42 kls Exp $
*/
#ifndef __DVBCI_H
diff --git a/dvbdevice.c b/dvbdevice.c
index c7408d3..eef7442 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 1.170 2008/02/09 16:11:44 kls Exp $
+ * $Id: dvbdevice.c 2.2 2008/04/13 14:15:35 kls Exp $
*/
#include "dvbdevice.h"
@@ -76,7 +76,7 @@ private:
int tuneTimeout;
int lockTimeout;
time_t lastTimeoutReport;
- fe_type_t frontendType;
+ dvbfe_delsys frontendType;
cChannel channel;
const char *diseqcCommands;
eTunerStatus tunerStatus;
@@ -87,14 +87,14 @@ private:
bool SetFrontend(void);
virtual void Action(void);
public:
- cDvbTuner(int Fd_Frontend, int CardIndex, fe_type_t FrontendType);
+ cDvbTuner(int Fd_Frontend, int CardIndex, dvbfe_delsys FrontendType);
virtual ~cDvbTuner();
bool IsTunedTo(const cChannel *Channel) const;
void Set(const cChannel *Channel, bool Tune);
bool Locked(int TimeoutMs = 0);
};
-cDvbTuner::cDvbTuner(int Fd_Frontend, int CardIndex, fe_type_t FrontendType)
+cDvbTuner::cDvbTuner(int Fd_Frontend, int CardIndex, dvbfe_delsys FrontendType)
{
fd_frontend = Fd_Frontend;
cardIndex = CardIndex;
@@ -104,7 +104,7 @@ cDvbTuner::cDvbTuner(int Fd_Frontend, int CardIndex, fe_type_t FrontendType)
lastTimeoutReport = 0;
diseqcCommands = NULL;
tunerStatus = tsIdle;
- if (frontendType == FE_QPSK)
+ if (frontendType & (DVBFE_DELSYS_DVBS | DVBFE_DELSYS_DVBS2))
CHECK(ioctl(fd_frontend, FE_SET_VOLTAGE, SEC_VOLTAGE_13)); // must explicitly turn on LNB power
SetDescription("tuner on device %d", cardIndex + 1);
Start();
@@ -120,7 +120,26 @@ cDvbTuner::~cDvbTuner()
bool cDvbTuner::IsTunedTo(const cChannel *Channel) const
{
- return tunerStatus != tsIdle && channel.Source() == Channel->Source() && channel.Transponder() == Channel->Transponder();
+ if (tunerStatus == tsIdle)
+ return false; // not tuned to
+ if (channel.Source() != Channel->Source() || channel.Transponder() != Channel->Transponder())
+ return false; // sufficient mismatch
+ char Type = **cSource::ToString(Channel->Source());
+#define ST(s, p) if (strchr(s, Type)) if (channel.p() != Channel->p()) return false;
+ // Polarization is already checked as part of the Transponder.
+ ST(" T", Alpha);
+ ST(" T", Bandwidth);
+ ST("CST", CoderateH);
+ ST(" T", CoderateL);
+ ST(" T", Guard);
+ ST("CST", Inversion);
+ ST("CST", Modulation);
+ ST(" S ", RollOff);
+ ST(" T", Priority);
+ ST(" S ", System);
+ ST(" T", Transmission);
+ ST(" T", Hierarchy);
+ return true;
}
void cDvbTuner::Set(const cChannel *Channel, bool Tune)
@@ -173,114 +192,126 @@ static unsigned int FrequencyToHz(unsigned int f)
bool cDvbTuner::SetFrontend(void)
{
- dvb_frontend_parameters Frontend;
-
+ dvbfe_params Frontend;
memset(&Frontend, 0, sizeof(Frontend));
- switch (frontendType) {
- case FE_QPSK: { // DVB-S
-
- unsigned int frequency = channel.Frequency();
-
- if (Setup.DiSEqC) {
- cDiseqc *diseqc = Diseqcs.Get(channel.Source(), channel.Frequency(), channel.Polarization());
- if (diseqc) {
- if (diseqc->Commands() && (!diseqcCommands || strcmp(diseqcCommands, diseqc->Commands()) != 0)) {
- cDiseqc::eDiseqcActions da;
- for (char *CurrentAction = NULL; (da = diseqc->Execute(&CurrentAction)) != cDiseqc::daNone; ) {
- switch (da) {
- case cDiseqc::daNone: break;
- case cDiseqc::daToneOff: CHECK(ioctl(fd_frontend, FE_SET_TONE, SEC_TONE_OFF)); break;
- case cDiseqc::daToneOn: CHECK(ioctl(fd_frontend, FE_SET_TONE, SEC_TONE_ON)); break;
- case cDiseqc::daVoltage13: CHECK(ioctl(fd_frontend, FE_SET_VOLTAGE, SEC_VOLTAGE_13)); break;
- case cDiseqc::daVoltage18: CHECK(ioctl(fd_frontend, FE_SET_VOLTAGE, SEC_VOLTAGE_18)); break;
- case cDiseqc::daMiniA: CHECK(ioctl(fd_frontend, FE_DISEQC_SEND_BURST, SEC_MINI_A)); break;
- case cDiseqc::daMiniB: CHECK(ioctl(fd_frontend, FE_DISEQC_SEND_BURST, SEC_MINI_B)); break;
- case cDiseqc::daCodes: {
- int n = 0;
- uchar *codes = diseqc->Codes(n);
- if (codes) {
- struct dvb_diseqc_master_cmd cmd;
- memcpy(cmd.msg, codes, min(n, int(sizeof(cmd.msg))));
- cmd.msg_len = n;
- CHECK(ioctl(fd_frontend, FE_DISEQC_SEND_MASTER_CMD, &cmd));
- }
- }
- break;
- }
- }
- diseqcCommands = diseqc->Commands();
+ if (frontendType & (DVBFE_DELSYS_DVBS | DVBFE_DELSYS_DVBS2)) {
+ unsigned int frequency = channel.Frequency();
+ if (Setup.DiSEqC) {
+ cDiseqc *diseqc = Diseqcs.Get(channel.Source(), channel.Frequency(), channel.Polarization());
+ if (diseqc) {
+ if (diseqc->Commands() && (!diseqcCommands || strcmp(diseqcCommands, diseqc->Commands()) != 0)) {
+ cDiseqc::eDiseqcActions da;
+ for (char *CurrentAction = NULL; (da = diseqc->Execute(&CurrentAction)) != cDiseqc::daNone; ) {
+ switch (da) {
+ case cDiseqc::daNone: break;
+ case cDiseqc::daToneOff: CHECK(ioctl(fd_frontend, FE_SET_TONE, SEC_TONE_OFF)); break;
+ case cDiseqc::daToneOn: CHECK(ioctl(fd_frontend, FE_SET_TONE, SEC_TONE_ON)); break;
+ case cDiseqc::daVoltage13: CHECK(ioctl(fd_frontend, FE_SET_VOLTAGE, SEC_VOLTAGE_13)); break;
+ case cDiseqc::daVoltage18: CHECK(ioctl(fd_frontend, FE_SET_VOLTAGE, SEC_VOLTAGE_18)); break;
+ case cDiseqc::daMiniA: CHECK(ioctl(fd_frontend, FE_DISEQC_SEND_BURST, SEC_MINI_A)); break;
+ case cDiseqc::daMiniB: CHECK(ioctl(fd_frontend, FE_DISEQC_SEND_BURST, SEC_MINI_B)); break;
+ case cDiseqc::daCodes: {
+ int n = 0;
+ uchar *codes = diseqc->Codes(n);
+ if (codes) {
+ struct dvb_diseqc_master_cmd cmd;
+ memcpy(cmd.msg, codes, min(n, int(sizeof(cmd.msg))));
+ cmd.msg_len = n;
+ CHECK(ioctl(fd_frontend, FE_DISEQC_SEND_MASTER_CMD, &cmd));
+ }
+ }
+ break;
+ }
}
- frequency -= diseqc->Lof();
- }
- else {
- esyslog("ERROR: no DiSEqC parameters found for channel %d", channel.Number());
- return false;
- }
- }
- else {
- int tone = SEC_TONE_OFF;
-
- if (frequency < (unsigned int)Setup.LnbSLOF) {
- frequency -= Setup.LnbFrequLo;
- tone = SEC_TONE_OFF;
- }
- else {
- frequency -= Setup.LnbFrequHi;
- tone = SEC_TONE_ON;
- }
- int volt = (channel.Polarization() == 'v' || channel.Polarization() == 'V' || channel.Polarization() == 'r' || channel.Polarization() == 'R') ? SEC_VOLTAGE_13 : SEC_VOLTAGE_18;
- CHECK(ioctl(fd_frontend, FE_SET_VOLTAGE, volt));
- CHECK(ioctl(fd_frontend, FE_SET_TONE, tone));
- }
-
- frequency = abs(frequency); // Allow for C-band, where the frequency is less than the LOF
- Frontend.frequency = frequency * 1000UL;
- Frontend.inversion = fe_spectral_inversion_t(channel.Inversion());
- Frontend.u.qpsk.symbol_rate = channel.Srate() * 1000UL;
- Frontend.u.qpsk.fec_inner = fe_code_rate_t(channel.CoderateH());
-
- tuneTimeout = DVBS_TUNE_TIMEOUT;
- lockTimeout = DVBS_LOCK_TIMEOUT;
- }
- break;
- case FE_QAM: { // DVB-C
-
- // Frequency and symbol rate:
+ diseqcCommands = diseqc->Commands();
+ }
+ frequency -= diseqc->Lof();
+ }
+ else {
+ esyslog("ERROR: no DiSEqC parameters found for channel %d", channel.Number());
+ return false;
+ }
+ }
+ else {
+ int tone = SEC_TONE_OFF;
+ if (frequency < (unsigned int)Setup.LnbSLOF) {
+ frequency -= Setup.LnbFrequLo;
+ tone = SEC_TONE_OFF;
+ }
+ else {
+ frequency -= Setup.LnbFrequHi;
+ tone = SEC_TONE_ON;
+ }
+ int volt = (channel.Polarization() == 'v' || channel.Polarization() == 'V' || channel.Polarization() == 'r' || channel.Polarization() == 'R') ? SEC_VOLTAGE_13 : SEC_VOLTAGE_18;
+ CHECK(ioctl(fd_frontend, FE_SET_VOLTAGE, volt));
+ CHECK(ioctl(fd_frontend, FE_SET_TONE, tone));
+ }
+ frequency = abs(frequency); // Allow for C-band, where the frequency is less than the LOF
+
+ Frontend.delivery = dvbfe_delsys(channel.System());
+ Frontend.frequency = frequency * 1000UL;
+ Frontend.inversion = fe_spectral_inversion_t(channel.Inversion());
+ if (Frontend.delivery == DVBFE_DELSYS_DVBS) {
+ Frontend.delsys.dvbs.modulation = dvbfe_modulation(channel.Modulation());
+ Frontend.delsys.dvbs.symbol_rate = channel.Srate() * 1000UL;
+ Frontend.delsys.dvbs.fec = dvbfe_fec(channel.CoderateH());
+ }
+ else {
+ Frontend.delsys.dvbs2.modulation = dvbfe_modulation(channel.Modulation());
+ Frontend.delsys.dvbs2.symbol_rate = channel.Srate() * 1000UL;
+ Frontend.delsys.dvbs2.fec = dvbfe_fec(channel.CoderateH());
+ Frontend.delsys.dvbs2.rolloff = dvbfe_rolloff(channel.RollOff());
+ }
- Frontend.frequency = FrequencyToHz(channel.Frequency());
- Frontend.inversion = fe_spectral_inversion_t(channel.Inversion());
- Frontend.u.qam.symbol_rate = channel.Srate() * 1000UL;
- Frontend.u.qam.fec_inner = fe_code_rate_t(channel.CoderateH());
- Frontend.u.qam.modulation = fe_modulation_t(channel.Modulation());
+ tuneTimeout = DVBS_TUNE_TIMEOUT;
+ lockTimeout = DVBS_LOCK_TIMEOUT;
- tuneTimeout = DVBC_TUNE_TIMEOUT;
- lockTimeout = DVBC_LOCK_TIMEOUT;
- }
- break;
- case FE_OFDM: { // DVB-T
-
- // Frequency and OFDM paramaters:
-
- Frontend.frequency = FrequencyToHz(channel.Frequency());
- Frontend.inversion = fe_spectral_inversion_t(channel.Inversion());
- Frontend.u.ofdm.bandwidth = fe_bandwidth_t(channel.Bandwidth());
- Frontend.u.ofdm.code_rate_HP = fe_code_rate_t(channel.CoderateH());
- Frontend.u.ofdm.code_rate_LP = fe_code_rate_t(channel.CoderateL());
- Frontend.u.ofdm.constellation = fe_modulation_t(channel.Modulation());
- Frontend.u.ofdm.transmission_mode = fe_transmit_mode_t(channel.Transmission());
- Frontend.u.ofdm.guard_interval = fe_guard_interval_t(channel.Guard());
- Frontend.u.ofdm.hierarchy_information = fe_hierarchy_t(channel.Hierarchy());
-
- tuneTimeout = DVBT_TUNE_TIMEOUT;
- lockTimeout = DVBT_LOCK_TIMEOUT;
- }
- break;
- default:
- esyslog("ERROR: attempt to set channel with unknown DVB frontend type");
- return false;
- }
- if (ioctl(fd_frontend, FE_SET_FRONTEND, &Frontend) < 0) {
+ dvbfe_info feinfo;
+ feinfo.delivery = Frontend.delivery;
+ CHECK(ioctl(fd_frontend, DVBFE_GET_INFO, &feinfo)); //switch system
+ }
+ else if (frontendType & DVBFE_DELSYS_DVBC) {
+ Frontend.delivery = DVBFE_DELSYS_DVBC;
+ Frontend.frequency = FrequencyToHz(channel.Frequency());
+ Frontend.inversion = fe_spectral_inversion_t(channel.Inversion());
+ Frontend.delsys.dvbc.symbol_rate = channel.Srate() * 1000UL;
+ Frontend.delsys.dvbc.fec = dvbfe_fec(channel.CoderateH());
+ Frontend.delsys.dvbc.modulation = dvbfe_modulation(channel.Modulation());
+
+ tuneTimeout = DVBC_TUNE_TIMEOUT;
+ lockTimeout = DVBC_LOCK_TIMEOUT;
+
+ dvbfe_info feinfo;
+ feinfo.delivery = Frontend.delivery;
+ CHECK(ioctl(fd_frontend, DVBFE_GET_INFO, &feinfo)); //switch system
+ }
+ else if (frontendType & DVBFE_DELSYS_DVBT) {
+ Frontend.delivery = DVBFE_DELSYS_DVBT;
+ Frontend.frequency = FrequencyToHz(channel.Frequency());
+ Frontend.inversion = fe_spectral_inversion_t(channel.Inversion());
+ Frontend.delsys.dvbt.bandwidth = dvbfe_bandwidth(channel.Bandwidth());
+ Frontend.delsys.dvbt.code_rate_HP = dvbfe_fec(channel.CoderateH());
+ Frontend.delsys.dvbt.code_rate_LP = dvbfe_fec(channel.CoderateL());
+ Frontend.delsys.dvbt.constellation = dvbfe_modulation(channel.Modulation());
+ Frontend.delsys.dvbt.transmission_mode = dvbfe_transmission_mode(channel.Transmission());
+ Frontend.delsys.dvbt.guard_interval = dvbfe_guard_interval(channel.Guard());
+ Frontend.delsys.dvbt.hierarchy = dvbfe_hierarchy(channel.Hierarchy());
+ Frontend.delsys.dvbt.alpha = dvbfe_alpha(channel.Alpha());
+ Frontend.delsys.dvbt.priority = dvbfe_stream_priority(channel.Priority());
+
+ tuneTimeout = DVBT_TUNE_TIMEOUT;
+ lockTimeout = DVBT_LOCK_TIMEOUT;
+
+ dvbfe_info feinfo;
+ feinfo.delivery = Frontend.delivery;
+ CHECK(ioctl(fd_frontend, DVBFE_GET_INFO, &feinfo)); //switch system
+ }
+ else {
+ esyslog("ERROR: attempt to set channel with unknown DVB frontend type");
+ return false;
+ }
+ if (ioctl(fd_frontend, DVBFE_SET_PARAMS, &Frontend) < 0) {
esyslog("ERROR: frontend %d: %m", cardIndex);
return false;
}
@@ -351,11 +382,23 @@ void cDvbTuner::Action(void)
int cDvbDevice::devVideoOffset = -1;
int cDvbDevice::setTransferModeForDolbyDigital = 1;
+const char *DeliverySystems[] = {
+ "DVBS",
+ "DSS",
+ "DVBS2",
+ "DVBC",
+ "DVBT",
+ "DVBH",
+ "ATSC",
+ NULL
+ };
+
cDvbDevice::cDvbDevice(int n)
{
ciAdapter = NULL;
dvbTuner = NULL;
- frontendType = fe_type_t(-1); // don't know how else to initialize this - there is no FE_UNKNOWN
+ frontendType = DVBFE_DELSYS_DUMMY;
+ numProvidedSystems = 0;
spuDecoder = NULL;
digitalAudio = false;
playMode = pmNone;
@@ -417,9 +460,22 @@ cDvbDevice::cDvbDevice(int n)
// We only check the devices that must be present - the others will be checked before accessing them://XXX
if (fd_frontend >= 0) {
- dvb_frontend_info feinfo;
- if (ioctl(fd_frontend, FE_GET_INFO, &feinfo) >= 0) {
- frontendType = feinfo.type;
+ if (ioctl(fd_frontend, DVBFE_GET_DELSYS, &frontendType) >= 0) {
+ const char **DeliverySystem = DeliverySystems;
+ cString ds;
+ for (int i = 0; i < 32; i++) {
+ if (frontendType & (1u << i)) {
+ numProvidedSystems++;
+ if (*DeliverySystem)
+ ds = cString::sprintf("%s %s", *ds ? *ds : "", *DeliverySystem);
+ else
+ esyslog("ERROR: unknown delivery system %d", i);
+ }
+ if (*DeliverySystem)
+ DeliverySystem++;
+ }
+ if (*ds)
+ isyslog("device %d provides:%s", CardIndex() + 1, *ds);
dvbTuner = new cDvbTuner(fd_frontend, CardIndex(), frontendType);
}
else
@@ -744,14 +800,20 @@ bool cDvbDevice::ProvidesSource(int Source) const
{
int type = Source & cSource::st_Mask;
return type == cSource::stNone
- || type == cSource::stCable && frontendType == FE_QAM
- || type == cSource::stSat && frontendType == FE_QPSK
- || type == cSource::stTerr && frontendType == FE_OFDM;
+ || type == cSource::stCable && (frontendType & DVBFE_DELSYS_DVBC)
+ || type == cSource::stSat && (frontendType & (DVBFE_DELSYS_DVBS | DVBFE_DELSYS_DVBS2))
+ || type == cSource::stTerr && (frontendType & DVBFE_DELSYS_DVBT);
}
bool cDvbDevice::ProvidesTransponder(const cChannel *Channel) const
{
- return ProvidesSource(Channel->Source()) && (!cSource::IsSat(Channel->Source()) || !Setup.DiSEqC || Diseqcs.Get(Channel->Source(), Channel->Frequency(), Channel->Polarization()));
+ if (!ProvidesSource(Channel->Source()))
+ return false; // doesn't provide source
+ if (!cSource::IsSat(Channel->Source()))
+ return true; // source is sufficient for non sat
+ if (!(frontendType & Channel->System()))
+ return false; // requires modulation system which frontend doesn't provide
+ return !Setup.DiSEqC || Diseqcs.Get(Channel->Source(), Channel->Frequency(), Channel->Polarization());
}
bool cDvbDevice::ProvidesChannel(const cChannel *Channel, int Priority, bool *NeedsDetachReceivers) const
@@ -760,7 +822,7 @@ bool cDvbDevice::ProvidesChannel(const cChannel *Channel, int Priority, bool *Ne
bool hasPriority = Priority < 0 || Priority > this->Priority();
bool needsDetachReceivers = false;
- if (ProvidesSource(Channel->Source())) {
+ if (ProvidesTransponder(Channel)) {
result = hasPriority;
if (Priority >= 0 && Receiving(true)) {
if (dvbTuner->IsTunedTo(Channel)) {
@@ -792,6 +854,11 @@ bool cDvbDevice::ProvidesChannel(const cChannel *Channel, int Priority, bool *Ne
return result;
}
+int cDvbDevice::NumProvidedSystems(void) const
+{
+ return numProvidedSystems;
+}
+
bool cDvbDevice::IsTunedToTransponder(const cChannel *Channel)
{
return dvbTuner->IsTunedTo(Channel);
diff --git a/dvbdevice.h b/dvbdevice.h
index 7bd3e54..3990eaa 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 1.47 2008/02/08 13:48:31 kls Exp $
+ * $Id: dvbdevice.h 2.1 2008/04/12 11:20:48 kls Exp $
*/
#ifndef __DVBDEVICE_H
@@ -15,8 +15,8 @@
#include "device.h"
#include "dvbspu.h"
-#if DVB_API_VERSION != 3
-#error VDR requires Linux DVB driver API version 3!
+#if DVB_API_VERSION != 3 || DVB_API_VERSION_MINOR != 3
+#error VDR requires Linux DVB driver API version 3.3!
#endif
#define MAXDVBDEVICES 8
@@ -35,7 +35,8 @@ public:
///< Must be called before accessing any DVB functions.
///< \return True if any devices are available.
private:
- fe_type_t frontendType;
+ dvbfe_delsys frontendType;
+ int numProvidedSystems;
int fd_osd, fd_audio, fd_video, fd_dvr, fd_stc, fd_ca;
protected:
virtual void MakePrimaryDevice(bool On);
@@ -66,6 +67,7 @@ public:
virtual bool ProvidesSource(int Source) const;
virtual bool ProvidesTransponder(const cChannel *Channel) const;
virtual bool ProvidesChannel(const cChannel *Channel, int Priority = -1, bool *NeedsDetachReceivers = NULL) const;
+ virtual int NumProvidedSystems(void) const;
virtual bool IsTunedToTransponder(const cChannel *Channel);
protected:
virtual bool SetChannelDevice(const cChannel *Channel, bool LiveView);
diff --git a/dvbosd.c b/dvbosd.c
index e076a3c..ab34cbd 100644
--- a/dvbosd.c
+++ b/dvbosd.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: dvbosd.c 1.32 2007/09/16 08:55:54 kls Exp $
+ * $Id: dvbosd.c 2.0 2007/09/16 08:55:54 kls Exp $
*/
#include "dvbosd.h"
diff --git a/dvbosd.h b/dvbosd.h
index ae8afb6..3eb56f0 100644
--- a/dvbosd.h
+++ b/dvbosd.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: dvbosd.h 1.19 2007/08/25 13:49:34 kls Exp $
+ * $Id: dvbosd.h 2.0 2007/08/25 13:49:34 kls Exp $
*/
#ifndef __DVBOSD_H
diff --git a/dvbplayer.c b/dvbplayer.c
index 64fa559..0fe8d34 100644
--- a/dvbplayer.c
+++ b/dvbplayer.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: dvbplayer.c 1.48 2008/02/09 15:10:54 kls Exp $
+ * $Id: dvbplayer.c 2.0 2008/02/09 15:10:54 kls Exp $
*/
#include "dvbplayer.h"
diff --git a/dvbplayer.h b/dvbplayer.h
index 4159025..2fb3b78 100644
--- a/dvbplayer.h
+++ b/dvbplayer.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: dvbplayer.h 1.2 2002/06/23 10:13:51 kls Exp $
+ * $Id: dvbplayer.h 2.0 2002/06/23 10:13:51 kls Exp $
*/
#ifndef __DVBPLAYER_H
diff --git a/dvbspu.c b/dvbspu.c
index 1ca5435..bef80c3 100644
--- a/dvbspu.c
+++ b/dvbspu.c
@@ -8,7 +8,7 @@
*
* parts of this file are derived from the OMS program.
*
- * $Id: dvbspu.c 1.22 2007/02/03 10:13:18 kls Exp $
+ * $Id: dvbspu.c 2.0 2007/02/03 10:13:18 kls Exp $
*/
#include "dvbspu.h"
diff --git a/dvbspu.h b/dvbspu.h
index 1812b14..8606c82 100644
--- a/dvbspu.h
+++ b/dvbspu.h
@@ -8,7 +8,7 @@
*
* parts of this file are derived from the OMS program.
*
- * $Id: dvbspu.h 1.12 2006/04/17 12:47:29 kls Exp $
+ * $Id: dvbspu.h 2.0 2006/04/17 12:47:29 kls Exp $
*/
#ifndef __DVBSPU_H
diff --git a/dvbsubtitle.c b/dvbsubtitle.c
index 16a02c6..10d76b5 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 1.3 2007/11/25 13:33:08 kls Exp $
+ * $Id: dvbsubtitle.c 2.0 2007/11/25 13:33:08 kls Exp $
*/
#include "dvbsubtitle.h"
diff --git a/dvbsubtitle.h b/dvbsubtitle.h
index f7dec19..bd8e76e 100644
--- a/dvbsubtitle.h
+++ b/dvbsubtitle.h
@@ -6,7 +6,7 @@
*
* Original author: Marco Schller <marco@lordzodiac.de>
*
- * $Id: dvbsubtitle.h 1.1 2007/10/14 14:02:46 kls Exp $
+ * $Id: dvbsubtitle.h 2.0 2007/10/14 14:02:46 kls Exp $
*/
#ifndef __DVBSUBTITLE_H
diff --git a/eit.c b/eit.c
index 5ed25d1..d32629e 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 1.126 2007/08/26 10:56:33 kls Exp $
+ * $Id: eit.c 2.1 2008/04/13 11:27:06 kls Exp $
*/
#include "eit.h"
@@ -300,9 +300,9 @@ cTDT::cTDT(const u_char *Data)
if (diff > 2) {
mutex.Lock();
if (abs(diff - lastDiff) < 3) {
- isyslog("System Time = %s (%ld)", *TimeToString(loctim), loctim);
- isyslog("Local Time = %s (%ld)", *TimeToString(sattim), sattim);
- if (stime(&sattim) < 0)
+ if (stime(&sattim) == 0)
+ isyslog("system time changed from %s (%ld) to %s (%ld)", *TimeToString(loctim), loctim, *TimeToString(sattim), sattim);
+ else
esyslog("ERROR while setting system time: %m");
}
lastDiff = diff;
diff --git a/eit.h b/eit.h
index c57dd51..ae3f9d1 100644
--- a/eit.h
+++ b/eit.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: eit.h 1.30 2003/12/21 14:51:50 kls Exp $
+ * $Id: eit.h 2.0 2003/12/21 14:51:50 kls Exp $
*/
#ifndef __EIT_H
diff --git a/eitscan.c b/eitscan.c
index 5966f50..d419d31 100644
--- a/eitscan.c
+++ b/eitscan.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: eitscan.c 1.30 2006/01/07 14:10:17 kls Exp $
+ * $Id: eitscan.c 2.0 2006/01/07 14:10:17 kls Exp $
*/
#include "eitscan.h"
diff --git a/eitscan.h b/eitscan.h
index 8f6e391..fb2d3ff 100644
--- a/eitscan.h
+++ b/eitscan.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: eitscan.h 1.9 2005/09/04 10:51:35 kls Exp $
+ * $Id: eitscan.h 2.0 2005/09/04 10:51:35 kls Exp $
*/
#ifndef __EITSCAN_H
diff --git a/epg.c b/epg.c
index e01a782..5570e8e 100644
--- a/epg.c
+++ b/epg.c
@@ -7,7 +7,7 @@
* Original version (as used in VDR before 1.3.0) written by
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
*
- * $Id: epg.c 1.83 2008/02/16 16:09:12 kls Exp $
+ * $Id: epg.c 2.0 2008/02/16 16:09:12 kls Exp $
*/
#include "epg.h"
diff --git a/epg.h b/epg.h
index 792bb13..9acfa82 100644
--- a/epg.h
+++ b/epg.h
@@ -7,7 +7,7 @@
* Original version (as used in VDR before 1.3.0) written by
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
*
- * $Id: epg.h 1.35 2006/10/07 13:47:19 kls Exp $
+ * $Id: epg.h 2.0 2006/10/07 13:47:19 kls Exp $
*/
#ifndef __EPG_H
diff --git a/epg2html.pl b/epg2html.pl
index a18ec08..9fc41a6 100755
--- a/epg2html.pl
+++ b/epg2html.pl
@@ -12,7 +12,7 @@
# See the main source file 'vdr.c' for copyright information and
# how to reach the author.
#
-# $Id: epg2html.pl 1.7 2006/04/17 12:19:08 kls Exp $
+# $Id: epg2html.pl 2.0 2006/04/17 12:19:08 kls Exp $
@Index = ();
diff --git a/filter.c b/filter.c
index 08bde5a..4de6785 100644
--- a/filter.c
+++ b/filter.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: filter.c 1.4 2004/01/11 13:31:34 kls Exp $
+ * $Id: filter.c 2.0 2004/01/11 13:31:34 kls Exp $
*/
#include "filter.h"
diff --git a/filter.h b/filter.h
index 9bd163f..b85ab07 100644
--- a/filter.h
+++ b/filter.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: filter.h 1.3 2004/01/11 13:31:59 kls Exp $
+ * $Id: filter.h 2.0 2004/01/11 13:31:59 kls Exp $
*/
#ifndef __FILTER_H
diff --git a/font.c b/font.c
index b458e89..2fb23c0 100644
--- a/font.c
+++ b/font.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: font.c 1.25 2008/03/01 10:19:41 kls Exp $
+ * $Id: font.c 2.0 2008/03/01 10:19:41 kls Exp $
*/
#include "font.h"
diff --git a/font.h b/font.h
index 4794304..6d68d75 100644
--- a/font.h
+++ b/font.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: font.h 1.20 2007/06/23 10:09:14 kls Exp $
+ * $Id: font.h 2.0 2007/06/23 10:09:14 kls Exp $
*/
#ifndef __FONT_H
diff --git a/i18n-to-gettext.pl b/i18n-to-gettext.pl
index 309a472..e2f5fed 100755
--- a/i18n-to-gettext.pl
+++ b/i18n-to-gettext.pl
@@ -10,7 +10,7 @@
# See the main source file 'vdr.c' for copyright information and
# how to reach the author.
#
-# $Id: i18n-to-gettext.pl 1.6 2007/11/04 10:57:36 kls Exp $
+# $Id: i18n-to-gettext.pl 2.0 2007/11/04 10:57:36 kls Exp $
# How to convert an actual plugin:
#
diff --git a/i18n.c b/i18n.c
index 66111f4..40e9006 100644
--- a/i18n.c
+++ b/i18n.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: i18n.c 1.319 2008/01/19 12:07:11 kls Exp $
+ * $Id: i18n.c 2.0 2008/01/19 12:07:11 kls Exp $
*
*
*/
diff --git a/i18n.h b/i18n.h
index 8f960ea..014d8df 100644
--- a/i18n.h
+++ b/i18n.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: i18n.h 1.25 2008/01/19 11:56:19 kls Exp $
+ * $Id: i18n.h 2.0 2008/01/19 11:56:19 kls Exp $
*/
#ifndef __I18N_H
diff --git a/interface.c b/interface.c
index 6ad3c59..64bf975 100644
--- a/interface.c
+++ b/interface.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: interface.c 1.77 2008/02/10 15:49:15 kls Exp $
+ * $Id: interface.c 2.0 2008/02/10 15:49:15 kls Exp $
*/
#include "interface.h"
diff --git a/interface.h b/interface.h
index 2b3f979..9e10f40 100644
--- a/interface.h
+++ b/interface.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: interface.h 1.31 2004/05/01 11:11:13 kls Exp $
+ * $Id: interface.h 2.0 2004/05/01 11:11:13 kls Exp $
*/
#ifndef __INTERFACE_H
diff --git a/keys.c b/keys.c
index 19e12e5..f05e937 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 1.17 2008/02/10 14:08:48 kls Exp $
+ * $Id: keys.c 2.0 2008/02/10 14:08:48 kls Exp $
*/
#include "keys.h"
diff --git a/keys.h b/keys.h
index cb2b2eb..2d2e46c 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 1.14 2007/08/26 12:34:50 kls Exp $
+ * $Id: keys.h 2.0 2007/08/26 12:34:50 kls Exp $
*/
#ifndef __KEYS_H
diff --git a/libsi/Makefile b/libsi/Makefile
index cfc889b..1472a3b 100644
--- a/libsi/Makefile
+++ b/libsi/Makefile
@@ -1,7 +1,7 @@
#
# Makefile for a libsi
#
-# $Id: Makefile 1.6 2006/05/26 10:40:19 kls Exp $
+# $Id: Makefile 2.0 2006/05/26 10:40:19 kls Exp $
### The C++ compiler and options:
diff --git a/libsi/descriptor.c b/libsi/descriptor.c
index f3bb344..06b22dc 100644
--- a/libsi/descriptor.c
+++ b/libsi/descriptor.c
@@ -6,7 +6,7 @@
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
- * $Id: descriptor.c 1.22 2007/02/03 11:45:58 kls Exp $
+ * $Id: descriptor.c 2.0 2007/02/03 11:45:58 kls Exp $
* *
***************************************************************************/
diff --git a/libsi/descriptor.h b/libsi/descriptor.h
index 161793e..7df076e 100644
--- a/libsi/descriptor.h
+++ b/libsi/descriptor.h
@@ -6,7 +6,7 @@
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
- * $Id: descriptor.h 1.16 2007/02/03 11:45:58 kls Exp $
+ * $Id: descriptor.h 2.0 2007/02/03 11:45:58 kls Exp $
* *
***************************************************************************/
diff --git a/libsi/gendescr.pl b/libsi/gendescr.pl
index e2b206f..d28890f 100755
--- a/libsi/gendescr.pl
+++ b/libsi/gendescr.pl
@@ -1,6 +1,6 @@
#!/usr/bin/perl
-# $Id: gendescr.pl 1.2 2003/12/13 10:40:53 kls Exp $
+# $Id: gendescr.pl 2.0 2003/12/13 10:40:53 kls Exp $
print "Name (ohne ...Descriptor):";
$name=<STDIN>;
diff --git a/libsi/headers.h b/libsi/headers.h
index db1e261..1e09d6c 100644
--- a/libsi/headers.h
+++ b/libsi/headers.h
@@ -10,7 +10,7 @@
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
- * $Id: headers.h 1.9 2007/02/03 11:45:58 kls Exp $
+ * $Id: headers.h 2.0 2007/02/03 11:45:58 kls Exp $
* *
***************************************************************************/
diff --git a/libsi/section.c b/libsi/section.c
index 6dd43df..8c86f46 100644
--- a/libsi/section.c
+++ b/libsi/section.c
@@ -6,7 +6,7 @@
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
- * $Id: section.c 1.5 2006/04/14 10:53:44 kls Exp $
+ * $Id: section.c 2.0 2006/04/14 10:53:44 kls Exp $
* *
***************************************************************************/
diff --git a/libsi/section.h b/libsi/section.h
index 29af7f4..d8b5244 100644
--- a/libsi/section.h
+++ b/libsi/section.h
@@ -6,7 +6,7 @@
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
- * $Id: section.h 1.4 2006/04/14 10:53:44 kls Exp $
+ * $Id: section.h 2.0 2006/04/14 10:53:44 kls Exp $
* *
***************************************************************************/
diff --git a/libsi/si.c b/libsi/si.c
index 49464ba..bf00041 100644
--- a/libsi/si.c
+++ b/libsi/si.c
@@ -6,7 +6,7 @@
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
- * $Id: si.c 1.25 2008/03/05 17:00:55 kls Exp $
+ * $Id: si.c 2.0 2008/03/05 17:00:55 kls Exp $
* *
***************************************************************************/
diff --git a/libsi/si.h b/libsi/si.h
index a156d76..3d2cfc0 100644
--- a/libsi/si.h
+++ b/libsi/si.h
@@ -6,7 +6,7 @@
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
- * $Id: si.h 1.17 2007/04/22 13:32:09 kls Exp $
+ * $Id: si.h 2.0 2007/04/22 13:32:09 kls Exp $
* *
***************************************************************************/
diff --git a/libsi/util.c b/libsi/util.c
index b0db93e..36a80d0 100644
--- a/libsi/util.c
+++ b/libsi/util.c
@@ -6,7 +6,7 @@
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
- * $Id: util.c 1.7 2006/02/18 11:17:50 kls Exp $
+ * $Id: util.c 2.0 2006/02/18 11:17:50 kls Exp $
* *
***************************************************************************/
diff --git a/libsi/util.h b/libsi/util.h
index 08b1614..b030080 100644
--- a/libsi/util.h
+++ b/libsi/util.h
@@ -6,7 +6,7 @@
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
- * $Id: util.h 1.7 2006/02/25 10:13:28 kls Exp $
+ * $Id: util.h 2.0 2006/02/25 10:13:28 kls Exp $
* *
***************************************************************************/
diff --git a/lirc.c b/lirc.c
index c4838b1..f157df9 100644
--- a/lirc.c
+++ b/lirc.c
@@ -6,7 +6,7 @@
*
* LIRC support added by Carsten Koch <Carsten.Koch@icem.de> 2000-06-16.
*
- * $Id: lirc.c 1.15 2006/05/28 08:48:13 kls Exp $
+ * $Id: lirc.c 2.0 2006/05/28 08:48:13 kls Exp $
*/
#include "lirc.h"
diff --git a/lirc.h b/lirc.h
index 3c4735a..fb6745f 100644
--- a/lirc.h
+++ b/lirc.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: lirc.h 1.4 2006/01/27 16:00:19 kls Exp $
+ * $Id: lirc.h 2.0 2006/01/27 16:00:19 kls Exp $
*/
#ifndef __LIRC_H
diff --git a/menu.c b/menu.c
index b7eab45..da90018 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 1.482 2008/03/16 11:15:28 kls Exp $
+ * $Id: menu.c 2.1 2008/04/12 11:37:17 kls Exp $
*/
#include "menu.h"
@@ -182,70 +182,6 @@ eOSState cMenuEditSrcItem::ProcessKey(eKeys Key)
return state;
}
-// --- cMenuEditMapItem ------------------------------------------------------
-
-class cMenuEditMapItem : public cMenuEditItem {
-protected:
- int *value;
- const tChannelParameterMap *map;
- const char *zeroString;
- virtual void Set(void);
-public:
- cMenuEditMapItem(const char *Name, int *Value, const tChannelParameterMap *Map, const char *ZeroString = NULL);
- virtual eOSState ProcessKey(eKeys Key);
- };
-
-cMenuEditMapItem::cMenuEditMapItem(const char *Name, int *Value, const tChannelParameterMap *Map, const char *ZeroString)
-:cMenuEditItem(Name)
-{
- value = Value;
- map = Map;
- zeroString = ZeroString;
- Set();
-}
-
-void cMenuEditMapItem::Set(void)
-{
- int n = MapToUser(*value, map);
- if (n == 999)
- SetValue(tr("auto"));
- else if (n == 0 && zeroString)
- SetValue(zeroString);
- else if (n >= 0) {
- char buf[16];
- snprintf(buf, sizeof(buf), "%d", n);
- SetValue(buf);
- }
- else
- SetValue("???");
-}
-
-eOSState cMenuEditMapItem::ProcessKey(eKeys Key)
-{
- eOSState state = cMenuEditItem::ProcessKey(Key);
-
- if (state == osUnknown) {
- int newValue = *value;
- int n = DriverIndex(*value, map);
- if (NORMALKEY(Key) == kLeft) { // TODO might want to increase the delta if repeated quickly?
- if (n-- > 0)
- newValue = map[n].driverValue;
- }
- else if (NORMALKEY(Key) == kRight) {
- if (map[++n].userValue >= 0)
- newValue = map[n].driverValue;
- }
- else
- return state;
- if (newValue != *value) {
- *value = newValue;
- Set();
- }
- state = osContinue;
- }
- return state;
-}
-
// --- cMenuEditChannel ------------------------------------------------------
class cMenuEditChannel : public cOsdMenu {
@@ -306,15 +242,19 @@ void cMenuEditChannel::Setup(void)
XXX*/
// Parameters for specific types of sources:
ST(" S ") Add(new cMenuEditChrItem( tr("Polarization"), &data.polarization, "hvlr"));
+ ST(" S ") Add(new cMenuEditMapItem( tr("System"), &data.system, SystemValues));
ST("CS ") Add(new cMenuEditIntItem( tr("Srate"), &data.srate));
- ST("CST") Add(new cMenuEditMapItem( tr("Inversion"), &data.inversion, InversionValues, tr("off")));
- ST("CST") Add(new cMenuEditMapItem( tr("CoderateH"), &data.coderateH, CoderateValues, tr("none")));
- ST(" T") Add(new cMenuEditMapItem( tr("CoderateL"), &data.coderateL, CoderateValues, tr("none")));
- ST("C T") Add(new cMenuEditMapItem( tr("Modulation"), &data.modulation, ModulationValues, "QPSK"));
+ ST("CST") Add(new cMenuEditMapItem( tr("Inversion"), &data.inversion, InversionValues));
+ ST("CST") Add(new cMenuEditMapItem( tr("CoderateH"), &data.coderateH, CoderateValues));
+ ST(" T") Add(new cMenuEditMapItem( tr("CoderateL"), &data.coderateL, CoderateValues));
+ ST("CST") Add(new cMenuEditMapItem( tr("Modulation"), &data.modulation, ModulationValues));
ST(" T") Add(new cMenuEditMapItem( tr("Bandwidth"), &data.bandwidth, BandwidthValues));
ST(" T") Add(new cMenuEditMapItem( tr("Transmission"), &data.transmission, TransmissionValues));
ST(" T") Add(new cMenuEditMapItem( tr("Guard"), &data.guard, GuardValues));
- ST(" T") Add(new cMenuEditMapItem( tr("Hierarchy"), &data.hierarchy, HierarchyValues, tr("none")));
+ ST(" T") Add(new cMenuEditMapItem( tr("Hierarchy"), &data.hierarchy, HierarchyValues));
+ ST(" T") Add(new cMenuEditMapItem( tr("Alpha"), &data.alpha, AlphaValues));
+ ST(" T") Add(new cMenuEditMapItem( tr("Priority"), &data.priority, PriorityValues));
+ ST(" S ") Add(new cMenuEditMapItem( tr("Rolloff"), &data.rollOff, RollOffValues));
SetCurrent(Get(current));
Display();
diff --git a/menu.h b/menu.h
index 1d478d9..6ab9904 100644
--- a/menu.h
+++ b/menu.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: menu.h 1.91 2008/02/10 16:01:53 kls Exp $
+ * $Id: menu.h 2.0 2008/02/10 16:01:53 kls Exp $
*/
#ifndef __MENU_H
diff --git a/menuitems.c b/menuitems.c
index 4aba66c..200834e 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 1.58 2008/02/10 16:03:30 kls Exp $
+ * $Id: menuitems.c 2.1 2008/04/12 12:05:25 kls Exp $
*/
#include "menuitems.h"
@@ -936,6 +936,64 @@ eOSState cMenuEditTimeItem::ProcessKey(eKeys Key)
return state;
}
+// --- cMenuEditMapItem ------------------------------------------------------
+
+cMenuEditMapItem::cMenuEditMapItem(const char *Name, int *Value, const tChannelParameterMap *Map, const char *ZeroString)
+:cMenuEditItem(Name)
+{
+ value = Value;
+ map = Map;
+ zeroString = ZeroString;
+ Set();
+}
+
+void cMenuEditMapItem::Set(void)
+{
+ const char *s = NULL;
+ int n = MapToUser(*value, map, &s);
+ if (n == 999)
+ SetValue(tr("auto"));
+ else if (n == 0 && zeroString)
+ SetValue(zeroString);
+ else if (n >= 0) {
+ if (s)
+ SetValue(s);
+ else {
+ char buf[16];
+ snprintf(buf, sizeof(buf), "%d", n);
+ SetValue(buf);
+ }
+ }
+ else
+ SetValue("???");
+}
+
+eOSState cMenuEditMapItem::ProcessKey(eKeys Key)
+{
+ eOSState state = cMenuEditItem::ProcessKey(Key);
+
+ if (state == osUnknown) {
+ int newValue = *value;
+ int n = DriverIndex(*value, map);
+ if (NORMALKEY(Key) == kLeft) { // TODO might want to increase the delta if repeated quickly?
+ if (n-- > 0)
+ newValue = map[n].driverValue;
+ }
+ else if (NORMALKEY(Key) == kRight) {
+ if (map[++n].userValue >= 0)
+ newValue = map[n].driverValue;
+ }
+ else
+ return state;
+ if (newValue != *value) {
+ *value = newValue;
+ Set();
+ }
+ state = osContinue;
+ }
+ return state;
+}
+
// --- cMenuSetupPage --------------------------------------------------------
cMenuSetupPage::cMenuSetupPage(void)
diff --git a/menuitems.h b/menuitems.h
index 0170f9b..8d68b7d 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 1.25 2008/02/16 16:09:58 kls Exp $
+ * $Id: menuitems.h 2.1 2008/04/12 12:03:59 kls Exp $
*/
#ifndef __MENUITEMS_H
@@ -160,6 +160,17 @@ public:
virtual eOSState ProcessKey(eKeys Key);
};
+class cMenuEditMapItem : public cMenuEditItem {
+protected:
+ int *value;
+ const tChannelParameterMap *map;
+ const char *zeroString;
+ virtual void Set(void);
+public:
+ cMenuEditMapItem(const char *Name, int *Value, const tChannelParameterMap *Map, const char *ZeroString = NULL);
+ virtual eOSState ProcessKey(eKeys Key);
+ };
+
class cPlugin;
class cMenuSetupPage : public cOsdMenu {
diff --git a/newplugin b/newplugin
index d4d82fe..22e2b72 100755
--- a/newplugin
+++ b/newplugin
@@ -12,7 +12,7 @@
# See the main source file 'vdr.c' for copyright information and
# how to reach the author.
#
-# $Id: newplugin 1.41 2008/01/13 13:00:23 kls Exp $
+# $Id: newplugin 2.0 2008/01/13 13:00:23 kls Exp $
$PLUGIN_NAME = $ARGV[0] || die "Usage: newplugin <name>\n";
diff --git a/nit.c b/nit.c
index a2ff2d7..7f0154a 100644
--- a/nit.c
+++ b/nit.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: nit.c 1.18 2008/02/08 13:48:31 kls Exp $
+ * $Id: nit.c 2.1 2008/04/12 12:06:40 kls Exp $
*/
#include "nit.h"
@@ -127,8 +127,13 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
int Frequency = Frequencies[0] = BCD2INT(sd->getFrequency()) / 100;
static char Polarizations[] = { 'h', 'v', 'l', 'r' };
char Polarization = Polarizations[sd->getPolarization()];
- static int CodeRates[] = { FEC_NONE, FEC_1_2, FEC_2_3, FEC_3_4, FEC_5_6, FEC_7_8, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_NONE };
+ static int CodeRates[] = { DVBFE_FEC_NONE, DVBFE_FEC_1_2, DVBFE_FEC_2_3, DVBFE_FEC_3_4, DVBFE_FEC_5_6, DVBFE_FEC_7_8, DVBFE_FEC_8_9, DVBFE_FEC_3_5, DVBFE_FEC_4_5, DVBFE_FEC_9_10, DVBFE_FEC_AUTO, DVBFE_FEC_AUTO, DVBFE_FEC_AUTO, DVBFE_FEC_AUTO, DVBFE_FEC_AUTO, DVBFE_FEC_NONE };
int CodeRate = CodeRates[sd->getFecInner()];
+ static int Modulations[] = { DVBFE_MOD_AUTO, DVBFE_MOD_QPSK, DVBFE_MOD_8PSK, DVBFE_MOD_QAM16 };
+ int Modulation = Modulations[sd->getModulationType()];
+ int System = sd->getModulationSystem() ? DVBFE_DELSYS_DVBS2 : DVBFE_DELSYS_DVBS;
+ static int RollOffs[] = { DVBFE_ROLLOFF_35, DVBFE_ROLLOFF_25, DVBFE_ROLLOFF_20, DVBFE_ROLLOFF_UNKNOWN };
+ int RollOff = sd->getModulationSystem() ? RollOffs[sd->getRollOff()] : DVBFE_ROLLOFF_UNKNOWN;
int SymbolRate = BCD2INT(sd->getSymbolRate()) / 10;
if (ThisNIT >= 0) {
for (int n = 0; n < NumFrequencies; n++) {
@@ -155,14 +160,14 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
}
}
if (ISTRANSPONDER(cChannel::Transponder(Frequency, Polarization), Transponder())) // only modify channels if we're actually receiving this transponder
- Channel->SetSatTransponderData(Source, Frequency, Polarization, SymbolRate, CodeRate);
+ Channel->SetSatTransponderData(Source, Frequency, Polarization, SymbolRate, CodeRate, Modulation, System, RollOff);
}
}
if (!found) {
for (int n = 0; n < NumFrequencies; n++) {
cChannel *Channel = new cChannel;
Channel->SetId(ts.getOriginalNetworkId(), ts.getTransportStreamId(), 0, 0);
- if (Channel->SetSatTransponderData(Source, Frequencies[n], Polarization, SymbolRate, CodeRate))
+ if (Channel->SetSatTransponderData(Source, Frequencies[n], Polarization, SymbolRate, CodeRate, Modulation, System, RollOff))
EITScanner.AddTransponder(Channel);
else
delete Channel;
@@ -176,9 +181,9 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
int Source = cSource::FromData(cSource::stCable);
int Frequency = Frequencies[0] = BCD2INT(sd->getFrequency()) / 10;
//XXX FEC_outer???
- static int CodeRates[] = { FEC_NONE, FEC_1_2, FEC_2_3, FEC_3_4, FEC_5_6, FEC_7_8, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_NONE };
+ static int CodeRates[] = { DVBFE_FEC_NONE, DVBFE_FEC_1_2, DVBFE_FEC_2_3, DVBFE_FEC_3_4, DVBFE_FEC_5_6, DVBFE_FEC_7_8, DVBFE_FEC_8_9, DVBFE_FEC_3_5, DVBFE_FEC_4_5, DVBFE_FEC_9_10, DVBFE_FEC_AUTO, DVBFE_FEC_AUTO, DVBFE_FEC_AUTO, DVBFE_FEC_AUTO, DVBFE_FEC_AUTO, DVBFE_FEC_NONE };
int CodeRate = CodeRates[sd->getFecInner()];
- static int Modulations[] = { QPSK, QAM_16, QAM_32, QAM_64, QAM_128, QAM_256, QAM_AUTO };
+ static int Modulations[] = { DVBFE_MOD_NONE, DVBFE_MOD_QAM16, DVBFE_MOD_QAM32, DVBFE_MOD_QAM64, DVBFE_MOD_QAM128, DVBFE_MOD_QAM256, QAM_AUTO };
int Modulation = Modulations[min(sd->getModulation(), 6)];
int SymbolRate = BCD2INT(sd->getSymbolRate()) / 10;
if (ThisNIT >= 0) {
@@ -226,19 +231,22 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
SI::TerrestrialDeliverySystemDescriptor *sd = (SI::TerrestrialDeliverySystemDescriptor *)d;
int Source = cSource::FromData(cSource::stTerr);
int Frequency = Frequencies[0] = sd->getFrequency() * 10;
- static int Bandwidths[] = { BANDWIDTH_8_MHZ, BANDWIDTH_7_MHZ, BANDWIDTH_6_MHZ, BANDWIDTH_AUTO, BANDWIDTH_AUTO, BANDWIDTH_AUTO, BANDWIDTH_AUTO, BANDWIDTH_AUTO };
+ static int Bandwidths[] = { DVBFE_BANDWIDTH_8_MHZ, DVBFE_BANDWIDTH_7_MHZ, DVBFE_BANDWIDTH_6_MHZ, DVBFE_BANDWIDTH_5_MHZ, DVBFE_BANDWIDTH_AUTO, DVBFE_BANDWIDTH_AUTO, DVBFE_BANDWIDTH_AUTO, DVBFE_BANDWIDTH_AUTO };
int Bandwidth = Bandwidths[sd->getBandwidth()];
- static int Constellations[] = { QPSK, QAM_16, QAM_64, QAM_AUTO };
+ static int Constellations[] = { DVBFE_MOD_QPSK, DVBFE_MOD_QAM16, DVBFE_MOD_QAM64, DVBFE_MOD_AUTO };
int Constellation = Constellations[sd->getConstellation()];
- static int Hierarchies[] = { HIERARCHY_NONE, HIERARCHY_1, HIERARCHY_2, HIERARCHY_4, HIERARCHY_AUTO, HIERARCHY_AUTO, HIERARCHY_AUTO, HIERARCHY_AUTO };
- int Hierarchy = Hierarchies[sd->getHierarchy()];
- static int CodeRates[] = { FEC_1_2, FEC_2_3, FEC_3_4, FEC_5_6, FEC_7_8, FEC_AUTO, FEC_AUTO, FEC_AUTO };
+ static int CodeRates[] = { DVBFE_FEC_1_2, DVBFE_FEC_2_3, DVBFE_FEC_3_4, DVBFE_FEC_5_6, DVBFE_FEC_7_8, DVBFE_FEC_AUTO, DVBFE_FEC_AUTO, DVBFE_FEC_AUTO };
int CodeRateHP = CodeRates[sd->getCodeRateHP()];
int CodeRateLP = CodeRates[sd->getCodeRateLP()];
- static int GuardIntervals[] = { GUARD_INTERVAL_1_32, GUARD_INTERVAL_1_16, GUARD_INTERVAL_1_8, GUARD_INTERVAL_1_4 };
+ static int GuardIntervals[] = { DVBFE_GUARD_INTERVAL_1_32, DVBFE_GUARD_INTERVAL_1_16, DVBFE_GUARD_INTERVAL_1_8, DVBFE_GUARD_INTERVAL_1_4 };
int GuardInterval = GuardIntervals[sd->getGuardInterval()];
- static int TransmissionModes[] = { TRANSMISSION_MODE_2K, TRANSMISSION_MODE_8K, TRANSMISSION_MODE_AUTO, TRANSMISSION_MODE_AUTO };
+ static int TransmissionModes[] = { DVBFE_TRANSMISSION_MODE_2K, DVBFE_TRANSMISSION_MODE_8K, DVBFE_TRANSMISSION_MODE_4K, DVBFE_TRANSMISSION_MODE_AUTO };
int TransmissionMode = TransmissionModes[sd->getTransmissionMode()];
+ static int Priorities[] = { DVBFE_STREAM_PRIORITY_LP, DVBFE_STREAM_PRIORITY_HP };
+ int Priority = Priorities[sd->getPriority()];
+ static int Alphas[] = { 0, DVBFE_ALPHA_1, DVBFE_ALPHA_2, DVBFE_ALPHA_4 };
+ int Alpha = Alphas[sd->getHierarchy() & 3];
+ int Hierarchy = Alpha ? DVBFE_HIERARCHY_ON : DVBFE_HIERARCHY_OFF;
if (ThisNIT >= 0) {
for (int n = 0; n < NumFrequencies; n++) {
if (ISTRANSPONDER(Frequencies[n] / 1000000, Transponder())) {
@@ -264,14 +272,14 @@ void cNitFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
}
}
if (ISTRANSPONDER(Frequency / 1000000, Transponder())) // only modify channels if we're actually receiving this transponder
- Channel->SetTerrTransponderData(Source, Frequency, Bandwidth, Constellation, Hierarchy, CodeRateHP, CodeRateLP, GuardInterval, TransmissionMode);
+ Channel->SetTerrTransponderData(Source, Frequency, Bandwidth, Constellation, Hierarchy, CodeRateHP, CodeRateLP, GuardInterval, TransmissionMode, Alpha, Priority);
}
}
if (!found) {
for (int n = 0; n < NumFrequencies; n++) {
cChannel *Channel = new cChannel;
Channel->SetId(ts.getOriginalNetworkId(), ts.getTransportStreamId(), 0, 0);
- if (Channel->SetTerrTransponderData(Source, Frequencies[n], Bandwidth, Constellation, Hierarchy, CodeRateHP, CodeRateLP, GuardInterval, TransmissionMode))
+ if (Channel->SetTerrTransponderData(Source, Frequencies[n], Bandwidth, Constellation, Hierarchy, CodeRateHP, CodeRateLP, GuardInterval, TransmissionMode, Alpha, Priority))
EITScanner.AddTransponder(Channel);
else
delete Channel;
diff --git a/nit.h b/nit.h
index c4ac82b..e93f5bf 100644
--- a/nit.h
+++ b/nit.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: nit.h 1.3 2007/06/10 08:50:21 kls Exp $
+ * $Id: nit.h 2.0 2007/06/10 08:50:21 kls Exp $
*/
#ifndef __NIT_H
diff --git a/osd.c b/osd.c
index 47a11b2..925d605 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 1.75 2007/10/12 12:38:36 kls Exp $
+ * $Id: osd.c 2.0 2007/10/12 12:38:36 kls Exp $
*/
#include "osd.h"
diff --git a/osd.h b/osd.h
index 42ebc1a..9950a2d 100644
--- a/osd.h
+++ b/osd.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: osd.h 1.58 2007/10/12 14:28:44 kls Exp $
+ * $Id: osd.h 2.0 2007/10/12 14:28:44 kls Exp $
*/
#ifndef __OSD_H
diff --git a/osdbase.c b/osdbase.c
index 0d9b6d8..a8f591d 100644
--- a/osdbase.c
+++ b/osdbase.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: osdbase.c 1.32 2008/02/17 11:33:04 kls Exp $
+ * $Id: osdbase.c 2.0 2008/02/17 11:33:04 kls Exp $
*/
#include "osdbase.h"
diff --git a/osdbase.h b/osdbase.h
index b62b071..0997c27 100644
--- a/osdbase.h
+++ b/osdbase.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: osdbase.h 1.17 2007/11/03 14:50:52 kls Exp $
+ * $Id: osdbase.h 2.0 2007/11/03 14:50:52 kls Exp $
*/
#ifndef __OSDBASE_H
diff --git a/pat.c b/pat.c
index 9b41b16..a16607c 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 1.20 2008/02/08 13:48:31 kls Exp $
+ * $Id: pat.c 2.1 2008/04/12 13:34:50 kls Exp $
*/
#include "pat.h"
@@ -343,6 +343,7 @@ void cPatFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
switch (stream.getStreamType()) {
case 1: // STREAMTYPE_11172_VIDEO
case 2: // STREAMTYPE_13818_VIDEO
+//TODO case 0x1B: // MPEG4
Vpid = stream.getPid();
break;
case 3: // STREAMTYPE_11172_AUDIO
diff --git a/pat.h b/pat.h
index a8053ae..700f91c 100644
--- a/pat.h
+++ b/pat.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: pat.h 1.7 2007/01/05 10:42:11 kls Exp $
+ * $Id: pat.h 2.0 2007/01/05 10:42:11 kls Exp $
*/
#ifndef __PAT_H
diff --git a/player.c b/player.c
index c96fc1a..3490565 100644
--- a/player.c
+++ b/player.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: player.c 1.12 2007/07/20 15:25:24 kls Exp $
+ * $Id: player.c 2.0 2007/07/20 15:25:24 kls Exp $
*/
#include "player.h"
diff --git a/player.h b/player.h
index 47a4e3d..3636dba 100644
--- a/player.h
+++ b/player.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: player.h 1.21 2008/02/16 13:50:11 kls Exp $
+ * $Id: player.h 2.0 2008/02/16 13:50:11 kls Exp $
*/
#ifndef __PLAYER_H
diff --git a/plugin.c b/plugin.c
index 8fab11f..848e843 100644
--- a/plugin.c
+++ b/plugin.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: plugin.c 1.28 2008/02/17 13:32:12 kls Exp $
+ * $Id: plugin.c 2.0 2008/02/17 13:32:12 kls Exp $
*/
#include "plugin.h"
diff --git a/plugin.h b/plugin.h
index f457bd0..4d70f92 100644
--- a/plugin.h
+++ b/plugin.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: plugin.h 1.15 2007/08/04 09:56:26 kls Exp $
+ * $Id: plugin.h 2.0 2007/08/04 09:56:26 kls Exp $
*/
#ifndef __PLUGIN_H
diff --git a/po/ca_ES.po b/po/ca_ES.po
index 208d049..0fd4091 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2008-03-02 19:02+0100\n"
"Last-Translator: Luca Olivetti <luca@ventoso.org>\n"
"Language-Team: Catalanian\n"
@@ -18,6 +18,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "off"
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "cap"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** Canal incorrecte ***"
@@ -228,9 +243,6 @@ msgstr "No codificat"
msgid "encrypted"
msgstr "Codificat"
-msgid "auto"
-msgstr "auto"
-
msgid "Edit channel"
msgstr "Editar canal"
@@ -279,21 +291,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polaritzaci"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "Srate"
msgid "Inversion"
msgstr "Inversi"
-msgid "off"
-msgstr "off"
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "cap"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -312,6 +321,15 @@ msgstr "Protegir"
msgid "Hierarchy"
msgstr "Jerarquia"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "Prioritat"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "Propietats del canal duplicades!"
@@ -357,9 +375,6 @@ msgstr "Fi"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Prioritat"
-
msgid "Lifetime"
msgstr "Durada"
@@ -894,6 +909,9 @@ msgstr "Sobrescriure"
msgid "Button$Insert"
msgstr "Inserir"
+msgid "auto"
+msgstr "auto"
+
msgid "Plugin"
msgstr "Plugin"
diff --git a/po/cs_CZ.po b/po/cs_CZ.po
index 336a7e6..dd0ced3 100644
--- a/po/cs_CZ.po
+++ b/po/cs_CZ.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\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"
"Language-Team: Czech\n"
@@ -16,6 +16,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-2\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "vyp."
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "dn"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** Neplatn kanl ***"
@@ -226,9 +241,6 @@ msgstr "voln"
msgid "encrypted"
msgstr "kdovan"
-msgid "auto"
-msgstr "auto"
-
msgid "Edit channel"
msgstr "Editace kanlu"
@@ -277,21 +289,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polarizace"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "Srate"
msgid "Inversion"
msgstr "Inversion"
-msgid "off"
-msgstr "vyp."
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "dn"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -310,6 +319,15 @@ msgstr "Guard"
msgid "Hierarchy"
msgstr "Hierarchy"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "Priorita"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "Nastaven kanl nejsou uniktn!"
@@ -355,9 +373,6 @@ msgstr "Konec"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Priorita"
-
msgid "Lifetime"
msgstr "ivotnost"
@@ -892,6 +907,9 @@ msgstr "Pepsat"
msgid "Button$Insert"
msgstr "Vloit"
+msgid "auto"
+msgstr "auto"
+
msgid "Plugin"
msgstr "Modul"
diff --git a/po/da_DK.po b/po/da_DK.po
index 11fc183..53633b2 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
"Last-Translator: Mogens Elneff <mogens@elneff.dk>\n"
"Language-Team: Danish\n"
@@ -15,6 +15,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-15\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "fra"
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "ingen"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** Ugyldig kanal! ***"
@@ -225,9 +240,6 @@ msgstr "Free To Air"
msgid "encrypted"
msgstr "kodet"
-msgid "auto"
-msgstr "automatisk"
-
msgid "Edit channel"
msgstr "Rediger kanal"
@@ -276,21 +288,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polarisation"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "Srate"
msgid "Inversion"
msgstr "Inversion"
-msgid "off"
-msgstr "fra"
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "ingen"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -309,6 +318,15 @@ msgstr "Guard"
msgid "Hierarchy"
msgstr "Hierarki"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "Prioritet"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "Kanalindstillinger er ikke entydige!"
@@ -354,9 +372,6 @@ msgstr "Stop"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Prioritet"
-
msgid "Lifetime"
msgstr "Levetid"
@@ -891,6 +906,9 @@ msgstr "Overskriv"
msgid "Button$Insert"
msgstr "Indst"
+msgid "auto"
+msgstr "automatisk"
+
msgid "Plugin"
msgstr "Plugin"
diff --git a/po/de_DE.po b/po/de_DE.po
index 60921ca..f53e810 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2007-11-25 15:19+0200\n"
"Last-Translator: Klaus Schmidinger <kls@cadsoft.de>\n"
"Language-Team: German\n"
@@ -15,6 +15,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-15\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "aus"
+
+msgid "on"
+msgstr "ein"
+
+msgid "none"
+msgstr "keine"
+
+msgid "high"
+msgstr "hoch"
+
+msgid "low"
+msgstr "niedrig"
+
msgid "*** Invalid Channel ***"
msgstr "*** Ungltiger Kanal ***"
@@ -225,9 +240,6 @@ msgstr "frei empfangbar"
msgid "encrypted"
msgstr "verschlsselt"
-msgid "auto"
-msgstr "auto"
-
msgid "Edit channel"
msgstr "Kanal editieren"
@@ -276,21 +288,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polarisation"
+msgid "System"
+msgstr "System"
+
msgid "Srate"
msgstr "Srate"
msgid "Inversion"
msgstr "Inversion"
-msgid "off"
-msgstr "aus"
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "keine"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -309,6 +318,15 @@ msgstr "Guard"
msgid "Hierarchy"
msgstr "Hierarchie"
+msgid "Alpha"
+msgstr "Alpha"
+
+msgid "Priority"
+msgstr "Prioritt"
+
+msgid "Rolloff"
+msgstr "Rolloff"
+
msgid "Channel settings are not unique!"
msgstr "Kanaleinstellungen sind nicht eindeutig!"
@@ -354,9 +372,6 @@ msgstr "Ende"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Prioritt"
-
msgid "Lifetime"
msgstr "Lebensdauer"
@@ -891,6 +906,9 @@ msgstr "berschreiben"
msgid "Button$Insert"
msgstr "Einfgen"
+msgid "auto"
+msgstr "auto"
+
msgid "Plugin"
msgstr "Plugin"
diff --git a/po/el_GR.po b/po/el_GR.po
index abf4e75..337c6b0 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
"Last-Translator: Dimitrios Dimitrakos <mail@dimitrios.de>\n"
"Language-Team: Greek\n"
@@ -15,6 +15,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-7\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr ""
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr ""
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** ***"
@@ -225,9 +240,6 @@ msgstr ""
msgid "encrypted"
msgstr ""
-msgid "auto"
-msgstr ""
-
msgid "Edit channel"
msgstr " "
@@ -276,21 +288,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr ""
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "Srate"
msgid "Inversion"
msgstr ""
-msgid "off"
-msgstr ""
-
msgid "CoderateH"
msgstr " H"
-msgid "none"
-msgstr ""
-
msgid "CoderateL"
msgstr " L"
@@ -309,6 +318,15 @@ msgstr ""
msgid "Hierarchy"
msgstr ""
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr ""
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr " !"
@@ -354,9 +372,6 @@ msgstr ""
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr ""
-
msgid "Lifetime"
msgstr " "
@@ -891,6 +906,9 @@ msgstr ""
msgid "Button$Insert"
msgstr ""
+msgid "auto"
+msgstr ""
+
msgid "Plugin"
msgstr ""
diff --git a/po/es_ES.po b/po/es_ES.po
index ed1ea5b..61c8717 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-03-02 17:25+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2008-03-02 19:02+0100\n"
"Last-Translator: Luca Olivetti <luca@ventoso.org>\n"
"Language-Team: Spanish\n"
@@ -16,6 +16,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-15\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "off"
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "ninguno"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** Canal no vlido ***"
@@ -226,9 +241,6 @@ msgstr "en abierto"
msgid "encrypted"
msgstr "cifrado"
-msgid "auto"
-msgstr "auto"
-
msgid "Edit channel"
msgstr "Modificar canal"
@@ -277,21 +289,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polarizacin"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "T.smbolos"
msgid "Inversion"
msgstr "Inversion"
-msgid "off"
-msgstr "off"
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "ninguno"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -310,6 +319,15 @@ msgstr "Int.Guarda"
msgid "Hierarchy"
msgstr "Jerarqua"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "Prioridad"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "!Propiedades de canal duplicadas!"
@@ -355,9 +373,6 @@ msgstr "Fin"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Prioridad"
-
msgid "Lifetime"
msgstr "Duracin"
@@ -892,6 +907,9 @@ msgstr "Sobreescribir"
msgid "Button$Insert"
msgstr "Insertar"
+msgid "auto"
+msgstr "auto"
+
msgid "Plugin"
msgstr "Plugin"
diff --git a/po/et_EE.po b/po/et_EE.po
index 9b10cf6..70d59be 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
"Last-Translator: Arthur Konovalov <kasjas@hot.ee>\n"
"Language-Team: Estonian\n"
@@ -15,6 +15,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-13\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "vljas"
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "puudu"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** Vigane kanal ***"
@@ -225,9 +240,6 @@ msgstr "FTA"
msgid "encrypted"
msgstr "krptitud"
-msgid "auto"
-msgstr "automaatne"
-
msgid "Edit channel"
msgstr "Kanali muutmine"
@@ -276,21 +288,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polarisatsioon"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "Srate"
msgid "Inversion"
msgstr "Inversioon"
-msgid "off"
-msgstr "vljas"
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "puudu"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -309,6 +318,15 @@ msgstr "Guard"
msgid "Hierarchy"
msgstr "Hierarhia"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "Prioriteet"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "Kanaliseaded ei ole unikaalsed!"
@@ -354,9 +372,6 @@ msgstr "Stopp"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Prioriteet"
-
msgid "Lifetime"
msgstr "Eluiga"
@@ -891,6 +906,9 @@ msgstr "Asenda (OVR)"
msgid "Button$Insert"
msgstr "Lisa (INS)"
+msgid "auto"
+msgstr "automaatne"
+
msgid "Plugin"
msgstr "Laiendusmoodul"
diff --git a/po/fi_FI.po b/po/fi_FI.po
index 5d1f007..6be05ef 100644
--- a/po/fi_FI.po
+++ b/po/fi_FI.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+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"
@@ -18,6 +18,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-15\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "poissa"
+
+msgid "on"
+msgstr "pll"
+
+msgid "none"
+msgstr "tyhj"
+
+msgid "high"
+msgstr "korkea"
+
+msgid "low"
+msgstr "matala"
+
msgid "*** Invalid Channel ***"
msgstr "*** Virheellinen kanavavalinta ***"
@@ -228,9 +243,6 @@ msgstr "vapaa"
msgid "encrypted"
msgstr "salattu"
-msgid "auto"
-msgstr "auto"
-
msgid "Edit channel"
msgstr "Muokkaa kanavaa"
@@ -279,21 +291,18 @@ msgstr "Palvelu-ID"
msgid "Polarization"
msgstr "Polarisaatio"
+msgid "System"
+msgstr "Systeemi"
+
msgid "Srate"
msgstr "Symbolinopeus"
msgid "Inversion"
msgstr "Inversio"
-msgid "off"
-msgstr "pois"
-
msgid "CoderateH"
msgstr "Suojaustaso (HP)"
-msgid "none"
-msgstr "tyhj"
-
msgid "CoderateL"
msgstr "Suojaustaso (LP)"
@@ -312,6 +321,15 @@ msgstr "Suojavli"
msgid "Hierarchy"
msgstr "Hierarkia"
+msgid "Alpha"
+msgstr "Alpha"
+
+msgid "Priority"
+msgstr "Prioriteetti"
+
+msgid "Rolloff"
+msgstr "Rolloff"
+
msgid "Channel settings are not unique!"
msgstr "Kanava-asetukset eivt ole yksillliset!"
@@ -357,9 +375,6 @@ msgstr "Lopetus"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Prioriteetti"
-
msgid "Lifetime"
msgstr "Elinik"
@@ -894,6 +909,9 @@ msgstr "Korvaa"
msgid "Button$Insert"
msgstr "Lis"
+msgid "auto"
+msgstr "auto"
+
msgid "Plugin"
msgstr "Laajennos"
diff --git a/po/fr_FR.po b/po/fr_FR.po
index 8549149..db88663 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+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"
@@ -21,6 +21,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "off"
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "aucun"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** Chane invalide ! ***"
@@ -231,9 +246,6 @@ msgstr "En clair"
msgid "encrypted"
msgstr "Crypt"
-msgid "auto"
-msgstr "auto"
-
msgid "Edit channel"
msgstr "Modifier une chane"
@@ -282,21 +294,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polarisation"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "Frq. symbole"
msgid "Inversion"
msgstr "Inversion"
-msgid "off"
-msgstr "off"
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "aucun"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -315,6 +324,15 @@ msgstr "Intervalle de garde"
msgid "Hierarchy"
msgstr "Hirarchie"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "Priorit"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "Caractristiques des chanes non uniques"
@@ -360,9 +378,6 @@ msgstr "Fin"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Priorit"
-
msgid "Lifetime"
msgstr "Dure de vie"
@@ -897,6 +912,9 @@ msgstr "Ecraser"
msgid "Button$Insert"
msgstr "Insrer"
+msgid "auto"
+msgstr "auto"
+
msgid "Plugin"
msgstr "Plugin"
diff --git a/po/hr_HR.po b/po/hr_HR.po
index 0790633..69c2ee4 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2008-03-17 19:00+0100\n"
"Last-Translator: Adrian Caval <anrxc@sysphere.org>\n"
"Language-Team: Croatian\n"
@@ -17,6 +17,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-2\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "iskljui"
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "nita"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** Neispravan Program ***"
@@ -227,9 +242,6 @@ msgstr "Slobodno"
msgid "encrypted"
msgstr "kriptirano"
-msgid "auto"
-msgstr "automatski"
-
msgid "Edit channel"
msgstr "Ureivanje programa"
@@ -278,21 +290,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polarizacija"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "Srate"
msgid "Inversion"
msgstr "Inverzija"
-msgid "off"
-msgstr "iskljui"
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "nita"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -311,6 +320,15 @@ msgstr "Zatita"
msgid "Hierarchy"
msgstr "Hijerarhija"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "Prioritet"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "Postavke programa nisu jedinstvene!"
@@ -356,9 +374,6 @@ msgstr "Kraj"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Prioritet"
-
msgid "Lifetime"
msgstr "Trajanje"
@@ -893,6 +908,9 @@ msgstr "Prepii"
msgid "Button$Insert"
msgstr "Umetni"
+msgid "auto"
+msgstr "automatski"
+
msgid "Plugin"
msgstr "Dodatak"
diff --git a/po/hu_HU.po b/po/hu_HU.po
index 7fe04ee..e2629e8 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2007-12-01 21:42+0200\n"
"Last-Translator: Istvn Fley <ifuley@tigercomp.ro>\n"
"Language-Team: Hungarian\n"
@@ -18,6 +18,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-2\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "ki"
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "semmi"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** rvnytelen csatorna ***"
@@ -228,9 +243,6 @@ msgstr "Kdolatlan"
msgid "encrypted"
msgstr "Kdolt"
-msgid "auto"
-msgstr "auto"
-
msgid "Edit channel"
msgstr "Csatornk belltsa"
@@ -279,21 +291,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polarizci"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "Srate"
msgid "Inversion"
msgstr "Inversion"
-msgid "off"
-msgstr "ki"
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "semmi"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -312,6 +321,15 @@ msgstr "Guard"
msgid "Hierarchy"
msgstr "Hierarhia"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "Priorits"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "Az adbelltsok nem egyrtelmek"
@@ -357,9 +375,6 @@ msgstr "Vge"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Priorits"
-
msgid "Lifetime"
msgstr "lettartam"
@@ -785,9 +800,8 @@ msgstr "ahogy az elbb"
msgid "Setup.Miscellaneous$Initial volume"
msgstr "Hanger a bekapcsolsnl"
-#, fuzzy
msgid "Setup.Miscellaneous$Emergency exit"
-msgstr "ahogy az elbb"
+msgstr ""
msgid "Plugins"
msgstr "Plugins"
@@ -895,6 +909,9 @@ msgstr "trni"
msgid "Button$Insert"
msgstr "Beilleszteni"
+msgid "auto"
+msgstr "auto"
+
msgid "Plugin"
msgstr "Plugin"
diff --git a/po/it_IT.po b/po/it_IT.po
index c3356c2..f122b3e 100644
--- a/po/it_IT.po
+++ b/po/it_IT.po
@@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2008-03-08 21:06+0100\n"
"Last-Translator: Diego Pierotto <vdr-italian@tiscali.it>\n"
"Language-Team: Italian\n"
@@ -19,6 +19,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-15\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "off"
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "nessuno"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** Canale NON valido ***"
@@ -229,9 +244,6 @@ msgstr "in chiaro"
msgid "encrypted"
msgstr "codificato"
-msgid "auto"
-msgstr "automatico"
-
msgid "Edit channel"
msgstr "Modifica canale"
@@ -280,21 +292,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polarizzazione"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "SymbolRate"
msgid "Inversion"
msgstr "Inversione"
-msgid "off"
-msgstr "off"
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "nessuno"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -313,6 +322,15 @@ msgstr "Guard"
msgid "Hierarchy"
msgstr "Gerarchia"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "Priorit"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "Parametri canale non univoci!"
@@ -358,9 +376,6 @@ msgstr "Fine"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Priorit"
-
msgid "Lifetime"
msgstr "Durata"
@@ -895,6 +910,9 @@ msgstr "Sovrascrivi"
msgid "Button$Insert"
msgstr "Inserisci"
+msgid "auto"
+msgstr "automatico"
+
msgid "Plugin"
msgstr "Plugin"
diff --git a/po/nl_NL.po b/po/nl_NL.po
index 57282ea..547df25 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+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"
@@ -19,6 +19,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-15\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "uit"
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "geen"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** Ongeldig kanaal ***"
@@ -229,9 +244,6 @@ msgstr "Vrij te ontvangen"
msgid "encrypted"
msgstr "gecodeerd"
-msgid "auto"
-msgstr "auto"
-
msgid "Edit channel"
msgstr "Kanaal aanpassen"
@@ -280,21 +292,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polarisatie"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "Srate"
msgid "Inversion"
msgstr "Inversion"
-msgid "off"
-msgstr "uit"
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "geen"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -313,6 +322,15 @@ msgstr "Guard"
msgid "Hierarchy"
msgstr "Hierarchie"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "Prioriteit"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "Kanaalinstellingen zijn niet uniek!"
@@ -358,9 +376,6 @@ msgstr "Einde"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Prioriteit"
-
msgid "Lifetime"
msgstr "Bewaarduur"
@@ -895,6 +910,9 @@ msgstr "Overschrijven"
msgid "Button$Insert"
msgstr "Invoegen"
+msgid "auto"
+msgstr "auto"
+
msgid "Plugin"
msgstr "Plugin"
diff --git a/po/nn_NO.po b/po/nn_NO.po
index 0147c06..670f0dd 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
"Last-Translator: Truls Slevigen <truls@slevigen.no>\n"
"Language-Team: Norwegian\n"
@@ -16,6 +16,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr ""
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr ""
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** Ugyldig Kanal! ***"
@@ -226,9 +241,6 @@ msgstr ""
msgid "encrypted"
msgstr ""
-msgid "auto"
-msgstr ""
-
msgid "Edit channel"
msgstr "Editer kanal"
@@ -277,21 +289,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polarisasjon"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "Srate"
msgid "Inversion"
msgstr "Inversion"
-msgid "off"
-msgstr ""
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr ""
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -310,6 +319,15 @@ msgstr "Guard"
msgid "Hierarchy"
msgstr "Hierarchy"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "Prioritet"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr ""
@@ -355,9 +373,6 @@ msgstr "Slutt"
msgid "VPS"
msgstr ""
-msgid "Priority"
-msgstr "Prioritet"
-
msgid "Lifetime"
msgstr "Levetid"
@@ -892,6 +907,9 @@ msgstr ""
msgid "Button$Insert"
msgstr ""
+msgid "auto"
+msgstr ""
+
msgid "Plugin"
msgstr "Plugin"
diff --git a/po/pl_PL.po b/po/pl_PL.po
index ff21e96..e5bcd37 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2008-03-09 12:59+0100\n"
"Last-Translator: Michael Rakowski <mrak@gmx.de>\n"
"Language-Team: Polish\n"
@@ -16,6 +16,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-2\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "wycz"
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "brak"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** Niepoprawny kana ***"
@@ -226,9 +241,6 @@ msgstr "nieszyfrowany"
msgid "encrypted"
msgstr "szyfrowany"
-msgid "auto"
-msgstr "auto"
-
msgid "Edit channel"
msgstr "Edycja kanau"
@@ -277,21 +289,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polaryzacja"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "Srate"
msgid "Inversion"
msgstr "Inwersja"
-msgid "off"
-msgstr "wycz"
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "brak"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -310,6 +319,15 @@ msgstr "Guard"
msgid "Hierarchy"
msgstr "Hierarchia"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "Priorytet"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "Ustawienia kanau nie s unikalne!"
@@ -355,9 +373,6 @@ msgstr "Koniec"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Priorytet"
-
msgid "Lifetime"
msgstr "Czas ycia"
@@ -892,6 +907,9 @@ msgstr "Nadpisz"
msgid "Button$Insert"
msgstr "Wstaw"
+msgid "auto"
+msgstr "auto"
+
msgid "Plugin"
msgstr "Wtyczka"
diff --git a/po/pt_PT.po b/po/pt_PT.po
index 1cdbfa2..143d0e9 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2008-03-18 17:04+0100\n"
"Last-Translator: anonymous\n"
"Language-Team: Portuguese\n"
@@ -15,6 +15,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "off"
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "nenhum"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** Canal invlido ***"
@@ -225,9 +240,6 @@ msgstr "FTA"
msgid "encrypted"
msgstr "Codificado"
-msgid "auto"
-msgstr "Automtico"
-
msgid "Edit channel"
msgstr "Editar canal"
@@ -276,21 +288,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polarizao"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "Srate"
msgid "Inversion"
msgstr "Inverso"
-msgid "off"
-msgstr "off"
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "nenhum"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -309,6 +318,15 @@ msgstr "Guard"
msgid "Hierarchy"
msgstr "Hierarquia"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "Prioridade"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "Propriedades do canal no so nicas!"
@@ -354,9 +372,6 @@ msgstr "Fim"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Prioridade"
-
msgid "Lifetime"
msgstr "Durao"
@@ -891,6 +906,9 @@ msgstr "Substituir"
msgid "Button$Insert"
msgstr "Inserir"
+msgid "auto"
+msgstr "Automtico"
+
msgid "Plugin"
msgstr "Plugin"
diff --git a/po/ro_RO.po b/po/ro_RO.po
index 5622556..9236f2d 100644
--- a/po/ro_RO.po
+++ b/po/ro_RO.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2008-02-25 00:39+0100\n"
"Last-Translator: Lucian Muresan <lucianm@users.sourceforge.net>\n"
"Language-Team: Romanian\n"
@@ -18,6 +18,21 @@ msgstr ""
"X-Poedit-Language: Romanian\n"
"X-Poedit-Country: ROMANIA\n"
+msgid "off"
+msgstr "inactiv"
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "niciuna(ul)"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** Canal invalid ***"
@@ -228,9 +243,6 @@ msgstr "FTA (necriptat)"
msgid "encrypted"
msgstr "criptat"
-msgid "auto"
-msgstr "automat"
-
msgid "Edit channel"
msgstr "Modificare canal"
@@ -279,21 +291,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polarizare"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "Rat simboluri"
msgid "Inversion"
msgstr "Inversiune"
-msgid "off"
-msgstr "inactiv"
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "niciuna(ul)"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -312,6 +321,15 @@ msgstr "Guard"
msgid "Hierarchy"
msgstr "Ierarhie"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "Prioritate"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "Parametrii canalului nu sunt univoci!"
@@ -357,9 +375,6 @@ msgstr "Sfrit"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Prioritate"
-
msgid "Lifetime"
msgstr "Timp de pstrare"
@@ -894,6 +909,9 @@ msgstr "Suprascrie"
msgid "Button$Insert"
msgstr "Insereaz"
+msgid "auto"
+msgstr "automat"
+
msgid "Plugin"
msgstr "Plugin (modul adiional)"
diff --git a/po/ru_RU.po b/po/ru_RU.po
index 0f868a4..0938736 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2008-02-15 16:37+0100\n"
"Last-Translator: Oleg Roitburd <oleg@roitburd.de>\n"
"Language-Team: Russian\n"
@@ -16,6 +16,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-5\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr ""
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr ""
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** ***"
@@ -226,9 +241,6 @@ msgstr "FTA ()"
msgid "encrypted"
msgstr ""
-msgid "auto"
-msgstr ""
-
msgid "Edit channel"
msgstr " "
@@ -277,21 +289,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr ""
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr ". "
msgid "Inversion"
msgstr ""
-msgid "off"
-msgstr ""
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr ""
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -310,6 +319,15 @@ msgstr ""
msgid "Hierarchy"
msgstr ""
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr ""
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr " !"
@@ -355,9 +373,6 @@ msgstr ""
msgid "VPS"
msgstr "VPS "
-msgid "Priority"
-msgstr ""
-
msgid "Lifetime"
msgstr " "
@@ -892,6 +907,9 @@ msgstr ""
msgid "Button$Insert"
msgstr ""
+msgid "auto"
+msgstr ""
+
msgid "Plugin"
msgstr ""
diff --git a/po/sl_SI.po b/po/sl_SI.po
index ce7361b..5e4ef3b 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+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"
@@ -16,6 +16,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-2\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "izklop"
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "nobeden"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** Neznan kanal ***"
@@ -226,9 +241,6 @@ msgstr "nekodiran"
msgid "encrypted"
msgstr "kodiran"
-msgid "auto"
-msgstr "avtomatsko"
-
msgid "Edit channel"
msgstr "Uredi kanal"
@@ -277,21 +289,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polarizacija"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "Srate"
msgid "Inversion"
msgstr "Inverzija"
-msgid "off"
-msgstr "izklop"
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "nobeden"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -310,6 +319,15 @@ msgstr "Zaita"
msgid "Hierarchy"
msgstr "Hierarhija"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "Prioriteta"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "Nastavitve kanala niso edinstvene!"
@@ -355,9 +373,6 @@ msgstr "Konec"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Prioriteta"
-
msgid "Lifetime"
msgstr "Veljavnost"
@@ -892,6 +907,9 @@ msgstr "Prepii"
msgid "Button$Insert"
msgstr "Vstavi"
+msgid "auto"
+msgstr "avtomatsko"
+
msgid "Plugin"
msgstr "Vstavek"
diff --git a/po/sv_SE.po b/po/sv_SE.po
index 8a204dd..92613d0 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2008-03-12 18:25+0100\n"
"Last-Translator: Magnus Andersson <svankan@bahnhof.se>\n"
"Language-Team: Swedish\n"
@@ -18,6 +18,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "av"
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "ingen"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** Felaktig kanal ***"
@@ -228,9 +243,6 @@ msgstr "Okodad"
msgid "encrypted"
msgstr "krypterad"
-msgid "auto"
-msgstr "automatisk"
-
msgid "Edit channel"
msgstr "ndra kanal"
@@ -279,21 +291,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Polarisation"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "Srate"
msgid "Inversion"
msgstr "Inversion"
-msgid "off"
-msgstr "av"
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "ingen"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -312,6 +321,15 @@ msgstr "Guard"
msgid "Hierarchy"
msgstr "Hierarchy"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "Prioritet"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "Kanalinstllningarna r ej unika!"
@@ -357,9 +375,6 @@ msgstr "Slutar"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "Prioritet"
-
msgid "Lifetime"
msgstr "Livstid"
@@ -894,6 +909,9 @@ msgstr "Skriv ver"
msgid "Button$Insert"
msgstr "Infoga"
+msgid "auto"
+msgstr "automatisk"
+
msgid "Plugin"
msgstr "Modul"
diff --git a/po/tr_TR.po b/po/tr_TR.po
index f4e433e..9e7251a 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+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"
@@ -15,6 +15,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-9\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr "kapal"
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "hi"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** Geersiz kanal ***"
@@ -225,9 +240,6 @@ msgstr "ifresiz"
msgid "encrypted"
msgstr "ifreli"
-msgid "auto"
-msgstr "otomatik"
-
msgid "Edit channel"
msgstr "Kanal ayarlarn deitir"
@@ -276,21 +288,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "Kutuplama"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "Srate"
msgid "Inversion"
msgstr "nversiyon"
-msgid "off"
-msgstr "kapal"
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr "hi"
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -309,6 +318,15 @@ msgstr "Koruma"
msgid "Hierarchy"
msgstr "Hiyerari"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "ncelik"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "Kanal ayarlar belli del!"
@@ -354,9 +372,6 @@ msgstr "Biti"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "ncelik"
-
msgid "Lifetime"
msgstr "mr"
@@ -891,6 +906,9 @@ msgstr "stne yaz"
msgid "Button$Insert"
msgstr "Ekle"
+msgid "auto"
+msgstr "otomatik"
+
msgid "Plugin"
msgstr "Eklenti"
diff --git a/po/uk_UA.po b/po/uk_UA.po
index 5d55d8c..fb734de 100644
--- a/po/uk_UA.po
+++ b/po/uk_UA.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 1.6.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@cadsoft.de>\n"
-"POT-Creation-Date: 2008-02-10 12:22+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2008-03-07 14:17+0200\n"
"Last-Translator: Yarema Aka Knedlyk <yupadmin@gmail.com>\n"
"Language-Team: Ukrainian\n"
@@ -15,6 +15,21 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-5\n"
"Content-Transfer-Encoding: 8bit\n"
+msgid "off"
+msgstr ""
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr ""
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "*** ***"
@@ -225,9 +240,6 @@ msgstr "FTA ()"
msgid "encrypted"
msgstr ""
-msgid "auto"
-msgstr ""
-
msgid "Edit channel"
msgstr " "
@@ -276,21 +288,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr ""
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr ". "
msgid "Inversion"
msgstr ""
-msgid "off"
-msgstr ""
-
msgid "CoderateH"
msgstr "CoderateH"
-msgid "none"
-msgstr ""
-
msgid "CoderateL"
msgstr "CoderateL"
@@ -309,6 +318,15 @@ msgstr ""
msgid "Hierarchy"
msgstr ""
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr ""
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr " !"
@@ -354,9 +372,6 @@ msgstr ""
msgid "VPS"
msgstr "VPS "
-msgid "Priority"
-msgstr ""
-
msgid "Lifetime"
msgstr " "
@@ -873,14 +888,12 @@ msgstr " "
msgid "Editing process already active!"
msgstr " !"
-#, fuzzy
msgid "FileNameChars$ abcdefghijklmnopqrstuvwxyz0123456789-.,#~\\^$[]|()*+?{}/:%@&"
msgstr " abcdefghijklmnopqrstuvwxyz0123456789-.#~,/_@"
msgid "yes"
msgstr ""
-#, fuzzy
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"
@@ -893,6 +906,9 @@ msgstr ""
msgid "Button$Insert"
msgstr ""
+msgid "auto"
+msgstr ""
+
msgid "Plugin"
msgstr ""
diff --git a/po/zh_CN.po b/po/zh_CN.po
index eaa9079..5ff19cf 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@cadsoft.de>\n"
-"POT-Creation-Date: 2008-03-22 13:28+0100\n"
+"POT-Creation-Date: 2008-04-12 14:19+0200\n"
"PO-Revision-Date: 2008-03-21 08:44+0800\n"
"Last-Translator: Nan Feng <nfgx@21cn.com>\n"
"Language-Team: Chinese\n"
@@ -18,6 +18,21 @@ msgstr ""
"X-Poedit-Country: CHINA\n"
"X-Poedit-SourceCharset: utf-8\n"
+msgid "off"
+msgstr "关"
+
+msgid "on"
+msgstr ""
+
+msgid "none"
+msgstr "无"
+
+msgid "high"
+msgstr ""
+
+msgid "low"
+msgstr ""
+
msgid "*** Invalid Channel ***"
msgstr "***无效频道 ***"
@@ -228,9 +243,6 @@ msgstr "剩余空间"
msgid "encrypted"
msgstr "加密"
-msgid "auto"
-msgstr "自动"
-
msgid "Edit channel"
msgstr "编辑频道"
@@ -279,21 +291,18 @@ msgstr "Sid"
msgid "Polarization"
msgstr "极化"
+msgid "System"
+msgstr ""
+
msgid "Srate"
msgstr "比率"
msgid "Inversion"
msgstr "倒置"
-msgid "off"
-msgstr "关"
-
msgid "CoderateH"
msgstr "高符号频率"
-msgid "none"
-msgstr "无"
-
msgid "CoderateL"
msgstr "论符号频率"
@@ -312,6 +321,15 @@ msgstr "防护"
msgid "Hierarchy"
msgstr "层次"
+msgid "Alpha"
+msgstr ""
+
+msgid "Priority"
+msgstr "优先"
+
+msgid "Rolloff"
+msgstr ""
+
msgid "Channel settings are not unique!"
msgstr "频道设置不是唯一的!"
@@ -357,9 +375,6 @@ msgstr "停止"
msgid "VPS"
msgstr "VPS"
-msgid "Priority"
-msgstr "优先"
-
msgid "Lifetime"
msgstr "终生"
@@ -894,6 +909,9 @@ msgstr "覆盖"
msgid "Button$Insert"
msgstr "插入"
+msgid "auto"
+msgstr "自动"
+
msgid "Plugin"
msgstr "插件"
diff --git a/rcu.c b/rcu.c
index 34b4387..2e20314 100644
--- a/rcu.c
+++ b/rcu.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: rcu.c 1.16 2007/08/24 13:15:48 kls Exp $
+ * $Id: rcu.c 2.0 2007/08/24 13:15:48 kls Exp $
*/
#include "rcu.h"
diff --git a/rcu.h b/rcu.h
index 8824f66..a0ca233 100644
--- a/rcu.h
+++ b/rcu.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: rcu.h 1.7 2007/08/24 13:15:48 kls Exp $
+ * $Id: rcu.h 2.0 2007/08/24 13:15:48 kls Exp $
*/
#ifndef __RCU_H
diff --git a/receiver.c b/receiver.c
index 82c414d..f4c0a78 100644
--- a/receiver.c
+++ b/receiver.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: receiver.c 1.7 2007/08/12 11:52:59 kls Exp $
+ * $Id: receiver.c 2.0 2007/08/12 11:52:59 kls Exp $
*/
#include "receiver.h"
diff --git a/receiver.h b/receiver.h
index e223274..35930d2 100644
--- a/receiver.h
+++ b/receiver.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: receiver.h 1.5 2007/01/05 11:00:36 kls Exp $
+ * $Id: receiver.h 2.0 2007/01/05 11:00:36 kls Exp $
*/
#ifndef __RECEIVER_H
diff --git a/recorder.c b/recorder.c
index 7bcd0cc..93424da 100644
--- a/recorder.c
+++ b/recorder.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: recorder.c 1.19 2007/02/24 16:36:24 kls Exp $
+ * $Id: recorder.c 2.0 2007/02/24 16:36:24 kls Exp $
*/
#include "recorder.h"
diff --git a/recorder.h b/recorder.h
index 920d909..d0ce9bd 100644
--- a/recorder.h
+++ b/recorder.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: recorder.h 1.5 2007/01/05 10:44:05 kls Exp $
+ * $Id: recorder.h 2.0 2007/01/05 10:44:05 kls Exp $
*/
#ifndef __RECORDER_H
diff --git a/recording.c b/recording.c
index 1535b46..9468f79 100644
--- a/recording.c
+++ b/recording.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: recording.c 1.162 2008/02/24 10:28:53 kls Exp $
+ * $Id: recording.c 2.0 2008/02/24 10:28:53 kls Exp $
*/
#include "recording.h"
diff --git a/recording.h b/recording.h
index 4bdcd1b..a201f5a 100644
--- a/recording.h
+++ b/recording.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: recording.h 1.59 2007/10/14 10:11:34 kls Exp $
+ * $Id: recording.h 2.0 2007/10/14 10:11:34 kls Exp $
*/
#ifndef __RECORDING_H
diff --git a/remote.c b/remote.c
index 733ae31..37a6bbd 100644
--- a/remote.c
+++ b/remote.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: remote.c 1.59 2008/02/23 14:14:46 kls Exp $
+ * $Id: remote.c 2.0 2008/02/23 14:14:46 kls Exp $
*/
#include "remote.h"
diff --git a/remote.h b/remote.h
index 46ad956..4478f7f 100644
--- a/remote.h
+++ b/remote.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: remote.h 1.41 2008/02/23 14:38:47 kls Exp $
+ * $Id: remote.h 2.0 2008/02/23 14:38:47 kls Exp $
*/
#ifndef __REMOTE_H
diff --git a/remux.c b/remux.c
index 9b9aa24..6b42209 100644
--- a/remux.c
+++ b/remux.c
@@ -11,7 +11,7 @@
* The cRepacker family's code was originally written by Reinhard Nissl <rnissl@gmx.de>,
* and adapted to the VDR coding style by Klaus.Schmidinger@cadsoft.de.
*
- * $Id: remux.c 1.64 2007/11/25 13:56:03 kls Exp $
+ * $Id: remux.c 2.0 2007/11/25 13:56:03 kls Exp $
*/
#include "remux.h"
diff --git a/remux.h b/remux.h
index 1b7727e..d996957 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 1.17 2007/09/02 10:19:06 kls Exp $
+ * $Id: remux.h 2.0 2007/09/02 10:19:06 kls Exp $
*/
#ifndef __REMUX_H
diff --git a/ringbuffer.c b/ringbuffer.c
index d74706a..e825b83 100644
--- a/ringbuffer.c
+++ b/ringbuffer.c
@@ -7,7 +7,7 @@
* Parts of this file were inspired by the 'ringbuffy.c' from the
* LinuxDVB driver (see linuxtv.org).
*
- * $Id: ringbuffer.c 1.25 2007/11/17 13:49:34 kls Exp $
+ * $Id: ringbuffer.c 2.0 2007/11/17 13:49:34 kls Exp $
*/
#include "ringbuffer.h"
diff --git a/ringbuffer.h b/ringbuffer.h
index f6664cf..0127316 100644
--- a/ringbuffer.h
+++ b/ringbuffer.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: ringbuffer.h 1.18 2007/11/17 13:49:34 kls Exp $
+ * $Id: ringbuffer.h 2.0 2007/11/17 13:49:34 kls Exp $
*/
#ifndef __RINGBUFFER_H
diff --git a/runvdr b/runvdr
index 96c95bf..1c3cc7e 100755
--- a/runvdr
+++ b/runvdr
@@ -20,7 +20,7 @@
# See the main source file 'vdr.c' for copyright information and
# how to reach the author.
#
-# $Id: runvdr 1.19 2006/05/14 16:02:05 kls Exp $
+# $Id: runvdr 2.0 2006/05/14 16:02:05 kls Exp $
VDRPRG="./vdr"
VDRCMD="$VDRPRG -w 60 $*"
diff --git a/sdt.c b/sdt.c
index 1a360e2..0b11bb7 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 1.19 2008/02/08 13:48:31 kls Exp $
+ * $Id: sdt.c 2.1 2008/04/12 13:33:55 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 0x19: // digital HD television service
{
char NameBuf[Utf8BufSize(1024)];
char ShortNameBuf[Utf8BufSize(1024)];
diff --git a/sdt.h b/sdt.h
index a427119..2566672 100644
--- a/sdt.h
+++ b/sdt.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: sdt.h 1.2 2004/01/05 14:30:14 kls Exp $
+ * $Id: sdt.h 2.0 2004/01/05 14:30:14 kls Exp $
*/
#ifndef __SDT_H
diff --git a/sections.c b/sections.c
index afb4f0b..6b9cbe2 100644
--- a/sections.c
+++ b/sections.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: sections.c 1.15 2007/10/14 12:52:07 kls Exp $
+ * $Id: sections.c 2.0 2007/10/14 12:52:07 kls Exp $
*/
#include "sections.h"
diff --git a/sections.h b/sections.h
index f11f479..3b00c8b 100644
--- a/sections.h
+++ b/sections.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: sections.h 1.5 2005/08/13 11:23:55 kls Exp $
+ * $Id: sections.h 2.0 2005/08/13 11:23:55 kls Exp $
*/
#ifndef __SECTIONS_H
diff --git a/shutdown.c b/shutdown.c
index d71a3a1..09d4a1a 100644
--- a/shutdown.c
+++ b/shutdown.c
@@ -6,7 +6,7 @@
*
* Original version written by Udo Richter <udo_richter@gmx.de>.
*
- * $Id: shutdown.c 1.5 2008/02/24 10:29:00 kls Exp $
+ * $Id: shutdown.c 2.0 2008/02/24 10:29:00 kls Exp $
*/
#include "shutdown.h"
diff --git a/shutdown.h b/shutdown.h
index 4dff8ea..af0c046 100644
--- a/shutdown.h
+++ b/shutdown.h
@@ -6,7 +6,7 @@
*
* Original version written by Udo Richter <udo_richter@gmx.de>.
*
- * $Id: shutdown.h 1.1 2007/02/24 17:23:59 kls Exp $
+ * $Id: shutdown.h 2.0 2007/02/24 17:23:59 kls Exp $
*/
#ifndef __SHUTDOWN_H
diff --git a/skinclassic.c b/skinclassic.c
index 6c36278..a73e97c 100644
--- a/skinclassic.c
+++ b/skinclassic.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: skinclassic.c 1.27 2008/02/23 10:31:58 kls Exp $
+ * $Id: skinclassic.c 2.0 2008/02/23 10:31:58 kls Exp $
*/
#include "skinclassic.h"
diff --git a/skinclassic.h b/skinclassic.h
index 2ac69b1..60878e4 100644
--- a/skinclassic.h
+++ b/skinclassic.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: skinclassic.h 1.2 2005/01/02 14:38:56 kls Exp $
+ * $Id: skinclassic.h 2.0 2005/01/02 14:38:56 kls Exp $
*/
#ifndef __SKINCLASSIC_H
diff --git a/skins.c b/skins.c
index 46a858c..8c67a80 100644
--- a/skins.c
+++ b/skins.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: skins.c 1.14 2008/02/17 11:31:09 kls Exp $
+ * $Id: skins.c 2.0 2008/02/17 11:31:09 kls Exp $
*/
#include "skins.h"
diff --git a/skins.h b/skins.h
index 9e83c0c..6f41da5 100644
--- a/skins.h
+++ b/skins.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: skins.h 1.16 2008/02/17 11:30:56 kls Exp $
+ * $Id: skins.h 2.0 2008/02/17 11:30:56 kls Exp $
*/
#ifndef __SKINS_H
diff --git a/skinsttng.c b/skinsttng.c
index f629841..5513c91 100644
--- a/skinsttng.c
+++ b/skinsttng.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: skinsttng.c 1.28 2008/02/23 10:23:44 kls Exp $
+ * $Id: skinsttng.c 2.0 2008/02/23 10:23:44 kls Exp $
*/
// Star Trek: The Next Generation is a registered trademark of Paramount Pictures
diff --git a/skinsttng.h b/skinsttng.h
index 11a9642..cef3b91 100644
--- a/skinsttng.h
+++ b/skinsttng.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: skinsttng.h 1.2 2005/01/02 14:39:29 kls Exp $
+ * $Id: skinsttng.h 2.0 2005/01/02 14:39:29 kls Exp $
*/
#ifndef __SKINSTTNG_H
diff --git a/sources.c b/sources.c
index 65002a5..d3ec44e 100644
--- a/sources.c
+++ b/sources.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: sources.c 1.4 2008/02/10 14:07:26 kls Exp $
+ * $Id: sources.c 2.0 2008/02/10 14:07:26 kls Exp $
*/
#include "sources.h"
diff --git a/sources.h b/sources.h
index ae941f8..bf8a07d 100644
--- a/sources.h
+++ b/sources.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: sources.h 1.4 2005/05/14 09:30:41 kls Exp $
+ * $Id: sources.h 2.0 2005/05/14 09:30:41 kls Exp $
*/
#ifndef __SOURCES_H
diff --git a/spu.c b/spu.c
index feb2d61..9e38eec 100644
--- a/spu.c
+++ b/spu.c
@@ -6,7 +6,7 @@
* This code is distributed under the terms and conditions of the
* GNU GENERAL PUBLIC LICENSE. See the file COPYING for details.
*
- * $Id: spu.c 1.4 2008/02/10 14:06:48 kls Exp $
+ * $Id: spu.c 2.0 2008/02/10 14:06:48 kls Exp $
*/
#include "spu.h"
diff --git a/spu.h b/spu.h
index 39c721f..3a8ab3e 100644
--- a/spu.h
+++ b/spu.h
@@ -6,7 +6,7 @@
* This code is distributed under the terms and conditions of the
* GNU GENERAL PUBLIC LICENSE. See the file COPYING for details.
*
- * $Id: spu.h 1.5 2006/04/17 12:48:55 kls Exp $
+ * $Id: spu.h 2.0 2006/04/17 12:48:55 kls Exp $
*/
#ifndef __SPU_VDR_H
diff --git a/status.c b/status.c
index 1d7a8d4..c542a3c 100644
--- a/status.c
+++ b/status.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: status.c 1.10 2008/02/16 14:46:31 kls Exp $
+ * $Id: status.c 2.0 2008/02/16 14:46:31 kls Exp $
*/
#include "status.h"
diff --git a/status.h b/status.h
index b6c4d8b..d05ec18 100644
--- a/status.h
+++ b/status.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: status.h 1.12 2008/02/16 15:00:33 kls Exp $
+ * $Id: status.h 2.0 2008/02/16 15:00:33 kls Exp $
*/
#ifndef __STATUS_H
diff --git a/summary2info.pl b/summary2info.pl
index 15300e5..6976024 100755
--- a/summary2info.pl
+++ b/summary2info.pl
@@ -10,7 +10,7 @@
# See the main source file 'vdr.c' for copyright information and
# how to reach the author.
#
-# $Id: summary2info.pl 1.6 2006/04/17 12:19:24 kls Exp $
+# $Id: summary2info.pl 2.0 2006/04/17 12:19:24 kls Exp $
$VideoDir = $ARGV[0] || die "please provide the name of the video directory\n";
diff --git a/svdrp.c b/svdrp.c
index 4317535..b69485e 100644
--- a/svdrp.c
+++ b/svdrp.c
@@ -10,7 +10,7 @@
* and interact with the Video Disk Recorder - or write a full featured
* graphical interface that sits on top of an SVDRP connection.
*
- * $Id: svdrp.c 1.109 2008/02/17 13:36:01 kls Exp $
+ * $Id: svdrp.c 2.0 2008/02/17 13:36:01 kls Exp $
*/
#include "svdrp.h"
diff --git a/svdrp.h b/svdrp.h
index deee42c..9f726ed 100644
--- a/svdrp.h
+++ b/svdrp.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: svdrp.h 1.29 2007/04/30 12:28:28 kls Exp $
+ * $Id: svdrp.h 2.0 2007/04/30 12:28:28 kls Exp $
*/
#ifndef __SVDRP_H
diff --git a/themes.c b/themes.c
index e6ee87e..451fb8b 100644
--- a/themes.c
+++ b/themes.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: themes.c 1.8 2008/02/10 16:25:00 kls Exp $
+ * $Id: themes.c 2.0 2008/02/10 16:25:00 kls Exp $
*/
#include "themes.h"
diff --git a/themes.h b/themes.h
index 5624293..3563bb0 100644
--- a/themes.h
+++ b/themes.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: themes.h 1.2 2007/08/05 14:10:22 kls Exp $
+ * $Id: themes.h 2.0 2007/08/05 14:10:22 kls Exp $
*/
#ifndef __THEMES_H
diff --git a/thread.c b/thread.c
index 2d84918..0c3b4f5 100644
--- a/thread.c
+++ b/thread.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: thread.c 1.64 2008/02/15 14:17:42 kls Exp $
+ * $Id: thread.c 2.1 2008/04/13 11:53:56 kls Exp $
*/
#include "thread.h"
@@ -17,6 +17,7 @@
#include <sys/syscall.h>
#include <sys/time.h>
#include <sys/wait.h>
+#include <sys/prctl.h>
#include <unistd.h>
#include "tools.h"
@@ -239,8 +240,13 @@ void cThread::SetDescription(const char *Description, ...)
void *cThread::StartThread(cThread *Thread)
{
Thread->childThreadId = ThreadId();
- if (Thread->description)
+ if (Thread->description) {
dsyslog("%s thread started (pid=%d, tid=%d)", Thread->description, getpid(), Thread->childThreadId);
+#ifdef PR_SET_NAME
+ if (prctl(PR_SET_NAME, Thread->description, 0, 0, 0) < 0)
+ esyslog("%s thread naming failed (pid=%d, tid=%d)", Thread->description, getpid(), Thread->childThreadId);
+#endif
+ }
Thread->Action();
if (Thread->description)
dsyslog("%s thread ended (pid=%d, tid=%d)", Thread->description, getpid(), Thread->childThreadId);
diff --git a/thread.h b/thread.h
index 6eaa79a..25a0b8b 100644
--- a/thread.h
+++ b/thread.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: thread.h 1.39 2007/02/24 16:13:28 kls Exp $
+ * $Id: thread.h 2.0 2007/02/24 16:13:28 kls Exp $
*/
#ifndef __THREAD_H
diff --git a/timers.c b/timers.c
index c76511e..b963dee 100644
--- a/timers.c
+++ b/timers.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: timers.c 1.73 2008/02/16 14:47:40 kls Exp $
+ * $Id: timers.c 2.1 2008/04/13 12:41:41 kls Exp $
*/
#include "timers.h"
@@ -92,6 +92,7 @@ cTimer::cTimer(const cTimer &Timer)
channel = NULL;
aux = NULL;
event = NULL;
+ flags = tfNone;
*this = Timer;
}
diff --git a/timers.h b/timers.h
index a18f9f8..8f67add 100644
--- a/timers.h
+++ b/timers.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: timers.h 1.31 2008/02/16 14:33:23 kls Exp $
+ * $Id: timers.h 2.0 2008/02/16 14:33:23 kls Exp $
*/
#ifndef __TIMERS_H
diff --git a/tools.c b/tools.c
index 70ccb0e..bf0ac0f 100644
--- a/tools.c
+++ b/tools.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: tools.c 1.145 2008/03/05 17:23:47 kls Exp $
+ * $Id: tools.c 2.0 2008/03/05 17:23:47 kls Exp $
*/
#include "tools.h"
diff --git a/tools.h b/tools.h
index 6a10774..dd98840 100644
--- a/tools.h
+++ b/tools.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: tools.h 1.113 2008/02/17 13:41:27 kls Exp $
+ * $Id: tools.h 2.0 2008/02/17 13:41:27 kls Exp $
*/
#ifndef __TOOLS_H
diff --git a/transfer.c b/transfer.c
index 79efab5..04d88a1 100644
--- a/transfer.c
+++ b/transfer.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: transfer.c 1.34 2007/01/05 10:45:28 kls Exp $
+ * $Id: transfer.c 2.0 2007/01/05 10:45:28 kls Exp $
*/
#include "transfer.h"
diff --git a/transfer.h b/transfer.h
index c891808..dd6d404 100644
--- a/transfer.h
+++ b/transfer.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: transfer.h 1.12 2007/01/05 10:45:45 kls Exp $
+ * $Id: transfer.h 2.0 2007/01/05 10:45:45 kls Exp $
*/
#ifndef __TRANSFER_H
diff --git a/vdr.1 b/vdr.1
index 8510610..f5ffb9d 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 1.33 2008/03/09 16:07:06 kls Exp $
+.\" $Id: vdr.1 2.0 2008/03/09 16:07:06 kls Exp $
.\"
.TH vdr 1 "10 Feb 2008" "1.6" "Video Disk Recorder"
.SH NAME
diff --git a/vdr.5 b/vdr.5
index 56dd48d..6f35e86 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 1.68 2008/03/09 15:46:57 kls Exp $
+.\" $Id: vdr.5 2.1 2008/04/12 10:46:32 kls Exp $
.\"
.TH vdr 5 "10 Feb 2008" "1.6" "Video Disk Recorder Files"
.SH NAME
@@ -83,19 +83,23 @@ meaning (and allowed values) are
.TS
tab (@);
l l.
-\fBB\fR@Bandwidth (6, 7, 8)
-\fBC\fR@Code rate high priority (0, 12, 23, 34, 45, 56, 67, 78, 89)
-\fBD\fR@Code rate low priority (0, 12, 23, 34, 45, 56, 67, 78, 89)
+\fBA\fR@Alpha (0, 1, 2, 4)
+\fBB\fR@Bandwidth (5, 6, 7, 8)
+\fBC\fR@Code rate high priority (0, 12, 13, 14, 23, 25, 34, 35, 45, 56, 67, 78, 89, 910)
+\fBD\fR@coDe rate low priority (0, 12, 13, 14, 23, 25, 34, 35, 45, 56, 67, 78, 89, 910)
\fBG\fR@Guard interval (4, 8, 16, 32)
\fBH\fR@Horizontal polarization
\fBI\fR@Inversion (0, 1)
\fBL\fR@Left circular polarization
-\fBM\fR@Modulation (0, 16, 32, 64, 128, 256)
+\fBM\fR@Modulation (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 16, 32, 64, 128, 256, 512, 998, 1024)
+\fBO\fR@rollOff (0, 20, 25, 35)
+\fBP\fR@Priority (0, 1)
\fBR\fR@Right circular polarization
-\fBT\fR@Transmission mode (2, 8)
+\fBT\fR@Transmission mode (2, 4, 8)
\fBV\fR@Vertical polarization
-\fBY\fR@Hierarchy (0, 1, 2, 4)
+\fBY\fR@hierarchY (0, 1)
.TE
+
The polarization parameters have no integer numbers following them. This is for
compatibility with files from older versions and also to keep the DVB-S entries
as simple as possible.
diff --git a/vdr.c b/vdr.c
index 5ea62d6..aafb0e6 100644
--- a/vdr.c
+++ b/vdr.c
@@ -22,7 +22,7 @@
*
* The project's page is at http://www.cadsoft.de/vdr
*
- * $Id: vdr.c 1.313 2008/03/14 13:22:39 kls Exp $
+ * $Id: vdr.c 2.0 2008/03/14 13:22:39 kls Exp $
*/
#include <getopt.h>
diff --git a/videodir.c b/videodir.c
index e61e3cb..7331a85 100644
--- a/videodir.c
+++ b/videodir.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: videodir.c 1.15 2008/02/16 13:00:03 kls Exp $
+ * $Id: videodir.c 2.0 2008/02/16 13:00:03 kls Exp $
*/
#include "videodir.h"
diff --git a/videodir.h b/videodir.h
index 253e07b..5e9aef5 100644
--- a/videodir.h
+++ b/videodir.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: videodir.h 1.7 2008/02/16 12:53:11 kls Exp $
+ * $Id: videodir.h 2.0 2008/02/16 12:53:11 kls Exp $
*/
#ifndef __VIDEODIR_H