On 21/09/05, Neil <[EMAIL PROTECTED]> wrote: > Hi Nick, > > many thanks for the offer of help - its much appreciated! > > As you'll see, I've attached a few files; chanidents & channels.conf are > self explanatory. channel.txt is the output from a SELECT * INTO OUTFILE > 'channel.txt' FROM channel statement, and channel.dmp is a mysqldump of > the table. I included both as I didn't know what would be easier for you > to look at.
Neil, I enclose an annotated description of how I use tv_grab_dvb (sorry if it's a bit tedious, might be useful for others), and what I think you should try in order to get things working (first thing is probably to clear out your channels table because you seem to have 4 copies of everything). PART ONE ======== First thing - let me run through the way I use tv_grab_dvb and mythfilldatabase (and how it gets the info into the database: i) My chanidents file (for Sutton Coldfield, edited for radio only): 14336 radio-1.bbc.co.uk 14400 radio-2.bbc.co.uk 14464 radio-3.bbc.co.uk 14528 fm.radio-4.bbc.co.uk 17920 radio-5.bbc.co.uk 17984 sportsextra.radio-5.bbc.co.uk 18048 6music.bbc.co.uk 18112 bbc7.bbc.co.uk 18176 1xtra.bbc.co.uk Note the number and the XMLTV ID. The number (Service ID?) is used in conjunction with the chanidents file below, and the XMLTV ID is used to match the data against the channels in my mythconverg database. In effect, this file bridges between the DVB channel/EPG data and the mythconverg database. ii) My edited channels.conf file: BBC Radio 1:658166670:INVERSION_OFF:BANDWIDTH_8_MHZ:FEC_2_3:FEC_1_2:QAM_64:TRANSMISSION_MODE_2K:GUARD_INTERVAL_1_32:HIERARCHY_NONE:0:6210:14336 BBC Radio 2:658166670:INVERSION_OFF:BANDWIDTH_8_MHZ:FEC_2_3:FEC_1_2:QAM_64:TRANSMISSION_MODE_2K:GUARD_INTERVAL_1_32:HIERARCHY_NONE:0:6226:14400 BBC Radio 3:658166670:INVERSION_OFF:BANDWIDTH_8_MHZ:FEC_2_3:FEC_1_2:QAM_64:TRANSMISSION_MODE_2K:GUARD_INTERVAL_1_32:HIERARCHY_NONE:0:6242:14464 BBC Radio 4:658166670:INVERSION_OFF:BANDWIDTH_8_MHZ:FEC_2_3:FEC_1_2:QAM_64:TRANSMISSION_MODE_2K:GUARD_INTERVAL_1_32:HIERARCHY_NONE:0:6258:14528 BBC R5 Live:714166670:INVERSION_OFF:BANDWIDTH_8_MHZ:FEC_3_4:FEC_3_4:QAM_16:TRANSMISSION_MODE_2K:GUARD_INTERVAL_1_32:HIERARCHY_NONE:0:430:17920 BBC 5L SportsX:714166670:INVERSION_OFF:BANDWIDTH_8_MHZ:FEC_3_4:FEC_3_4:QAM_16:TRANSMISSION_MODE_2K:GUARD_INTERVAL_1_32:HIERARCHY_NONE:0:431:17984 BBC 6 Music:714166670:INVERSION_OFF:BANDWIDTH_8_MHZ:FEC_3_4:FEC_3_4:QAM_16:TRANSMISSION_MODE_2K:GUARD_INTERVAL_1_32:HIERARCHY_NONE:0:432:18048 1Xtra BBC:714166670:INVERSION_OFF:BANDWIDTH_8_MHZ:FEC_3_4:FEC_3_4:QAM_16:TRANSMISSION_MODE_2K:GUARD_INTERVAL_1_32:HIERARCHY_NONE:0:434:18176 BBC 7:714166670:INVERSION_OFF:BANDWIDTH_8_MHZ:FEC_3_4:FEC_3_4:QAM_16:TRANSMISSION_MODE_2K:GUARD_INTERVAL_1_32:HIERARCHY_NONE:0:433:18112 As you can see, the final data value for each entry in channels.conf matches with one of the entries in my chanidents file. iii) In order that MFDB can run successfully, I ensure that there is only 1 copy of each channel per sourceid, and that it has the correct XMLTV ID (so that it matches those in the chanidents file). I found it much quicker to edit the DB directly using phpMyAdmin to ensure the channels were setup properly. I use XMLTV IDs only in my MythTV setups because the other grabber I use also uses these. iv) My radio listings grabber script: #!/bin/bash { /home/mythtv/tv_grab_dvb/tv_grab_dvb -c -t 30 -s > /home/mythtv/.mythtv/radio.xml /usr/bin/mythfilldatabase --update --file 1 -1 /home/mythtv/.mythtv/radio.xml /usr/bin/mythfilldatabase --update --file 3 -1 /home/mythtv/.mythtv/radio.xml sleep 3 rm -f /home/mythtv/.mythtv/radio.xml } >/dev/null 2>&1 This script runs tv_grab_dvb with the following options: -c to use Channel Identifiers from file 'chanidents' - the means the XMLTV IDs are used in the XML output file -t 30 to use a timeout of 30s -s to run silently (even though I send output to /dev/null Mythfilldatabase (MFDB) then runs to populate the program info on 2 different sources (in my case my DVB channels (sourceid=1) and my NTL channels(sourceid=3)). v) I have an entry in my crontab to run the script daily to ensure program data is up to date. PART TWO ======== What (I think) you should do: i) Remove your channels from the DB and rescan, making sure there is only one of each listed. Perhaps rerun mythtvsetup and answer yes to both questions at the start to start afresh. ii) Associate the XMLTV ID with each channel you want listings for. iii) Edit your chanidents file so that it contains the correct service IDs and XMLTV IDs. iv) Run tv_grab_dvb to generate an XML file (I manually edited the source for tv_grab_dvb to hardcode the location of the two files it needs - chanidents and channels.conf - as this can cause problems in scripts) v) Run mythfilldatabase on the XML file to import the listings. vi) Let me know how you got on. It's entirely possible to use the dvb.guide IDs instead, and this should work in exactly the same way as the XMLTV IDs. I choose to use the XMLTV IDs so that I can easily switch grabbers if I need to. HTH, Nick _______________________________________________ mythtv-users mailing list mythtv-users@mythtv.org http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-users