“Unsupported input file format” error message


Hello,

I downloaded the SDK Linux PC emulation and have encoutered the following problem: I copied one of the examples (08_AlphaBlend) that came with the SDK ( renamed it to 08_AlphaBlend (copy) )and replaced one of the bitmaps (backgrnd.bmp) with a png file.  However, I get the “Unsupported input file format” error message when I try to build 08_AlphaBlend (copy).  I also modified the content.mak file where backgrnd.bmp is mentioned and replaced it with my png file nameSee below for details.  I have no problems when I build the original 08_AlphaBlend. 

The error message is:


 ../../../Utilities/PVRTexTool/PVRTexToolCL/Linux/PVRTexTool -nt -m -fOGL8888 -i../Media/backgrnd.png -oBackground.pvr


Unsupported input file format.


Does anyone know if the options used in this command cause the problem?

I was able to resolve the “Unsupported input file format” issue: I opened the .png file and save it as a .bmp using an image editing software.  I was able to build the application successfully and got the executable.  However, when I try to run the excecutable I get the “ERROR: Cannot load the texture error:


-sh-2.05b# ./OGLESAlphaBlend                                                                    <?: prefix = o ns = "urn:schemas-microsoft-com:office:office" />


PVRShell: EGL 1.2 initialized                                                  


PVRTTextureLoadPartialFromPointer failed: glBindTexture() failed.              


Exit message has been set to: "ERROR: Cannot load the texture".                                                                             


InitView failed!                                                               


ERROR: Cannot load the texture


Please help!

The version of PVRTexToolCL that you are using is incapable of loading png files on Linux. This has been fixed in the new Linux version (3.7) which is available on the website as of today. I would recommend that you download the latest version of the OpenGL ES Linux PC Emulation SDK which will have PVRTexTool 3.7, new source code for AlphaBlend and new PC emulation libraries. It’s possible that encoding a texture with the new tool and incorporating it into the new example code may fix your problem. I’d advise that you try this first.


Have you run the AlphaBlend example successfully with the default textures? Replacing these as you have done seems reasonable and like it should work to me (I’ve done the same very recently for a test project). The error message indicates that the pvr file has ben successfully opened and parsed, but that something is failing when passing data to OpenGL in the PVRTTextureAPI.cpp file in the PVR OGLES tools. If you search for the error string “PVRTTextureLoadPartialFromPointer failed: glBindTexture() failed.” you should find where the loading code actually breaks. Can you confirm that this is when loading your own texture and not during initialisation of another one? Also, is it definitely the call to glBindTexture that is failing? You can determine this by checking the state of glError before the glBindTexture() line in the PVRTTextureLoadFromPointer() function.

Hope this helps,

G




Thank you for your prompt response.  I was able to resolve this issue.  The problem was that my bitmap (480x480) was not a square power of two.   I resolved this by opening my bitmap in an image editing software (Gimp), and resizing the bitmap to be a square and a power of two (i.e. 512x512, 256x256).