Hi - I've been using xmltv2vdr for years. It's great!
I'm now getting my xml EPG from a different source, and am having problems getting the perl script to run properly. My perl knowledge is poor (to say the least!!)
The problem is, the epg xml I'm getting has the "channel=" at the wrong end of the "<programme" sequence.
So instead of: <programme start="20070412060000 +1200" stop="20070412061000 +1200" channel="1031.dvb.guide">
it has : <programme channel="1031.dvb.guide" start="20070412060000 +1200" stop="20070412061000 +1200">
This results in the wrong SVRDP messages being produced.
I get: CLRE PUTE C C-0-112250-1796 TV1-Cable E 0 0 1176231600 0 T Breakfast D Breakfast e c .
so no program ID# and the start/duration is broken.
I've tested this by manually changing a programme sequence in the xml, moving the "channel=" to the end - and it works fine. CLRE PUTE C C-0-112250-1796 TV1-Cable E 8895 1176231600 7200 0 T Breakfast D Breakfast e c . QUIT
Can anyone help me??
Thanks heaps!!!
Simon
I'm now getting my xml EPG from a different source, and am having problems getting the perl script to run properly. My perl knowledge is poor (to say the least!!)
The problem is, the epg xml I'm getting has the "channel=" at the wrong end of the "<programme" sequence.
So instead of: <programme start="20070412060000 +1200" stop="20070412061000 +1200" channel="1031.dvb.guide">
it has : <programme channel="1031.dvb.guide" start="20070412060000 +1200" stop="20070412061000 +1200">
DONE: --- xmltv2vdr.pl 2006-08-17 04:35:33.000000000 +1200 +++ xmltv2vdr_SBB.pl 2007-04-11 14:16:14.000000000 +1200 @@ -187,7 +187,7 @@ if ( ($xmlline =~ /<programme/ ) && ( $xmlline =~ /"$xmltv_channel_name/ ) && ( $xmlline !~ /clumpidx="1/2"/ ) && ( $chanevent == 0 ) ) { $chanevent = 1; - ( $null, $xmlst, $null, $xmlet, @null ) = split(/"/, $xmlline); + ( $null, $null, $null, $xmlst, $null, $xmlet, @null ) = split(/"/, $xmlline); $vdrst = &xmltime2vdr($xmlst, $adjust); $vdret = &xmltime2vdr($xmlet, $adjust); $vdrdur = $vdret - $vdrst;
amazing what happens when you stare at a piece of code long enough... :P
On 4/11/07, Simon Baxter linuxtv@nzbaxters.com wrote:
I'm now getting my xml EPG from a different source, and am having problems getting the perl script to run properly. My perl knowledge is poor (to say the least!!)
The problem is, the epg xml I'm getting has the "channel=" at the wrong end of the "<programme" sequence.
So instead of: <programme start="20070412060000 +1200" stop="20070412061000 +1200" channel="1031.dvb.guide">
it has : <programme channel="1031.dvb.guide" start="20070412060000 +1200" stop="20070412061000 +1200">
DONE: --- xmltv2vdr.pl 2006-08-17 04:35:33.000000000 +1200 +++ xmltv2vdr_SBB.pl 2007-04-11 14:16:14.000000000 +1200 @@ -187,7 +187,7 @@ if ( ($xmlline =~ /<programme/ ) && ( $xmlline =~ /"$xmltv_channel_name/ ) && ( $xmlline !~ /clumpidx="1/2"/ ) && ( $chanevent == 0 ) ) { $chanevent = 1;
( $null, $xmlst, $null, $xmlet, @null ) = split(/\"/, $xmlline);
( $null, $null, $null, $xmlst, $null, $xmlet, @null ) =
split(/"/, $xmlline); $vdrst = &xmltime2vdr($xmlst, $adjust); $vdret = &xmltime2vdr($xmlet, $adjust); $vdrdur = $vdret - $vdrst;
amazing what happens when you stare at a piece of code long enough... :P
vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Hi,
The latest version of my modifications to xmltv2vdr should work too (it should not care about the position of channel). Maybe you can test it a little so I can bug a little Morfsta to make it a proper 1.0.7 release.
Thanks in advance.