Stefan Lucke kirjoitti:
> On Sonntag 17 September 2006 19:33, Heikki Lindholm wrote:
> 
>>The included patch makes dfb:mgatv use YV12 colourspace for video and 
>>the hardware subpicture layer for OSD. The patch is a prime example of 
>>bad goal-oriented programming, but does what I wanted: improves 
>>performance to the level that my 450 MHz P2 can now function as a DVB 
>>box like no underpowered P2 has done before! Unfortunately, the patch 
>>probably breaks everything else, but I'm too lazy to clean it up.
>>
> 
> 
> Have to put some comments on this.
> 
> Sometime ago we already looked at the subpicture layer of matrox cards.
> But the disadvantage of this layer is that it only supports a few lookup 
> entries.
> There are less entries than vdr can handle.

"Can" as in "vdr has more entries"; yes, that's right. Fortunately, the 
mga spic layer palette (of 16 colours) can be defined freely.

> Vdr's OSD drawing consists of drawing to several areas and each area
> has it's own lookup table. Vdr in native mode (without OSD plugins)

Right. Actually, I was a bit disappointed when I noticed that. A global 
static palette would have been so much easier to handle. Btw. Could you 
point me to some plugins that do use a lot of colours in the OSD? The 
only other (besides of softdevice) plugin I use is the DVB subtitle one, 
which uses 4 colours AFAICT.

> draws it's OSD in a single area with only a few colors entries. So 
> you'll eventually don't see a problem.

And this was good enough for me. Basically, implementing a good colour 
allocator, maybe with some clustering colour reduction algorithm and LRU 
allocation policy, would usually produce acceptable results even when 
there are many more than 16 colours in use. I, however, did not venture 
in to such level of sophistication. But, I definitely don't think the 
mga spic approach is in any way infeasible or worthless. My patch might 
be worthless, though..

I first tried CRTC2 using YV12 colour space with strechBlit, like the 
YUY2 is used currently, but it was dead slow, so, without further 
investigation, I turned to alternative strategy.  My only goal was to 
get decent viewing pleasure from my trusty old P2 box.

> When i remember our OSD drawing correct, we map all OSD drawing to
> a single RGB32 area and so we don't need to have separate areas ourself.

Yes, that seems to be the case, and using RGBA there is ideal, of course.

-- Heikki Lindholm
_______________________________________________
Softdevice-devel mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/softdevice-devel

Reply via email to