[mythtv] Built in DVB epg support

Taylor Jacob rtjacob at earthlink.net
Thu Jul 29 22:20:30 EDT 2004

> 	Since the UK now has a full 7 day epg guide I'm considering trying to
> implement a built in provider for it. Anyway before I dive in, I thought
> I'd ask a question and put forward my ideas.

What DVB are you talking about?  DVB-T/C/S?

> First off, is anyone already implementing this ?

Yes I have slowly been working on this.  I have working code that I have been implimenting outside
of MythTV.  Right now I have been testing with dumping the EIT to an XMLTV formatted file and
loading it into MythTV.  I am getting some help from Julian Scheel who is in Germany using DVB-S. 
I have only been able to test my code with DVB-S and got a bit of help a long time ago from a guy
in Austrailia with DVB-T.

My current plans (briefly) are:

- Make DVB tuning only need the transport and service ID so that there is no need to store the
PIDs (unless you need to override an Automatic PID selection if no audio language is specified for

- Make DiSEqC inputs become "virtual" inputs to a capture card to normalize the database more (I
have this working in my local copy of myth).  This is so DVB-S people dont have to have more than
1 copy of a channel if using 2 DVB-S cards with DiSEqC.

- Parse the EIT and insert it into the database internally

- When EIT processing is done you will end up verifying what services are located on each
transport as a side result, and using this to verify that channels are located where they need to
be, and add new services / remove old services that are no longer active

> My idea was to have a two stage approach to update the EPG.
> One strand of the process would update the EPG on the currently tuned
> channel. Probably only now/next information and also maybe that days
> data. There is also the possibility of picking up the event changed
> information to cope with overrunning programs etc.

This depends on the network.  Some networks send EIT for the current transport only, and others
send ALL of the EIT information on one transport only, so it just depends on your network setup. 
This can be determined by part of teh NIT tables (the linkage transport).

This would be done everytime you re-scan the EIT.  I would like to make myth always do a re-scan
of teh current transport when you tune to it (but this can be a memory hog on large networks 30-40
megs has been my experience with 500 channels and 48 hour of EIT).

> The second strand of the idea, would be to update the channels by
> visiting each channel and collecting the data for each one (I believe
> vdr does this). It would need to do this when the master server was idle
> (more accurately when the dvb tuners where idle) so some interaction
> with the scheduler would be required.

Yes. See above comment.

> Does this basically sound correct ?
> (Coding schedule is of course dependent on how rainy it is :-)

So far yes..

Please email me and I will send you the code I am working with (It has been far easier to develop
and debug the table processors outside myth but should be moving to integration shortly).

I will be away the 1st to the 8th though so if you don't hear from me then don't be discouraged..


More information about the mythtv-dev mailing list