[mythtv] Is anybody looking at EITFixUp (eitfixup.cpp)
stuarta at squashedfrog.net
Thu Jul 24 09:02:27 UTC 2008
> 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.
More information about the mythtv-dev