[ANNOUNCE] VDR developer version 1.7.22

Message ID 4EDE5405.9080009@tvdr.de
State New
Headers

Commit Message

Klaus Schmidinger Dec. 6, 2011, 5:42 p.m. UTC
  On 05.12.2011 20:42, Detlef Heine wrote:
>> - The new setup options "LNB/Device n connected to sat cable" can be
>> used to define
>> which DVB-S devices are connected to the same sat cable and are
>> therefore "bonded".
>> This obsoletes the LNBSHARE patch. Users of the LNBSHARE patch will need
>> to newly
>> set up their sat devices with the above options.
>
> Hello Klaus,
> I have much trouble with the new added Feature from above.
> My vdr have a S2-6400 card and 1 cable with an splitter for the 2 frondends.
> I have set up the options correctly. But, specifically on Pro7, the picture and sound freeze after some seconds. The vdr-log show in this moment lines like this:
>
> Dec 5 19:24:31 hd-vdr vdr: [1628] changing pids of channel 1435 from 511+511=2:512=deu@3;515=deu@106:0:32 to 511+511=2:512=deu@3,513=eng@3;515=deu@106:0:32
> Dec 5 19:24:31 hd-vdr vdr: [1628] changing pids of channel 1440 from 2815+2815=2:2816=deu@3;2819=deu@106:0:32 to 2815+2815=2:2816=deu@3,2817=eng@3;2819=deu@106:0:32
> Dec 5 19:24:51 hd-vdr vdr: [1628] changing pids of channel 1512 from 767+767=27:0;771=deu@106,772=eng@106:0:32 to 767+767=27:0;771=deu@106,772=eng@106:0:32
> Dec 5 19:24:51 hd-vdr vdr: [1628] changing pids of channel 1513 from 1023+1023=27:0;1027=deu@106:0:32 to 1023+1023=27:0;1027=deu@106:0:32
> Dec 5 19:24:52 hd-vdr vdr: [1628] changing pids of channel 1514 from 1279+1279=27:0;1283=deu@106:0:32 to 1279+1279=27:0;1283=deu@106:0:32
> Dec 5 19:24:52 hd-vdr vdr: [1628] changing pids of channel 1511 from 511+511=27:0;515=deu@106,516=eng@106:0:32 to 511+511=27:0;515=deu@106,516=eng@106:0:32
> Dec 5 19:25:12 hd-vdr vdr: [1628] changing pids of channel 1444 from 767+767=27:0;771=deu@106,772=eng@106:0:32 to 767+767=27:0;771=deu@106,772=eng@106:0:32
> Dec 5 19:25:12 hd-vdr vdr: [1628] changing pids of channel 1442 from 1023+1023=27:0;1027=deu@106:0:32 to 1023+1023=27:0;1027=deu@106:0:32
> Dec 5 19:25:13 hd-vdr vdr: [1628] changing pids of channel 1441 from 1279+1279=27:0;1283=deu@106:0:32 to 1279+1279=27:0;1283=deu@106,1284=eng@106:0:32
> Dec 5 19:25:13 hd-vdr vdr: [1628] changing pids of channel 1443 from 1535+1535=27:0;1539=deu@106:0:32 to 1535+1535=27:0;1539=deu@106:0:32
>
> With the LNBSHARE patch and vdr-1.7.21 I had no problems like this.
>
> How can I fix this?

Do you have only two deivces that share a cable, or is there
a third one? There is a bug with more than two devices that
share one cable.

Please try this:


Klaus
  

Comments

Detlef Heine Dec. 7, 2011, 6:51 p.m. UTC | #1
Am 06.12.2011 18:42, schrieb Klaus Schmidinger:
>
> Do you have only two deivces that share a cable, or is there
> a third one? There is a bug with more than two devices that
> share one cable.
>
> Please try this:
>
> --- dvbdevice.c 2011/12/03 15:24:27 2.48
> +++ dvbdevice.c 2011/12/06 17:38:18
> @@ -1126,7 +1126,7 @@
> if (cDevice *Device2 = cDevice::GetDevice(d)) {
> if (cDvbDevice *DvbDevice1 = dynamic_cast<cDvbDevice *>(Device1)) {
> if (cDvbDevice *DvbDevice2 = dynamic_cast<cDvbDevice *>(Device2)) {
> - if (!DvbDevice2->Bond(DvbDevice1))
> + if (!DvbDevice1->Bond(DvbDevice2))
> return false; // Bond() has already logged the error
> }
> else
>
> Klaus
>
> _______________________________________________
> vdr mailing list
> vdr@linuxtv.org
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
>

It´s the same. But I think the "3rd device" is the problem. I had used a 
very ugly plugin. Without this plugin everything is OK.
Thank you for your quick response.

Detlef.
  

Patch

--- dvbdevice.c 2011/12/03 15:24:27     2.48
+++ dvbdevice.c 2011/12/06 17:38:18
@@ -1126,7 +1126,7 @@ 
                 if (cDevice *Device2 = cDevice::GetDevice(d)) {
                    if (cDvbDevice *DvbDevice1 = dynamic_cast<cDvbDevice *>(Device1)) {
                       if (cDvbDevice *DvbDevice2 = dynamic_cast<cDvbDevice *>(Device2)) {
-                        if (!DvbDevice2->Bond(DvbDevice1))
+                        if (!DvbDevice1->Bond(DvbDevice2))
                             return false; // Bond() has already logged the error
                          }
                       else