After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 754903 - eagl: crashes or no video display on reuse
eagl: crashes or no video display on reuse
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
1.5.90
Other Linux
: Normal blocker
: 1.6.0
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-09-11 20:12 UTC by Jan Schmidt
Modified: 2015-09-21 12:43 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Jan Schmidt 2015-09-11 20:12:51 UTC
I'm seeing crashes or no video output to the UIView when re-using a pipeline, or switching to a new one sometimes.

Some simple pipelines work fine:

rtspsrc location=rtsp://IP:PORT/test ! queue ! rtph264depay ! h264parse ! vtdec ! queue ! glimagesink

If I set that pipeline to NULL and back to PLAYING it works fine. If I play the same URI via playbin, it will crash on setting the state to PLAYING a 2nd time.

Also, if I use playbin to play, then set that pipe to NULL and recreate playbin, I don't get a crash, but the video never appears in the target window - it just disappears.

When it crashes, it is always here:

* thread #77: tid = 0x70fd8, 0x02aae3f0 libglInterpose.dylib`EAGLContext_renderbufferStorageFromDrawable(EAGLContext*, objc_selector*, unsigned int, id<EAGLDrawable>) + 204, name = 'gstglcontext', stop reason = EXC_BAD_ACCESS (code=1, address=0x103c)
    frame #0: 0x02aae3f0 libglInterpose.dylib`EAGLContext_renderbufferStorageFromDrawable(EAGLContext*, objc_selector*, unsigned int, id<EAGLDrawable>) + 204
  * frame #1: 0x00c6c37c ios-launch`gst_gl_context_eagl_update_layer(context=<unavailable>) + 192 at gstglcontext_eagl.m:179
    frame #2: 0x00c6bf56 ios-launch`gst_gl_window_eagl_set_window_handle(window=<unavailable>, handle=<unavailable>) + 46 at gstglwindow_eagl.m:116
    frame #3: 0x00c6914c ios-launch`_set_window_handle_cb(data=0x03259728) + 60 at gstglwindow.c:381
    frame #4: 0x00c69d9c ios-launch`_run_message_async(message=0x03291140) + 16 at gstglwindow.c:707
    frame #5: 0x00b21f94 ios-launch`g_main_context_dispatch + 164 at gmain.c:3210
    frame #6: 0x00b21ef0 ios-launch`g_main_context_dispatch(context=<unavailable>) + 28 at gmain.c:3874
    frame #7: 0x00b221c2 ios-launch`g_main_context_iterate(context=<unavailable>, block=<unavailable>, dispatch=<unavailable>, self=<unavailable>) + 306 at gmain.c:3945
    frame #8: 0x00b2237e ios-launch`g_main_loop_run(loop=0x05c8a9c0) + 178 at gmain.c:4139
    frame #9: 0x00c64ab8 ios-launch`gst_gl_context_create_thread(context=0x03245d60) + 468 at gstglcontext.c:1364
    frame #10: 0x00b133ea ios-launch`g_thread_proxy(data=0x03930c20) + 78 at gthread.c:764
    frame #11: 0x35c32dea libsystem_pthread.dylib`_pthread_body + 138
    frame #12: 0x35c32d5e libsystem_pthread.dylib`_pthread_start + 118
    frame #13: 0x35c30b08 libsystem_pthread.dylib`thread_start + 8
Comment 1 Matthew Waters (ystreet00) 2015-09-18 02:11:19 UTC
I cannot seem to reproduce with the latest git master at all on the simulator.  Are you testing on an actual device?
Comment 2 Jan Schmidt 2015-09-18 02:14:55 UTC
I'll re-test with git master - maybe vtdec or glimagesink changes fixed it.

I was testing on an ipad 2, yes.
Comment 3 Jan Schmidt 2015-09-21 12:43:42 UTC
Re-tested with 1.5.91 and it's not crashing now.