Despite a few rearrangements of the channels on our local transmitter I’ve been putting off rescanning the channels for some time as last time I tried it broke things horribly. Nothing was due to record for a few hours yesterday evening though, so I screwed my courage to the sticking place and waded in.
First step was up upgrade all the XMLTV stuff on the backend. I took a backup copy of /usr/share/xmltv/tv_grab_uk_rt/channel_ids
before starting so I could get some idea of what had changed. I’m running a CentOS5 box for the backend, so the upgrade was just a case of:
yum update '*xmltv*'
The differences between the two channel_ids files were enormous, so at this point I was starting to get apprehensive. To update XMLTV’s idea of what channels it could use I needed to add all the new channels to its config file (for me, in ~mythtv/.mythtv/Freeview.xmltv
). As there were so many changes I basically did:
sed -e '/^#/d' -e 's/|.*$//' -e 's/^/channel /' < channel_ids > Freeview.xmltv
(after saving my old copy, obviously).
That done, I shut down mythbackend and backed up the mythconverg database. At least I should be able to recover if it all went chest uppermost…
Next I ran mythtv-setup on the backend server and selected the “channel editor” option so I could do a full rescan for channels. That worked fine, but gave me a large list of duplicate channels. I chose to drop them all. Also in the channel editor I updated all of the icons.
After downloading the missing icons I quit mythtv-setup, restarted the backend and checked to see if the existing listings and recordings looked correct using mythweb. They did, so I did a manual run of mythfilldatabase to check the update worked without problems.
Returning to mythweb’s setup interface, I then disabled EIT data for all those channels that XMLTV could find and disabled and/or deleted dross such as QVC. I also needed to add a few missing XMLTV ids for channels that XMLTV did have configuration data for.
And that was it. All astonishingly painless and not a recording missed. Next time I won’t put it off for so long…