Patch for running gst-plugins-gl in beagleboard

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Patch for running gst-plugins-gl in beagleboard

TK, Pratheesh Gangadhar
Hi,

I am using gst-plugins-gl (commit id: 18f5c4875006606b28aa9aa366abbc5dd1e16b60) in beagleboard (OMAP3). While running this I saw this error GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS and abort during init. After some digging I think the failure is due to this

As per http://www.khronos.org/opengles/sdk/docs/man/glRenderbufferStorage.xml 

glRenderbufferStorage takes only one of these as internalformat (GL_RGBA4,GL_RGB565,GL_RGB5_A1,GL_DEPTH_COMPONENT16, GL_STENCIL_INDEX8) so IMG driver implementation for SGX530 is complying to this whereas gst-plugins-gl uses GL_DEPTH_COMPONENT for GLES now.

With below patch I can run filtercube plugin in beagleboard.

--- /tmp/gstgldisplay.c 2009-09-28 00:49:48.000000000 +0530
+++ git/gst-libs/gst/gl/gstgldisplay.c 2009-09-30 12:32:53.000000000 +0530
@@ -1172,9 +1172,13 @@ gst_gl_display_thread_init_download (Gst
         glGenRenderbuffersEXT (1, &display->download_depth_buffer);
         glBindRenderbufferEXT (GL_RENDERBUFFER_EXT,
             display->download_depth_buffer);
+#ifndef OPENGL_ES2
         glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT,
             display->download_width, display->download_height);
-
+#else
+        glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT16,
+            display->download_width, display->download_height);
+#endif
         //setup a first texture to render to
         glGenTextures (1, &display->download_texture);
         glBindTexture (GL_TEXTURE_RECTANGLE_ARB, display->download_texture);
@@ -1536,8 +1540,13 @@ gst_gl_display_thread_gen_fbo (GstGLDisp
   //setup the render buffer for depth
   glGenRenderbuffersEXT (1, &display->generated_depth_buffer);
   glBindRenderbufferEXT (GL_RENDERBUFFER_EXT, display->generated_depth_buffer);
+#ifndef OPENGL_ES2
   glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT,
-      display->gen_fbo_width, display->gen_fbo_height);
+      display->download_width, display->download_height);
+#else
+  glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT16,
+      display->download_width, display->download_height);
+#endif
 
   //setup a texture to render to
   glGenTextures (1, &fake_texture);
@@ -2422,8 +2431,13 @@ gst_gl_display_thread_init_upload_fbo (G
     //setup the render buffer for depth
     glGenRenderbuffersEXT (1, &display->upload_depth_buffer);
     glBindRenderbufferEXT (GL_RENDERBUFFER_EXT, display->upload_depth_buffer);
+#ifndef OPENGL_ES2
     glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT,
-        display->upload_width, display->upload_height);
+        display->download_width, display->download_height);
+#else
+    glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT16,
+        display->download_width, display->download_height);
+#endif
 
     //a fake texture is attached to the upload FBO (cannot init without it)
     glGenTextures (1, &fake_texture);

Regards,
Pratheesh


------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

gstreamer.freedesktop.org down?

Roland Peffer-2
Good Morning,

I can not reach gstreamer.freedesktop.org site. Is it down?

Regards,

Roland


------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: gstreamer.freedesktop.org down?

Sean McNamara-4
Looks to be that *.freedesktop.org is down, even cgit and www :(
Confirmed locally, and these guys seem to agree:
http://downforeveryoneorjustme.com/

On Wed, Sep 30, 2009 at 3:22 AM, Roland Peffer <[hidden email]> wrote:

> Good Morning,
>
> I can not reach gstreamer.freedesktop.org site. Is it down?
>
> Regards,
>
> Roland
>
>
> ------------------------------------------------------------------------------
> Come build with us! The BlackBerry&reg; Developer Conference in SF, CA
> is the only developer event you need to attend this year. Jumpstart your
> developing skills, take BlackBerry mobile applications to market and stay
> ahead of the curve. Join us from November 9&#45;12, 2009. Register now&#33;
> http://p.sf.net/sfu/devconf
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>

------------------------------------------------------------------------------
Come build with us! The BlackBerry&reg; Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9&#45;12, 2009. Register now&#33;
http://p.sf.net/sfu/devconf
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Patch for running gst-plugins-gl in beagleboard

Julien Isorce
In reply to this post by TK, Pratheesh Gangadhar
Hi,

Nice !

I think you also resolved this:
https://bugzilla.gnome.org/show_bug.cgi?id=593786

Could you attach your patch to this bug ?

Sincerely
Julien

2009/9/30 TK, Pratheesh Gangadhar <[hidden email]>
Hi,

I am using gst-plugins-gl (commit id: 18f5c4875006606b28aa9aa366abbc5dd1e16b60) in beagleboard (OMAP3). While running this I saw this error GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS and abort during init. After some digging I think the failure is due to this

As per http://www.khronos.org/opengles/sdk/docs/man/glRenderbufferStorage.xml

glRenderbufferStorage takes only one of these as internalformat (GL_RGBA4,GL_RGB565,GL_RGB5_A1,GL_DEPTH_COMPONENT16, GL_STENCIL_INDEX8) so IMG driver implementation for SGX530 is complying to this whereas gst-plugins-gl uses GL_DEPTH_COMPONENT for GLES now.
 

With below patch I can run filtercube plugin in beagleboard. 

--- /tmp/gstgldisplay.c 2009-09-28 00:49:48.000000000 +0530
+++ git/gst-libs/gst/gl/gstgldisplay.c  2009-09-30 12:32:53.000000000 +0530
@@ -1172,9 +1172,13 @@ gst_gl_display_thread_init_download (Gst
        glGenRenderbuffersEXT (1, &display->download_depth_buffer);
        glBindRenderbufferEXT (GL_RENDERBUFFER_EXT,
            display->download_depth_buffer);
+#ifndef OPENGL_ES2
        glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT,
            display->download_width, display->download_height);
-
+#else
+        glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT16,
+            display->download_width, display->download_height);
+#endif
        //setup a first texture to render to
        glGenTextures (1, &display->download_texture);
        glBindTexture (GL_TEXTURE_RECTANGLE_ARB, display->download_texture);
@@ -1536,8 +1540,13 @@ gst_gl_display_thread_gen_fbo (GstGLDisp
  //setup the render buffer for depth
  glGenRenderbuffersEXT (1, &display->generated_depth_buffer);
  glBindRenderbufferEXT (GL_RENDERBUFFER_EXT, display->generated_depth_buffer);
+#ifndef OPENGL_ES2
  glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT,
-      display->gen_fbo_width, display->gen_fbo_height);
+      display->download_width, display->download_height);
+#else
+  glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT16,
+      display->download_width, display->download_height);
+#endif

  //setup a texture to render to
  glGenTextures (1, &fake_texture);
@@ -2422,8 +2431,13 @@ gst_gl_display_thread_init_upload_fbo (G
    //setup the render buffer for depth
    glGenRenderbuffersEXT (1, &display->upload_depth_buffer);
    glBindRenderbufferEXT (GL_RENDERBUFFER_EXT, display->upload_depth_buffer);
+#ifndef OPENGL_ES2
    glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT,
-        display->upload_width, display->upload_height);
+        display->download_width, display->download_height);
+#else
+    glRenderbufferStorageEXT (GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT16,
+        display->download_width, display->download_height);
+#endif

    //a fake texture is attached to the upload FBO (cannot init without it)
    glGenTextures (1, &fake_texture);

Regards,
Pratheesh



------------------------------------------------------------------------------
Come build with us! The BlackBerry&reg; Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9&#45;12, 2009. Register now&#33;
http://p.sf.net/sfu/devconf
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel