Hi everyone.
Is there any way to get the supported resolutions?
I’m using OpenGL.
Hi everyone.
Is there any way to get the supported resolutions?
I’m using OpenGL.
sdl can do that. I clicked “index” in the “docs” folder and then clicked “video”. It said this is a supported function: SDL_ListModes
Hello Team,
We were running this sample example to findout the available modes, on the LCD tv.
#include <SDL/SDL.h>
#include <stdio.h>
int main(int argc, char argv[]) {
/ Information about the current video settings. /
/ Initialize defaults, Video and Audio */
SDL_Rect **fullmodes;
int i;
if((SDL_Init(SDL_INIT_EVERYTHING)) < 0) {
printf(“Could not initialize SDL: %s.\n”, SDL_GetError());
exit(-1);
}
const SDL_VideoInfo *vidInfo = NULL;
vidInfo = SDL_GetVideoInfo ();
/* collect all fullscreen & hardware modes available */
if (!(fullmodes = SDL_ListModes (vidInfo->vfmt,SDL_OPENGL))) {
for(i=0;fullmodes[i];++i)
printf( “SDL Mode: %d: %d x %d\n”, i, fullmodes[i]->w, fullmodes[i]->h);
}
else {
printf(“FullMode Eror\n”);
}
}
The program always fails to list the fullmode.
(c) 2007-2009 Intel Corporation
(c) 2001-2008 The world wide DirectFB Open Source Community
(c) 2000-2004 Convergence (integrated media) GmbH----------------------------------------------------------------
(*) DirectFB/Core: Single Application Core. (2011-06-09 00:06)
(*) IntelCE/Systems: Available GDL driver memory: 55MB of 70MB
(*) Direct/Thread: Started 'Hotplug with Linux Input' (3070) [INPUT OTHER/OTHER 0/0] <8388608>...
(*) DirectFB/Input: Hotplug detecting enabled with Linux Input Driver
(*) DirectFB/Genefx: MMX detected and enabled
(*) IntelCE/GfxDriver: Using OpenGL ES 1.1 graphics library
(*) IntelCE/GfxDriver: Using SRB graphics library
(*) DirectFB/Graphics: Intel Corporation Intel_CE Graphics Driver 2.0 (Intel Corporation)
(*) DirectFB/Core/WM: Default 0.3 (directfb.org)
FullMode Eror
(!!!) *** WARNING [Application exited without deinitialization of DirectFB!] *** [core.c:871 in dfb_core_deinit_check()]
(!!!) *** WARNING [still 1 objects in pool:'Layer Region Pool'] *** [object.c:359 in fusion_object_pool_destroy()]
(!!!) *** WARNING [still 1 objects in pool:'Layer Context Pool'] *** [object.c:359 in fusion_object_pool_destroy()]
Hardware:
IntelAtomProcessor connected to LCD tv thru A/V out .DirectFb example programs are working fine and displays pictures and screen savers on TV.
http://en.wikipedia.org/wiki/List_of_Intel_Atom_microprocessors#CE_processors
SDL-1.2 Version.
Direct FB-1.2.10.
Debian-5.0.8
Any Help on this will be really helpful.
Thanks,
Rashmi
Well I’m using this for detection on Win32
DISPLAY_DEVICE display;
int displaynum = 0;
memset(&display, 0, sizeof(display));
display.cb = sizeof(display);
// Monitor List
while(EnumDisplayDevices(NULL, displaynum++, &display, NULL))
{
// Default monitor
if (display.StateFlags & DISPLAY_DEVICE_ATTACHED_TO_DESKTOP)
{
DEVMODE devmode;
memset(&devmode, 0, sizeof(devmode));
devmode.dmSize = sizeof(devmode);
int num = 0;
while (EnumDisplaySettings(display.DeviceName, num++, &devmode))
{
// We only want stuff bigger than 640x480 probably
if (devmode.dmBitsPerPel >=16 && devmode.dmPelsWidth >= 640 && devmode.dmPelsHeight >= 480)
{
/* Important stuff
devmode.dmPelsWidth
devmode.dmPelsHeight
devmode.dmDisplayFrequency
devmode.dmBitsPerPel
*/
// Push to list
}
}
}
}
Hope it helps
SDL_LISTMODES is being used by Mplayer and Mplayer crashes, when it tries to access the fullmodes.
Even if we add a NULL pointer check the functionality does not work , when i tried the example program i get to see that
SDL_ListModes is not working as per documentation, so it is very important for me to get the example program working so that Mplayer also runs fine.
SO any help on successfully using this function is very much appreciated.
SDL_Rect **fullmodes;
if (!(fullmodes = SDL_ListModes (vidInfo->vfmt,SDL_SWSURFCE|SDL_FULLSCREEN))) {
for(i=0;fullmodes[i];++i)
printf( “SDL Mode: %d: %d x %d\n”, i, fullmodes[i]->w, fullmodes[i]->h);
}