Using XMLTV with EyeTV
I bought an Elgato EyeTV Hybrid a while back, and I was using the tvtv.co.uk service to get my EPG(Electronic Program Guide) data.
This, however, and unfortunately, stopped updating for Belgian channels on the 1st of january. Shitty, since I use that data to have EyeTV automatically record stuff for me. I’ve contacted tvtv, no reaction sofar.
Since the EyeTV has no other built-in EPG data supplier that I can use, I looked for an XMLTV grabber for Belgium. The grabbers that existed unfortunately didn’t work anymore because they depend on the Teveblad.be website, which no longer allows screenscrapers. Bummer.
Fortunately, thanks to the magical interwebs, I stumbled on mc2xml, a Media Center TV Listings to XMLTV convertor. It downloads media center, titantv, or schedules direct tv listings and outputs an XMLTV formatted xml file, which I can feed to EyeTV. And now I have my schedule info again! ;)
Tags: eyetv, Mac OS, mc2xml, pvr, tvtv, xmltv
March 7th, 2009 at 13:34
Thanks for the article. I got one big question: how do you update this XML file? Manually? If I write a script that updates XML file automatically, will this propagate into EyeTV directly or do I need to drag the file into EyeTV every time?
March 7th, 2009 at 15:01
No, I use a script that is launched every day at 8pm, via crontab. I’ve scheduled my mac to wake up at that time if it isn’t (normally the news is being recorded), and it automatically loads it into EyeTV.
The script I use is:
#!/bin/bashMC2XML="/Users/<name>/scripts/mc2xml"
XMLTV="/Users/<name>/scripts/xmltv.xml"
# Check if we have internet connection
ping -q -c 1 -t 5 google.com > /dev/null
if [ $? -eq 0 ]; then
# Get new shedule
$MC2XML -F -c be
# Reload EyeTV with the file
open -a EyeTV $XMLTV
fi
The ‘open -a’ will cause EyeTV to load the XML File.
March 7th, 2009 at 23:42
Thanks. That’s just what I needed. I was just about to write a similar script myself, but this works just fine. Got any other EyeTV tips/tricks?
March 8th, 2009 at 19:33
Not really. I search as I need it ;)
August 7th, 2009 at 13:54
I was very surprised and pleased to find the mc2xml program – I had no idea it existed. Normally I have been working hard trying to the xml-tv grabbers working. But this is much easier – and a lot faster as well.
Thanks for mentioning it.
October 4th, 2009 at 01:37
What is the oldest version of eyeTV this wil work with? I have had an eyeTV since 2005 and am running version 2.5.1
October 4th, 2009 at 11:53
I’m afraid you need atleast EyeTV 3.0.1 to be able to use XMLTV files.
December 31st, 2009 at 21:50
Jan, I need your help.
Can you send me an example xml file to have a look ?
I have created manually an xml / xmltv file for one channel and 2-3 programmes.
I import succesfully at EyETV and map the channel to xml and the channel within the file.
But still my guide is empty. Not used by any channel EyeTV says.
Any ideas ?
January 2nd, 2010 at 11:37
I’ve mailed you an xmltv file. Also, you need to manually map the channels in EyeTV, if you go to channels, you have to select XMLTV in the EPG dropdown box and select the correct channel.
January 18th, 2010 at 03:20
Hello Thank you for sharing this info if I can get this to work I am going to be very happy.
Sorry for the noob question but I download mc2xml save it
then in terminal I try to run it
$MC2XML -c us -g 08540
-bash: -c: command not found
running osx 10.6.2
any help would be appreciated
thanks you
January 18th, 2010 at 09:35
$MC2XML is a variable which (should) point to the mc2xml binary. But in this case you can just use ./mc2xml instead of $MC2XML.
January 18th, 2010 at 14:40
Sweet got it man, actually overlooked the chmod 755 mc2xml (since I am using the -c and -g switches)
working great
thanks again
January 18th, 2010 at 22:39
ok I might have spoke too soon..mc2xmlis working great I can complete all the step manually and add the xmltv file to eyetv and map my listing to my providers clear qam channels.
The issue is my coding skills
since I am in the US I have to issue the command
./mc2xml -c us -g 08540
it them prompts me to make a selection as to which listing I want to download .
I have to choose Princeton Comcast (digital) # 25
it then downloads the listing and then I can issue the command
open -s EyeTV ~/Scripts/xmltv.xml
The problem is I dont know how to code the part when it prompts you for a listing selection
I would like to grep for “Princeton Comcast (Digital)” then take the # at the beginning of this line as the selection
the rest is the same as your script.
your help is greatly appreciated
thanks
Naren
January 19th, 2010 at 18:50
That is rather strange – mc2xml should only prompt you that once, and on successive updates just use what you entered before.
I’ve updated my script in the meanwhile:
#!/bin/bash
MC2XML="/path/to/mc2xml"
XMLTV="/path/to/xmltv.xml"
cd `dirname $MC2XML`
# Check if we have internets
/sbin/ping -q -c 1 -t 5 google.com > /dev/null
if [ $? -eq 0 ]; then
$MC2XML -F -c be -g 9030
open -a EyeTV $XMLTV
fi
January 19th, 2010 at 19:29
Interesting I have only attempted manually by deleting the download xml file so thats why it might be asking me I’ll run it again with the current files inplace and report back. BTW When you downlaod the listing does you Eyetv hang while importing. In my case a 7 days listing take about 1 -2 mins to import on a mac mini 2.26 core 2 duo
January 19th, 2010 at 19:31
Also what are you using as a remote? my intent is to make a DVR and media center from my mac mini on a Sony 46XBR9. The Apple remote is rather limited in terms of functionality. I have been reading that the ps3 bluetooth remote with remote buddy is an option. Any thoughts on that ?
January 20th, 2010 at 05:35
just an update…On attempts after the 1st download it does not ask for the listing selection it will remember so your script works for me as well
thank you
January 20th, 2010 at 17:48
Same thing here. EyeTV will hang during the import, which is rather annoying. Takes around 2-3 mins on mine.
January 20th, 2010 at 17:49
I use the apple remote together with Sofa Control, and also using the remote that came with the EyeTV.
January 21st, 2010 at 22:14
Jan thank you for all your help and advice…. some additional tips,update, etc….
remote buddy has native support for Eyetv and many other apps I got a 30 day trial and its working great. I have decided to purchase it as soon as the trial runs out. the two main apps I will use this for is Eyetv and Plex.
And it will support a range of different remotes, planning on testing the ps3 bluetooth remote simply because the cause it low $20.
regarding the hang issue while importing the xmltv file I have noticed that its much less as the size of the file decreases (which make sense ) so to decrease the xmltv.xml file size I have created a xmltv.chl file and listed (you can use ranges ) channels in the file so I only download channel 1-200 rather then 550 channels listing . this decreases the xmltv.xml file size from 128 meg to 49 meg ( for 14 days)
The script I took and made a text file and put an extension of .command on it and made a ical event for every Sunday night to open a file ( choose the .command file and note to set you terminal app to close automatically) Also note if you add a “-a” and “-A” switch to your script it will mark all new/live shows with a “*”
Have fun later