[ANNOUNCE] vdr-femon-1.7.7 vdr-iptv-0.4.0 vdr-skinsoppalusikka-1.7.1 vdr-rssreader-1.7.0
Commit Message
On 08.03.2010 04:22, ????????? ?????? wrote:
> Hi
>
>> IPTV doesn't need patches anymore.
> Fine :)
>
> But I have another trouble.
>
> create channel
> RENTV;IPTV:10:S=1|P=1|F=UDP|U=239.4.0.1|A=2020:I:27500:300=2:301:0:0:1:0:0:0
>
>
> Start vdr and select it, works fine.
> Change to sat channel, and select iptv again
>
> The channel can't selected, in log:
>
> Mar 8 12:57:57 ua0lnjvdr vdr: [6823] ERROR: Invalid channel parameters:
> S=1
> Mar 8 12:57:57 ua0lnjvdr vdr: [6823] ERROR: Unrecognized IPTV address: S=1
> Mar 8 12:57:57 ua0lnjvdr vdr: [6823] ERROR: Can't start Transfer Mode!
>
> After this, in channels.conf have:
>
> RENTV;IPTV:10:S=1:I:27500:300=2:301:0:0:1:0:0:0
>
> I found also http://www.vdr-portal.de/board/thread.php?threadid=94442
>
> Any suggestions?
Not sure if this applies here, but there was a bug in VDR 1.7.13's
channel editing in cDvbSourceParam.
The attached patch fixes this.
Klaus
Comments
On Fri, 12 Mar 2010, Klaus Schmidinger wrote:
> Not sure if this applies here, but there was a bug in VDR 1.7.13's
> channel editing in cDvbSourceParam.
Well, there were bugs also in the plugin, but those should already be
fixed in 0.4.1.
BR,
--
rofa
@@ -576,7 +576,7 @@
class cDvbSourceParam : public cSourceParam {
private:
int param;
- cChannel data;
+ int srate;
cDvbTransponderParameters dtp;
public:
cDvbSourceParam(char Source, const char *Description);
@@ -589,19 +589,19 @@
:cSourceParam(Source, Description)
{
param = 0;
+ srate = 0;
}
void cDvbSourceParam::SetData(cChannel *Channel)
{
- data = *Channel;
- dtp.Parse(data.Parameters());
+ srate = Channel->Srate();
+ dtp.Parse(Channel->Parameters());
param = 0;
}
void cDvbSourceParam::GetData(cChannel *Channel)
{
- data.SetTransponderData(Channel->Source(), Channel->Frequency(), data.Srate(), dtp.ToString(Source()), true);
- *Channel = data;
+ Channel->SetTransponderData(Channel->Source(), Channel->Frequency(), srate, dtp.ToString(Source()), true);
}
cOsdItem *cDvbSourceParam::GetOsdItem(void)
@@ -612,7 +612,7 @@
switch (param++) {
case 0: ST(" S ") return new cMenuEditChrItem( tr("Polarization"), &dtp.polarization, "hvlr"); else return GetOsdItem();
case 1: ST(" S ") return new cMenuEditMapItem( tr("System"), &dtp.system, SystemValues); else return GetOsdItem();
- case 2: ST(" CS ") return new cMenuEditIntItem( tr("Srate"), &data.srate); else return GetOsdItem();
+ case 2: ST(" CS ") return new cMenuEditIntItem( tr("Srate"), &srate); else return GetOsdItem();
case 3: ST("ACST") return new cMenuEditMapItem( tr("Inversion"), &dtp.inversion, InversionValues); else return GetOsdItem();
case 4: ST(" CST") return new cMenuEditMapItem( tr("CoderateH"), &dtp.coderateH, CoderateValues); else return GetOsdItem();
case 5: ST(" T") return new cMenuEditMapItem( tr("CoderateL"), &dtp.coderateL, CoderateValues); else return GetOsdItem();