Month: January 2008

Problems converting back to the RadioTimes grabber – solved

Posted on Updated on

I used to use the excellent RadioTimes XML data with the XMLTV grabber to get my listings for MythTV. When the RadioTimes data was a little slow in coming over Christmas and New Year, I gave the EIT listings data a try.

The EIT data (pulling the programme listings from out of the DVB signal) mostly worked, but I think my little argos indoor aerial is not quite reliable enough. I kept getting
Started PESPacket, but !payloadStart()
Error: offset>181, pes length & current can not be queried

and then the backend would crash. I can only assume that my DVB stream is too full of errors. I hope to get a proper loft aerial sometime, but generally recordings are “good enough” (as long as it’s not too windy).

The EIT grabber had run long enough to get a weeks worth of data, so I thought I’d turn it off and wait for the RT site to come back online. A few days later the wonderful people at the RT had their side all sorted, and I was in a position to re-instate the RT grabber. However, when I went back into mythtv-setup, XMLTV was not listed as an option when setting up the source. The mythtv-setup app would just spit out errors saying Failed to run tv_find_grabbers

Since I had it running in the past, I knew it worked, but I had upgraded Fedora and MythTV since I had set up Myth, so maybe that script is missing from my machine, and I had not noticed.

I started out by re-running tv_grab_uk_rt --configure as per the Myth XMLTV page, and that did what it was supposed to do. Then I ran a test tv_grab_uk_rt --config-file ~/.mythtv/Freeview.xmltv --output /tmp/freeview.xml and it pulled down the listings correctly and dumped them into the xml file. So I ran mythfilldatabase again, and it still did nothing much. Therefore, the xmltv grabber must need to be configured in the database somewhere.

I had a look in the database, and found the following line
mysql> select * from videosource\G
*************************** 1. row ***************************
sourceid: 1
name: Freeview
xmltvgrabber: /bin/true
freqtable: default
lineupid: NULL
password: NULL
useeit: 0
1 row in set (0.00 sec)

This looked promising, so I changed it to ‘/usr/bin/tv_grab_uk_rt’ and ran mythfilldatabase. However, it would complain that I was calling the grabber wrongly and the error was something like “You may need to upgrade your xmltv grabber”.

Then I changed it to just ‘tv_grab_uk_rt’ (because reading this post hinted at the fact that it might be hardcoded to the name, not the path) and it all started working again. Yey!

Don’t forget to check that all the channels are configured with the XMLTV IDs in the channel table, by looking at the Channel Info page in MythWeb (mine had all disappeared as part of the EIT change), and that your source has a corresponding xmltv file in ~/.mythtv/<sourcename>.xmltv