On Fri, Feb 20, 2004 at 06:36:01AM -0800, Manoj Kumar Bhatta wrote: > Dear All > > I am using DirectFB-0.9.20 . > > I am using Nvdia TNT2 Graphics chipset . > > When i run DirectFB Application it goes through > several DisplayLayer (like --dfb:primary-layer= ) > But i want to know how many DisplayLayer DFB > supports when we run one application .is it different > for different applications?
The number of display layers depends on the hardawre and driver. Use dfbinfo to see how may layers there are (typically one or two) You should have two with the TNT2. > If i am not wrong DFB is having MAXIMUM display layer > 100 . The current limit is 40 but you'd have to have some pretty special hardware to reach that. Like I said you typically have one or two layers. > Is it one DisplayLayer is having one pixel > format ? A layer can support multiple pixelformats. How many depends on the hardawre and driver. > if yes , then if graphics card does not support that > pixel format what DFB does ? If the layer doesn't support the format you get an error when trying to set it up. But if it's just the accelerator that doesn't support it DirectFB will use software fallbacks when drawing something. > if not , means one DisplayLayer is having more than > one pixel format , how DFB behaves to drawing > premitives . means does it call DFB/graphics card > driver functions . CheckState() / SetState() are the gfx driver functions that deal with pixelformats. The gfxcard code first call CheckState() and if that fails it knows that software fallback is needed so it will use gAquire() which is basically the SetState() of the software accel "driver". In theory gAquire() should never fail because all drawing operations should have a software fallback but we are missing much of this stuff for YUV formats. > > May i know use of different displaylayers . Typically they are used for video playback as they usually handle YUV formats and can scale the image. Also because they can usually scale the image they may be used for video game emulators. They can also be used to display OSDs, subtitles etc but that more common in set top box type stuff than in PCs. > i found DFB examples (df_window.c ) it uses display > layer = DLID_PRIMARY . > > when running df_window with --dfb:primary-layer=(1-5) > it behaves differently . It should only behave different with a value of 1. Bigger values should behave identical to 0. With 1 you don't probably see much because the nvidia overlay doesn't support RGB pixel formats and we don't have many software fallbacks for YUV formats. -- Ville Syrj�l� [EMAIL PROTECTED] http://www.sci.fi/~syrjala/ -- Info: To unsubscribe send a mail to [EMAIL PROTECTED] with "unsubscribe directfb-dev" as subject.
