As part of a largish application I have code that can process the EPG data that Freeview broadcasts via MHEG5 as well as any data broadcast via the EIT.
The MHEG5 data itself is easy to interpret, getting at it is not so easy. The code that deals with it is CSharp, around 40 classes excluding the Directshow BDA stuff.
Incidentally, last week the data broadcast started including TV Anytime references (ie CRID's). I'm still looking at whether this makes it more reliable to detect the programs to record in a series but it looks promising.
If anybody is interested let me know.
[Moderator update (MF): This is the link to download the MHEG5 Grabber and detailed instructtions]
[Moderator update (LC): Copied SJB's update to here.]