<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    This combination is fine if libgstgl is built for those platforms
    and your log would indicate that this is the case.<br>
    <br>
    Almost all gl elements in gst-plugins-base support that
    combination.  glupload, gleffects, glimagesink, gltestsrc are
    non-exhaustive examples that support that just fine.  There are very
    few gl elements nowadays that struggle with the (gles2)
    requirement.  wayland+egl is fine and is supported by all OpenGL
    elements.<br>
    <br>
    Further comments inline.<br>
    <br>
    <div class="moz-cite-prefix">On 15/3/21 8:13 am, Joel Winarske
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CABKMkP+iH6=oSwi6tNwmod1tbDD=_q--RRGp84P-ad6-tUwA_A@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">
        <div>Using the below combo of variables seems to be invalid, for
          both Ubuntu 18.04 LTS (Wayland on Ubuntu) and Fedora 33
          (Wayland is active by default).  Canonical (Ubuntu) is stating
          they will default with Wayland (again) in an upcoming release.<br>
        </div>
        <div><br>
        </div>
        <div> GST_GL_WINDOW=wayland</div>
        <div>GST_GL_PLATFORM=egl</div>
        <div>GST_GL_API=gles2</div>
      </div>
    </blockquote>
    <br>
    These variables will only have any effect when GStreamer is creating
    the necessary resources.  If you are passing in some shared
    resources (display or OpenGL context), GStreamer will use the values
    from there instead.<br>
    <br>
    <blockquote type="cite"
cite="mid:CABKMkP+iH6=oSwi6tNwmod1tbDD=_q--RRGp84P-ad6-tUwA_A@mail.gmail.com">
      <div dir="ltr">
        <div>What gl test cases are expected to work via
          wayland/egl/gles2?  Or any test case for that matter.<br>
        </div>
      </div>
    </blockquote>
    <br>
    The gtk examples support wayland, otherwise the gtkglsink or
    qmlglsink elements contain the necessary code for retrieving the
    wl_display from those respective toolkits and then passing the
    required GstGLDisplay to GStreamer.<br>
    <br>
    <blockquote type="cite"
cite="mid:CABKMkP+iH6=oSwi6tNwmod1tbDD=_q--RRGp84P-ad6-tUwA_A@mail.gmail.com">
      <div dir="ltr">
        <div>Thanks,</div>
        <div>Joel<br>
        </div>
        <br>
      </div>
      <br>
      <div class="gmail_quote">
        <div dir="ltr" class="gmail_attr">On Thu, Mar 11, 2021 at 4:02
          PM Joel Winarske <<a href="mailto:joel.winarske@gmail.com"
            moz-do-not-send="true">joel.winarske@gmail.com</a>>
          wrote:<br>
        </div>
        <blockquote class="gmail_quote" style="margin:0px 0px 0px
          0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
          <div dir="ltr">
            <div>I'm taking a look at the sdlshare example, and porting
              to Fedora 33 - wayland/egl.</div>
            <div><br>
            </div>
            <div>After pausing the pipeline I get an eglCreateContext
              EGL Error of EGL_BAD_CONTEXT.  The context being passed in
              is shared, without a surface.</div>
            <div><br>
            </div>
            <div>Code: <a
href="https://gist.github.com/jwinarske/a518d16f18a4e0345d91027984098ec9"
                target="_blank" moz-do-not-send="true">https://gist.github.com/jwinarske/a518d16f18a4e0345d91027984098ec9</a></div>
            <div>Log: <a
href="https://gist.github.com/jwinarske/2d19e39590415fb8331af2edbeb1b984"
                target="_blank" moz-do-not-send="true">https://gist.github.com/jwinarske/2d19e39590415fb8331af2edbeb1b984</a></div>
            <div><br>
            </div>
            <div>How do I avoid the dummy window altogether?<br>
            </div>
            <div><br>
            </div>
            My end goal is to simply update a texture on each frame. 
            Something else renders the texture.<br>
          </div>
        </blockquote>
      </div>
    </blockquote>
    <br>
    For wayland, you need to share the wl_display between SDL and
    GStreamer.  Once you retrieve the wl_display from SDL, create the
    necessary GstGLDisplay with
    gst_gl_display_wayland_new_with_display().<br>
    <br>
    Cheers<br>
    -Matt<br>
    <br>
    <blockquote type="cite"
cite="mid:CABKMkP+iH6=oSwi6tNwmod1tbDD=_q--RRGp84P-ad6-tUwA_A@mail.gmail.com">
      <div class="gmail_quote">
        <blockquote class="gmail_quote" style="margin:0px 0px 0px
          0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
          <div class="gmail_quote">
            <div dir="ltr" class="gmail_attr">On Tue, Mar 9, 2021 at
              4:42 PM Matthew Waters <<a
                href="mailto:ystreet00@gmail.com" target="_blank"
                moz-do-not-send="true">ystreet00@gmail.com</a>>
              wrote:<br>
            </div>
            <blockquote class="gmail_quote" style="margin:0px 0px 0px
              0.8ex;border-left:1px solid
              rgb(204,204,204);padding-left:1ex">
              <div> There is no way to know the texture ID without
                uploading the frame.<br>
                <br>
                The texture ID is almost never a constant value.  At
                least, there will probably be two textures that will be
                flipped between. At most, each texture id will be
                unique.<br>
                <br>
                Cheers<br>
                -Matt<br>
                <br>
                <div>On 10/3/21 5:34 am, Joel Winarske wrote:<br>
                </div>
                <blockquote type="cite">
                  <div dir="ltr">
                    <div>In my use case (video player) I just need to
                      initialize the pipeline and return a texture id.<br>
                    </div>
                    <div><br>
                    </div>
                    <div>Is there a way to determine the texture id
                      without loading a frame?</div>
                    <div><br>
                    </div>
                    <div>Is the texture id constant over the lifecycle
                      of the pipeline?<br>
                    </div>
                    <div><br>
                    </div>
                  </div>
                  <br>
                  <div class="gmail_quote">
                    <div dir="ltr" class="gmail_attr">On Mon, Mar 8,
                      2021 at 9:57 PM Matthew Waters <<a
                        href="mailto:ystreet00@gmail.com"
                        target="_blank" moz-do-not-send="true">ystreet00@gmail.com</a>>
                      wrote:<br>
                    </div>
                    <blockquote class="gmail_quote" style="margin:0px
                      0px 0px 0.8ex;border-left:1px solid
                      rgb(204,204,204);padding-left:1ex">
                      <div> That is one option if you're looking to use
                        glimagesink's rendering.  If you're rendering
                        the texture yourself, something like <a
href="https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/blob/master/tests/examples/gl/sdl/sdlshare.c"
                          target="_blank" moz-do-not-send="true">https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/blob/master/tests/examples/gl/sdl/sdlshare.c</a>
                        is more appropriate.<br>
                        <br>
                        Cheers<br>
                        -Matt<br>
                        <br>
                        <div>On 9/3/21 1:37 pm, Joel Winarske wrote:<br>
                        </div>
                        <blockquote type="cite">
                          <div dir="ltr">
                            <div>I'm figuring a pipeline like this:<br>
                            </div>
                            <div>uridecodebin uri=<a
                                moz-do-not-send="true">file:///usr/local/share/assets/video.mp4</a>
                              !
                              video/x-raw(memory:GLMemory),format=RGBA,texture-target=2D
                              ! glimagesink</div>
                            <div><br>
                            </div>
                            <div>To get the texture id I see a pattern
                              in the cube example of attaching callback
                              to "client-draw" of glimagesink, then
                              mapping the video buffer which provides
                              access to the texture id.  Is this the
                              only way to access the texture id?<br>
                            </div>
                            <div><br>
                            </div>
                            <div>Thanks,</div>
                            <div>Joel<br>
                            </div>
                            <div><br>
                            </div>
                          </div>
                          <br>
                          <div class="gmail_quote">
                            <div dir="ltr" class="gmail_attr">On Mon,
                              Mar 8, 2021 at 4:59 PM Joel Winarske <<a
                                href="mailto:joel.winarske@gmail.com"
                                target="_blank" moz-do-not-send="true">joel.winarske@gmail.com</a>>
                              wrote:<br>
                            </div>
                            <blockquote class="gmail_quote"
                              style="margin:0px 0px 0px
                              0.8ex;border-left:1px solid
                              rgb(204,204,204);padding-left:1ex">
                              <div dir="ltr">
                                <div>Thank you for that.</div>
                                <div><br>
                                </div>
                                <div>What is the current recommended
                                  pattern for rendering to a GL texture
                                  which gets consumed by a shared
                                  context?  The shared context handles
                                  the rendering.</div>
                                <div><br>
                                </div>
                                <div>Cheers,</div>
                                <div>Joel<br>
                                </div>
                                <div><br>
                                </div>
                              </div>
                              <br>
                              <div class="gmail_quote">
                                <div dir="ltr" class="gmail_attr">On
                                  Mon, Mar 8, 2021 at 4:32 PM Matthew
                                  Waters <<a
                                    href="mailto:ystreet00@gmail.com"
                                    target="_blank"
                                    moz-do-not-send="true">ystreet00@gmail.com</a>>
                                  wrote:<br>
                                </div>
                                <blockquote class="gmail_quote"
                                  style="margin:0px 0px 0px
                                  0.8ex;border-left:1px solid
                                  rgb(204,204,204);padding-left:1ex">
                                  <div> No.<br>
                                    <br>
                                    clutter has not been recommended for
                                    many years.  gst-plugins-gl neither
                                    for many more.  gst-plugins-gl has
                                    been migrated into gst-plugins-bad
                                    as can be seen from the latest
                                    commit on that repo: <a
href="https://github.com/freedesktop/gstreamer-gst-plugins-gl/commit/bedade404ec82432742a901c663f18dfaa24356f"
                                      target="_blank"
                                      moz-do-not-send="true">https://github.com/freedesktop/gstreamer-gst-plugins-gl/commit/bedade404ec82432742a901c663f18dfaa24356f</a>)
                                    and then promoted to
                                    gst-plugins-base and is available as
                                    the libgstgl-1.0 library.<br>
                                    <br>
                                    Cheers<br>
                                    -Matt<br>
                                    <br>
                                    <div>On 9/3/21 8:59 am, Joel
                                      Winarske wrote:<br>
                                    </div>
                                    <blockquote type="cite">
                                      <div dir="ltr">
                                        <div>Is <a
href="https://github.com/freedesktop/gstreamer-gst-plugins-gl/blob/master/tests/examples/clutter"
                                            target="_blank"
                                            moz-do-not-send="true">https://github.com/freedesktop/gstreamer-gst-plugins-gl/blob/master/tests/examples/clutter</a>
                                          still the recommended pattern
                                          for rendering to an EGL
                                          texture?</div>
                                        <div><br>
                                        </div>
                                        <div>Thanks,</div>
                                        <div>Joel<br>
                                        </div>
                                        <br>
                                      </div>
                                      <br>
                                      <fieldset></fieldset>
                                      <pre>_______________________________________________
gstreamer-devel mailing list
<a href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank" moz-do-not-send="true">gstreamer-devel@lists.freedesktop.org</a>
<a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank" moz-do-not-send="true">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a>
</pre>
                                    </blockquote>
                                    <br>
                                  </div>
                                </blockquote>
                              </div>
                            </blockquote>
                          </div>
                        </blockquote>
                        <br>
                      </div>
                    </blockquote>
                  </div>
                </blockquote>
                <br>
              </div>
            </blockquote>
          </div>
        </blockquote>
      </div>
    </blockquote>
    <br>
  </body>
</html>