Ok... I'm using SDL_CreateRGBSurfaceFrom a lot in my application. This is how I'm calling it:
Where frame is the pixel data of a bmp, resWidth and resHeight the resolution of the bmp and colorDepth is the color depth in bits. Well, this works well with 24 or 32 bits bmps. However, it doesn't look good on 16bit bmps. This is how it looks:
SDL_CreateRGBSurfaceFrom(frame, resWidth, resHeight, colorDepth, resWidth*colorDepth/8, 0, 0, 0, 0);
Do you know what the colors are like that?