[mythtv] Re : Is anybody looking at EITFixUp (eitfixup.cpp)

manu eallaud at yahoo.fr
Thu Jul 24 11:50:23 UTC 2008


Le 24.07.2008 05:02:27, Stuart Auchterlonie a écrit :
> Grackleflint wrote:
> > The Australian DVB-T channel's EIT data needs some hacking to be
> useful 
> > for MythTV's EPG so I was hunting around for a way to do this when 
> I
> 
> > found eitfixup.cpp.  To be blunt, EITFixUp is a horrible bunch of
> hard 
> > coded hacks to get around very specific EIT problems.  It is
> extremely 
> > case specific with lot's of duplicated code and general nastiness.
> >
> > I'm thinking of replacing it with a more generic, table driven
> system.  
> > Is/has anybody else looked at this?
> >
> >  From about an hour's investigation, I think I can replace more 
> than
> 90% 
> > of the current EITFixUp code with fairly generic rules. The
> resulting 
> > rules will only be a bit easier to create than writing C++ but they
> will 
> > be runtime modifiable and far easier to test.
> >
> > My initial thought is to put in the new system beside the existing 
> > code.  This will make the transition easy and, once the new system
> is 
> > stable and in production, I can port the existing EITFixUp code 
> over
> to 
> > it and create any special cases which may be required.
> >
> > Any comments?
> >
> >   
> 
> It sounds very nice, but can you make it efficient?
> 
> The eitfixups get called quite frequently, due to the
> rate of the incoming EIT data.
> 
> We moved the eitfixup's from using dynamic regexp's to
> statically instantiated, so that the regexps wouldn't need
> to be interpreted at runtime, *purely* because they were
> taking up too much cpu time.
> 
> Sourcing our regexps from the database would require a
> move back to dynamic regexp's.

IIRC some implementation of regexps allow you to "compile" them once 
and for all so each subsequent use is faster, that could be enough.
Bye
Manu



More information about the mythtv-dev mailing list