[ANNOUNCE] DVB-S2 + H.264 support for VDR-1.5.16

Message ID 47D45976.3040802@gmx.de
State New
Headers

Commit Message

Reinhard Nissl March 9, 2008, 9:41 p.m. UTC
  Hi,

Reinhard Nissl schrieb:

> attached you'll find updated patches for VDR-1.5.16.
> 
> The patch named *-dvbs2-* additionally adds DVB-S2 support to VDR
> (based on VDR-1.5.14) and requires to use the DVB drivers
> from the multi-proto tree (see URL below for further details).
> 
> The other patch is without DVB-S2 support and therefore most
> suitable for DVB-C users.
> 
> VDR-1.5.14 reported changes to transponder data incorrectly. The
> attached dvbs2 patch contains a fix for this issue by introducing
> TransponderDataToString().

The attached addon patch addresses the introduction of the
SET_DELSYS ioctl in the current multiproto tree.

> Have a look at this page for more instructions on this concern:
> 
> http://www.vdr-wiki.de/wiki/index.php/OpenSUSE_VDR_DVB-S2_-_xine

Bye.
  

Patch

--- ../vdr-1.5.16-dvbs2-other-rotor/dvbdevice.c	2008-02-24 20:52:50.000000000 +0100
+++ dvbdevice.c	2008-03-09 15:26:40.000000000 +0100
@@ -281,10 +281,6 @@  bool cDvbTuner::SetFrontend(void)
 
      tuneTimeout = DVBS_TUNE_TIMEOUT;
      lockTimeout = DVBS_LOCK_TIMEOUT;
-
-     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;
@@ -296,10 +292,6 @@  bool cDvbTuner::SetFrontend(void)
 
      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;
@@ -317,15 +309,12 @@  bool cDvbTuner::SetFrontend(void)
 
      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;
      }
+  CHECK(ioctl(fd_frontend, DVBFE_SET_DELSYS, &Frontend.delivery)); //switch system
   if (ioctl(fd_frontend, DVBFE_SET_PARAMS, &Frontend) < 0) {
      esyslog("ERROR: frontend %d: %m", cardIndex);
      return false;