[Bug 785518] rpi, gl: eglCreateImageKHR failing

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Mon Jul 31 13:30:28 UTC 2017


https://bugzilla.gnome.org/show_bug.cgi?id=785518

--- Comment #6 from Guillaume Desmottes <gdesmott at gnome.org> ---
(In reply to Julien Isorce from comment #5)
> Great! Could you check if the assert "CRITICAL **: gst_egl_image_get_image:"
> comes from the call of gst_gl_memory_egl_get_image from gstomxvideodec.c ?

Looks like it:

0  raise (sig=<optimized out>) at ../sysdeps/unix/sysv/linux/raise.c:51
#1  0x76d745c0 in g_logv () from /lib/arm-linux-gnueabihf/libglib-2.0.so.0
#2  0x76d7468c in g_log () from /lib/arm-linux-gnueabihf/libglib-2.0.so.0
#3  0x76d74b68 in g_return_if_fail_warning () from
/lib/arm-linux-gnueabihf/libglib-2.0.so.0
#4  0x7638fc14 in gst_egl_image_get_image (image=0x0) at
../subprojects/gst-plugins-bad/gst-libs/gst/gl/egl/gsteglimage.c:113
#5  0x76393d34 in gst_gl_memory_egl_get_image (mem=0x126c00) at
../subprojects/gst-plugins-bad/gst-libs/gst/gl/egl/gstglmemoryegl.c:88
#6  0x763c8c58 in gst_omx_video_dec_allocate_output_buffers (self=0x70a19c28,
self at entry=0xfe280) at ../omx/gstomxvideodec.c:687
#7  0x763cc4b8 in gst_omx_video_dec_reconfigure_output_port (self=0xfe280) at
../omx/gstomxvideodec.c:1167
#8  gst_omx_video_dec_loop (self=0xfe280) at ../omx/gstomxvideodec.c:1432
#9  0x76f3a530 in gst_task_func (task=0x1386b8) at
../subprojects/gstreamer/gst/gsttask.c:332
#10 0x76f3bbf0 in default_func (tdata=0x73703560, pool=0x30c58) at
../subprojects/gstreamer/gst/gsttaskpool.c:69
#11 0x76d98324 in ?? () from /lib/arm-linux-gnueabihf/libglib-2.0.so.0

> If yes then there is a bug in GstGL because it means that
> gstomxvideodec.c::gst_buffer_pool_acquire_buffer succeeded. So I think
> GstGL's gst_gl_buffer_pool_alloc should not return GST_FLOW_OK in this case.

Indeed, looks like acquire_buffer() succeeded.

> Also I wonder how we could improve the out of mem detection.
> There is the message "eglCreateImageKHR:  failed to create image for buffer
> 0x1 target 12465 error 0x300c", but it is not from GstGL right ?
> 0x300c -> EGL_BAD_PARAMETER

I'm not sure where it's from actually; I'm not familiar with GstGL.
Here are the logs:

0:00:04.011831351 11665  0x1e6c000 LOG                gldisplay
gstgldisplay_egl.c:252:gst_gl_display_egl_from_gl_display:<gldisplayegl0>
display <gldisplayegl0>is already a GstGLDisplayEGL
eglCreateImageKHR:  failed to create image for buffer 0x1 target 12465 error
0x300c
0:00:04.012813011 11665  0x1e6c000 ERROR           glbasememory
gstglbasememory.c:97:_mem_create_gl: Failed to create GL buffer: Failed to
create EGLImage
0:00:04.012952593 11665 0x70a02090 ERROR           glbasememory
gstglbasememory.c:171:gst_gl_base_memory_init: Could not create GL buffer with
context:0x1e75880


> Can you count how many times gl->GenFramebuffers is called ? If 0
> then not a duplicate.
> (also note that the hw decoder also uses some gpu mem)

Looks like it's not called.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list