Imagination PowerVR SDK Blog

how to use GL_IMG_texture_stream?


i find  glext.h for ogles1.1.



#ifndef __glext_h_
#define __glext_h_

/* $Id: glext.h 1.2 2008/03/31 09:44:00 benji.bowman Exp $ */


/* GL_IMG_texture_stream */
#ifndef GL_IMG_texture_stream
#define GL_TEXTURE_STREAM_IMG          0x8C0D  

GL_API void GL_APIENTRY glTexBindStreamIMG(GLint device, GLint deviceoffset);
GL_API void GL_APIENTRY glGetTexStreamDeviceAttributeivIMG(GLint device, GLenum pname, GLint *params);
GL_API const GLubyte * GL_APIENTRY glGetTexStreamDeviceNameIMG(GLint device);



how to use  Function?


i find

SDK PowerVRoaktargetARMV4Iretail

have gles1_texture_stream.exe


But i want get Source Code?



i don't kown use glTexBindStreamIMG AND glGetTexStreamDeviceAttributeivIMG.


who give me Example?


gbaup2010-08-25 07:49:30


I believe the application you are referring to is a unit test for the drivers to ensure the texture stream extensions are working correctly. The code for this is only available under a DDK licence with us.

Texture streaming is only available on a particular device if an OEM has chosen to implement and expose this functionality. For some devices, OEMs choose to implement this in such a way that 1st party drivers or applications utilise this functionality, but the ability to create and control texture streams is hidden from 3rd party developers.

What device are you targeting and what are you trying to implement using these extensions (e.g. using camera captured or video decoded images in your application)?

Section 6 on this page provides an explanation of how extensions are retrieved in a Win32 application (which is similar to the process you would need to follow for OGLES 1.x):

For an OGLES 1.x application, you would need to write something like this for the glTexBindStreamIMG extension:


typedef void (GL_APIENTRYP PFNGLTEXBINDSTREAMIMGPROC) (GLint texStreamId, GLint bufferId);

/* Retrieve GL extension string */
const GLubyte *pszGLExtensions;
pszGLExtensions = glGetString(GL_EXTENSIONS);

/* Retrieve the texture stream extensions */
if(strstr((char *)pszGLExtensions, "GL_IMG_texture_stream"))
     myglTexBindStreamIMG = (PFNGLTEXBINDSTREAMIMGPROC)eglGetProcAddress("glTexBindStreamIMG");

              printf("Unable to load extensions");
              return false;

After this, you can use myglTexBindStreamIMG for all of your function calls.

Let me know if this helps :)Joe2010-08-25 09:57:35


thank you for answer the qustion.


i find


 hope help other.