Eglglessink integration with Window from ImGui

• Hardware Platform (GPU) x86_64
• DeepStream Version: 7.0
• TensorRT Version (From DS-7.0 docker)
• NVIDIA GPU Driver Version (From DS-7.0 docker)
• Issue Type( questions about nveglglessink)
• Requirement details

Question

I want to make a simple demo that integrate deepstream pipeline with ImGui but did not make it, the issue is described here:

Now the core issue i assume is that i can not make the OpenGL context used by nveglglessink and the one in ImGui to “work together” inside one window, is there any hint that i can make this? From github, i found someone use appsink to feed the data into OpenGL’s processing logic, which may add more codes, which seems sub-optimal to me.

Output

when using

gl_window = glfwCreateWindow(1280, 720, "Hello, world!", nullptr, nullptr);
glfwMakeContextCurrent(gl_window);

to “make the context”, eglgles would complain:

0:00:00.613931114 480684 0x55555711ef80 ERROR            egladaption ext/eglgles/gstegladaptation_egl.c:210:gst_egl_adaptation_context_make_current:<sink> Couldn't bind context
0:00:00.613948601 480684 0x55555711ef80 ERROR            egladaption ext/eglgles/gstegladaptation.c:654:gst_egl_adaptation_init_surface:<sink> Couldn't setup EGL surface
0:00:00.613952761 480684 0x55555711ef80 ERROR          nveglglessink ext/eglgles/gsteglglessink.c:3272:gst_eglglessink_configure_caps:<sink> Couldn't init EGL surface from window
0:00:00.613955733 480684 0x55555711ef80 ERROR          nveglglessink ext/eglgles/gsteglglessink.c:3293:gst_eglglessink_configure_caps:<sink> Configuring caps failed
0:00:00.613971758 480684 0x7fff98000b70 ERROR          nveglglessink ext/eglgles/gsteglglessink.c:3338:gst_eglglessink_setcaps:<sink> Failed to configure caps
0:00:00.614020571 480684 0x7fff98000b70 ERROR          nveglglessink ext/eglgles/gsteglglessink.c:3338:gst_eglglessink_setcaps:<sink> Failed to configure caps
0:00:00.614792979 480684 0x7fff98000b70 ERROR          nveglglessink ext/eglgles/gsteglglessink.c:3338:gst_eglglessink_setcaps:<sink> Failed to configure caps

Other info

  1. I have checked the gstreamer’s OpenGL doc here: OpenGL
  2. From this post, the nveglglessink is open source, i did not find it, where can i get it? Memory leak information is observed in case nveglglessink plugin is used
  3. From another post, the eglglessink may be deprecated?

Are you working with Orin or other Jetson devices?

No, from x86_64 Ubuntu22.04 docker env (DS7.0)

What do you mean by this description?

nveglglessink is based on EGL.

The Jetson nveglglessink is open source while nveglglessink for dGPU is not open source. But you can refer to the Jetson nveglglessink plugin source code for the basic plugin parts. Working With Sources — NVIDIA Jetson Linux Developer Guide 1 documentation

The nveglglessink is already deprecated from Orin platforms. But it still exists in dGPU platform.

There is no update from you for a period, assuming this is not an issue anymore. Hence we are closing this topic. If need further support, please open a new one. Thanks

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.