[mythtv] OSD issue?

Isaac Richards ijr at po.cwru.edu
Wed Feb 11 00:51:31 EST 2004


On Tuesday 10 February 2004 09:15 pm, Andrew Mahone wrote:
> On Tuesday 10 February 2004 18:47, Isaac Richards wrote:
> > So it was ClearUsed() causing the issue?
>
> Just tried changing the ClearUsed() in osd.cpp to Clear(), and it fixes the
> problem.  If there's an easy way to disable Xv, or to dump the contents of
> the Xv surface, I can try to get some screenshots to help characterize the
> problem.

NO_XV=1 ./mythfrontend

But, I'll try to reproduce instead.  I'm curious what it's not clearing 
properly..

> > Please do =)  Same problem would affects optimizing the rest of the osd
> > drawing functions..
>
> After a little more thought...  this looks harder.  I reworked the function
> in pow_lut, and I can get it calculated with just one reciprocal, and a
> bunch of adds and multiplies.  The reciprocal needs either a LUT (a fixed,
> one-dimensional one would suffice, and it would be 1kB instead of the 64kB
> pow_lut table), or SSE, which will be a bit of a pain without the nice
> mmx.h macros supporting SSE, and will have a penalty for the
> word->dword->float conversion (and back).  Any thoughts on this?  Am I
> going down any dead ends that you already tried?

Well, I'd rather not go SSE, as I was trying to get something that'd work on 
my epia-m.  Essentially, I got it working without calculating the proper 
transparency value (or touching the uv planes like it really should), tried 
to use the lookup table, saw that was really slow, and couldn't come up with 
a way to calculate the new transparency value easily enough to make it 
worthwhile.  That's 'bout it =)

Isaac


More information about the mythtv-dev mailing list