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
