<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>