GNOME Bugzilla – Bug 749430
gltestsrc ! glimagesink crash on windows
Last modified: 2015-05-19 14:58:01 UTC
This is with gstreamer master (built the whole stack with cerbero yesterday). (gdb) r gltestsrc ! glimagesink Starting program: /cygdrive/c/Users/collabora/gst/bin/gst-launch-1.0.exe gltestsrc ! glimagesink [New Thread 3456.0x114] 0:00:00.000112649 3456 00000000002E4000 INFO GST_INIT gst.c:499:init_pre: Initializing GStreamer Core Library version 1.5.0.1 0:00:00.000260553 3456 00000000002E4000 INFO GST_INIT gst.c:500:init_pre: Using library installed in C:\Users\collabora\gst\lib 0:00:00.000598098 3456 00000000002E4000 INFO GST_INIT gstmessage.c:119:_priv_gst_message_initialize: init messages 0:00:00.001451077 3456 00000000002E4000 INFO GST_INIT gstcontext.c:77:_priv_gst_context_initialize: init contexts 0:00:00.004824902 3456 00000000002E4000 INFO GST_PLUGIN_LOADING gstplugin.c:317:_priv_gst_plugin_initialize: registering 0 static plugins 0:00:00.005072894 3456 00000000002E4000 INFO GST_PLUGIN_LOADING gstplugin.c:225:gst_plugin_register_static: registered static plugin "staticelements" 0:00:00.005176224 3456 00000000002E4000 INFO GST_PLUGIN_LOADING gstplugin.c:227:gst_plugin_register_static: added static plugin "staticelements", result: 1 [New Thread 3456.0x15c0] [New Thread 3456.0x1694] 0:00:00.144291200 3456 00000000002E4000 INFO GST_REGISTRY gstregistry.c:1722:ensure_current_registry: reading registry cache: C:\Users\collabora\AppData\Local\Microsoft\Windows\Temporary Internet Files\gstreamer-1.0\registry.x86_64.bin 0:00:00.164633024 3456 00000000002E4000 INFO GST_REGISTRY gstregistrybinary.c:619:priv_gst_registry_binary_read_cache: loaded C:\Users\collabora\AppData\Local\Microsoft\Windows\Temporary Internet Files\gstreamer-1.0\registry.x86_64.bin in 0.031000 seconds 0:00:00.164817802 3456 00000000002E4000 INFO GST_REGISTRY gstregistry.c:1578:scan_and_update_registry: Validating plugins from registry cache: C:\Users\collabora\AppData\Local\Microsoft\Windows\Temporary Internet Files\gstreamer-1.0\registry.x86_64.bin 0:00:00.190908015 3456 00000000002E4000 INFO GST_REGISTRY gstregistry.c:1680:scan_and_update_registry: Registry cache has not changed 0:00:00.191014586 3456 00000000002E4000 INFO GST_REGISTRY gstregistry.c:1757:ensure_current_registry: registry reading and updating done, result = 1 0:00:00.191120348 3456 00000000002E4000 INFO GST_INIT gst.c:709:init_post: GLib runtime version: 2.44.0 0:00:00.191198554 3456 00000000002E4000 INFO GST_INIT gst.c:711:init_post: GLib headers version: 2.44.0 0:00:00.191276761 3456 00000000002E4000 INFO GST_INIT gst.c:712:init_post: initialized GStreamer successfully 0:00:00.191365908 3456 00000000002E4000 INFO GST_PIPELINE gstparse.c:323:gst_parse_launch_full: parsing pipeline description 'gltestsrc ! glimagesink ' 0:00:00.697020692 3456 00000000002E4000 INFO GST_PLUGIN_LOADING gstplugin.c:835:gst_plugin_load_file: plugin "C:\Users\collabora\gst\lib\gstreamer-1.0\libgstopengl.dll" loaded 0:00:00.697183589 3456 00000000002E4000 INFO GST_ELEMENT_FACTORY gstelementfactory.c:364:gst_element_factory_create: creating element "gltestsrc" 0:00:00.697458325 3456 00000000002E4000 INFO GST_ELEMENT_PADS gstelement.c:646:gst_element_add_pad:<GstBaseSrc@0000000002CB7960> adding pad 'src' 0:00:00.697583942 3456 00000000002E4000 INFO GST_ELEMENT_FACTORY gstelementfactory.c:364:gst_element_factory_create: creating element "glimagesink" 0:00:00.697972949 3456 00000000002E4000 INFO GST_ELEMENT_FACTORY gstelementfactory.c:364:gst_element_factory_create: creating element "glupload" 0:00:00.698220130 3456 00000000002E4000 INFO GST_ELEMENT_PADS gstelement.c:646:gst_element_add_pad:<GstBaseTransform@0000000002CBF4C0> adding pad 'sink' 0:00:00.698354662 3456 00000000002E4000 INFO GST_ELEMENT_PADS gstelement.c:646:gst_element_add_pad:<GstBaseTransform@0000000002CBF4C0> adding pad 'src' 0:00:00.698434084 3456 00000000002E4000 INFO GST_ELEMENT_FACTORY gstelementfactory.c:364:gst_element_factory_create: creating element "glcolorconvert" 0:00:00.698620889 3456 00000000002E4000 INFO GST_ELEMENT_PADS gstelement.c:646:gst_element_add_pad:<GstBaseTransform@0000000002CC1F50> adding pad 'sink' 0:00:00.698739617 3456 00000000002E4000 INFO GST_ELEMENT_PADS gstelement.c:646:gst_element_add_pad:<GstBaseTransform@0000000002CC1F50> adding pad 'src' 0:00:00.698834843 3456 00000000002E4000 INFO GST_ELEMENT_PADS gstutils.c:1566:gst_element_link_pads_full: trying to link element gluploadelement0:src to element glcolorconvertelement0:sink 0:00:00.698893194 3456 00000000002E4000 INFO GST_ELEMENT_PADS gstelement.c:897:gst_element_get_static_pad: found pad gluploadelement0:src 0:00:00.698934931 3456 00000000002E4000 INFO GST_ELEMENT_PADS gstelement.c:897:gst_element_get_static_pad: found pad glcolorconvertelement0:sink 0:00:00.698977073 3456 00000000002E4000 INFO GST_PADS gstutils.c:1439:prepare_link_maybe_ghosting: gluploadelement0 and glcolorconvertelement0 in same bin, no need for ghost pads 0:00:00.699039071 3456 00000000002E4000 INFO GST_PADS gstpad.c:2224:gst_pad_link_prepare: trying to link gluploadelement0:src and glcolorconvertelement0:sink 0:00:00.699147264 3456 00000000002E4000 INFO GST_PADS gstpad.c:3953:gst_pad_peer_query:<gluploadelement0:sink> pad has no peer 0:00:00.699527761 3456 00000000002E4000 INFO GST_PADS gstpad.c:3953:gst_pad_peer_query:<glcolorconvertelement0:src> pad has no peer 0:00:00.699855581 3456 00000000002E4000 INFO GST_PADS gstpad.c:2430:gst_pad_link_full: linked gluploadelement0:src and glcolorconvertelement0:sink, successful 0:00:00.699994570 3456 00000000002E4000 INFO GST_EVENT gstevent.c:1374:gst_event_new_reconfigure: creating reconfigure event 0:00:00.700069940 3456 00000000002E4000 INFO GST_EVENT gstpad.c:5405:gst_pad_send_event_unchecked:<gluploadelement0:src> Received event on flushing pad. Discarding 0:00:00.700151793 3456 00000000002E4000 INFO GST_ELEMENT_PADS gstelement.c:897:gst_element_get_static_pad: found pad gluploadelement0:sink 0:00:00.700317121 3456 00000000002E4000 INFO GST_PADS gstpad.c:2224:gst_pad_link_prepare: trying to link sink:proxypad0 and gluploadelement0:sink 0:00:00.700431797 3456 00000000002E4000 INFO GST_PADS gstpad.c:2430:gst_pad_link_full: linked sink:proxypad0 and gluploadelement0:sink, successful 0:00:00.700502305 3456 00000000002E4000 INFO GST_EVENT gstevent.c:1374:gst_event_new_reconfigure: creating reconfigure event 0:00:00.700582943 3456 00000000002E4000 INFO GST_ELEMENT_PADS gstelement.c:646:gst_element_add_pad:<GstGLSinkBin@0000000002C9E020> adding pad 'sink' 0:00:00.700792844 3456 00000000002E4000 INFO GST_ELEMENT_PADS gstelement.c:646:gst_element_add_pad:<GstBaseSink@0000000002CC5030> adding pad 'sink' 0:00:00.700930618 3456 00000000002E4000 INFO GST_ELEMENT_PADS gstutils.c:1566:gst_element_link_pads_full: trying to link element glcolorconvertelement0:src to element sink:sink 0:00:00.700995047 3456 00000000002E4000 INFO GST_ELEMENT_PADS gstelement.c:897:gst_element_get_static_pad: found pad glcolorconvertelement0:src 0:00:00.701035974 3456 00000000002E4000 INFO GST_ELEMENT_PADS gstelement.c:897:gst_element_get_static_pad: found pad sink:sink 0:00:00.701074064 3456 00000000002E4000 INFO GST_PADS gstutils.c:1439:prepare_link_maybe_ghosting: glcolorconvertelement0 and sink in same bin, no need for ghost pads 0:00:00.701123500 3456 00000000002E4000 INFO GST_PADS gstpad.c:2224:gst_pad_link_prepare: trying to link glcolorconvertelement0:src and sink:sink 0:00:00.701189145 3456 00000000002E4000 INFO GST_PADS gstpad.c:3953:gst_pad_peer_query:<(NULL):sink> pad has no peer 0:00:00.701846810 3456 00000000002E4000 INFO GST_PADS gstpad.c:2430:gst_pad_link_full: linked glcolorconvertelement0:src and sink:sink, successful 0:00:00.701976074 3456 00000000002E4000 INFO GST_EVENT gstevent.c:1374:gst_event_new_reconfigure: creating reconfigure event 0:00:00.702060359 3456 00000000002E4000 INFO GST_EVENT gstpad.c:5405:gst_pad_send_event_unchecked:<glcolorconvertelement0:src> Received event on flushing pad. Discarding 0:00:00.702199348 3456 00000000002E4000 INFO GST_ELEMENT_FACTORY gstelementfactory.c:364:gst_element_factory_create: creating element "pipeline" 0:00:00.702366702 3456 00000000002E4000 INFO GST_PIPELINE grammar.y:571:gst_parse_perform_link: linking gltestsrc0:(any) to glimagesinkbin0:(any) (0/0) with caps "(NULL)" 0:00:00.702489077 3456 00000000002E4000 INFO GST_ELEMENT_PADS gstutils.c:1566:gst_element_link_pads_full: trying to link element gltestsrc0:(any) to element glimagesinkbin0:(any) 0:00:00.702558774 3456 00000000002E4000 INFO GST_PADS gstutils.c:932:gst_pad_check_link: trying to link gltestsrc0:src and glimagesinkbin0:sink 0:00:00.703355023 3456 00000000002E4000 INFO GST_PADS gstutils.c:1439:prepare_link_maybe_ghosting: gltestsrc0 and glimagesinkbin0 in same bin, no need for ghost pads 0:00:00.703500090 3456 00000000002E4000 INFO GST_PADS gstpad.c:2224:gst_pad_link_prepare: trying to link gltestsrc0:src and glimagesinkbin0:sink 0:00:00.704533795 3456 00000000002E4000 INFO GST_PADS gstpad.c:2430:gst_pad_link_full: linked gltestsrc0:src and glimagesinkbin0:sink, successful 0:00:00.704667921 3456 00000000002E4000 INFO GST_EVENT gstevent.c:1374:gst_event_new_reconfigure: creating reconfigure event 0:00:00.704758284 3456 00000000002E4000 INFO GST_EVENT gstpad.c:5405:gst_pad_send_event_unchecked:<gltestsrc0:src> Received event on flushing pad. Discarding Setting pipeline to PAUSED ... 0:00:00.705020054 3456 00000000002E4000 INFO GST_STATES gstbin.c:2230:gst_bin_element_set_state:<glimagesinkbin0> current NULL pending VOID_PENDING, desired next READY 0:00:00.705083267 3456 00000000002E4000 INFO GST_STATES gstbin.c:2230:gst_bin_element_set_state:<sink> current NULL pending VOID_PENDING, desired next READY 0:00:00.705180114 3456 00000000002E4000 INFO GST_CONTEXT gstglutils.c:503:pad_query:<sink:sink> pad peer query failed 0:00:00.705241301 3456 00000000002E4000 INFO GST_CONTEXT gstglutils.c:562:_gst_context_query:<sink> posting need context message 0:00:00.705293169 3456 00000000002E4000 INFO gldisplay gstgldisplay.c:162:gst_gl_display_new: creating a display, user choice:(NULL) (platform: (NULL)) 0:00:00.705344226 3456 00000000002E4000 WARN gldisplay gstgldisplay.c:188:gst_gl_display_new: Could not create display. user specified (NULL) (platform: (NULL)), creating dummy 0:00:00.705452419 3456 00000000002E4000 INFO GST_CONTEXT gstglutils.c:667:gst_gl_display_context_propagate:<sink> posting have context (00000000002E17E0) message with display (00000000002E9E30) 0:00:00.705599107 3456 00000000002E4000 INFO GST_CONTEXT gstglutils.c:503:pad_query:<sink:sink> pad peer query failed 0:00:00.705678124 3456 00000000002E4000 INFO GST_CONTEXT gstglutils.c:562:_gst_context_query:<sink> posting need context message 0:00:00.705754710 3456 00000000002E4000 INFO GST_STATES gstelement.c:2330:gst_element_continue_state:<sink> completed state change to READY 0:00:00.705824407 3456 00000000002E4000 INFO GST_STATES gstelement.c:2235:_priv_gst_element_state_changed:<sink> notifying about state-changed NULL to READY (VOID_PENDING pending) 0:00:00.705899372 3456 00000000002E4000 INFO GST_STATES gstbin.c:2684:gst_bin_change_state_func:<glimagesinkbin0> child 'sink' changed state to 2(READY) successfully 0:00:00.705976768 3456 00000000002E4000 INFO GST_STATES gstbin.c:2230:gst_bin_element_set_state:<glcolorconvertelement0> current NULL pending VOID_PENDING, desired next READY 0:00:00.706086986 3456 00000000002E4000 INFO GST_CONTEXT gstglutils.c:547:_gst_context_query:<glcolorconvertelement0> found context (00000000002E1780) in downstream query 0:00:00.706263660 3456 00000000002E4000 INFO GST_CONTEXT gstglutils.c:503:pad_query:<glcolorconvertelement0:src> pad peer query failed 0:00:00.706368611 3456 00000000002E4000 INFO GST_CONTEXT gstglutils.c:503:pad_query:<glcolorconvertelement0:sink> pad peer query failed 0:00:00.706446413 3456 00000000002E4000 INFO GST_CONTEXT gstglutils.c:562:_gst_context_query:<glcolorconvertelement0> posting need context message 0:00:00.706539207 3456 00000000002E4000 INFO GST_STATES gstelement.c:2330:gst_element_continue_state:<glcolorconvertelement0> completed state change to READY 0:00:00.706612956 3456 00000000002E4000 INFO GST_STATES gstelement.c:2235:_priv_gst_element_state_changed:<glcolorconvertelement0> notifying about state-changed NULL to READY (VOID_PENDING pending) 0:00:00.706690758 3456 00000000002E4000 INFO GST_STATES gstbin.c:2684:gst_bin_change_state_func:<glimagesinkbin0> child 'glcolorconvertelement0' changed state to 2(READY) successfully 0:00:00.706764912 3456 00000000002E4000 INFO GST_STATES gstbin.c:2230:gst_bin_element_set_state:<gluploadelement0> current NULL pending VOID_PENDING, desired next READY 0:00:00.706860948 3456 00000000002E4000 INFO GST_CONTEXT gstglutils.c:547:_gst_context_query:<gluploadelement0> found context (00000000002E1780) in downstream query 0:00:00.706965494 3456 00000000002E4000 INFO GST_CONTEXT gstglutils.c:503:pad_query:<gluploadelement0:src> pad peer query failed 0:00:00.707088274 3456 00000000002E4000 INFO GST_CONTEXT gstglutils.c:503:pad_query:<gluploadelement0:sink> pad peer query failed 0:00:00.707166886 3456 00000000002E4000 INFO GST_CONTEXT gstglutils.c:562:_gst_context_query:<gluploadelement0> posting need context message 0:00:00.707261706 3456 00000000002E4000 INFO GST_STATES gstelement.c:2330:gst_element_continue_state:<gluploadelement0> completed state change to READY 0:00:00.707318842 3456 00000000002E4000 INFO GST_STATES gstelement.c:2235:_priv_gst_element_state_changed:<gluploadelement0> notifying about state-changed NULL to READY (VOID_PENDING pending) 0:00:00.707396643 3456 00000000002E4000 INFO GST_STATES gstbin.c:2684:gst_bin_change_state_func:<glimagesinkbin0> child 'gluploadelement0' changed state to 2(READY) successfully 0:00:00.707499973 3456 00000000002E4000 INFO GST_STATES gstelement.c:2330:gst_element_continue_state:<glimagesinkbin0> completed state change to READY 0:00:00.707566023 3456 00000000002E4000 INFO GST_STATES gstelement.c:2235:_priv_gst_element_state_changed:<glimagesinkbin0> notifying about state-changed NULL to READY (VOID_PENDING pending) 0:00:00.707634505 3456 00000000002E4000 INFO GST_STATES gstbin.c:2684:gst_bin_change_state_func:<pipeline0> child 'glimagesinkbin0' changed state to 2(READY) successfully 0:00:00.707704607 3456 00000000002E4000 INFO GST_STATES gstbin.c:2230:gst_bin_element_set_state:<gltestsrc0> current NULL pending VOID_PENDING, desired next READY 0:00:00.707788892 3456 00000000002E4000 INFO GST_CONTEXT gstglutils.c:547:_gst_context_query:<gltestsrc0> found context (00000000002E1780) in downstream query 0:00:00.707899111 3456 00000000002E4000 INFO GST_CONTEXT gstglutils.c:503:pad_query:<gltestsrc0:src> pad peer query failed 0:00:00.708026348 3456 00000000002E4000 INFO GST_CONTEXT gstglutils.c:562:_gst_context_query:<gltestsrc0> posting need context message 0:00:00.708096856 3456 00000000002E4000 INFO GST_STATES gstelement.c:2330:gst_element_continue_state:<gltestsrc0> completed state change to READY 0:00:00.708170605 3456 00000000002E4000 INFO GST_STATES gstelement.c:2235:_priv_gst_element_state_changed:<gltestsrc0> notifying about state-changed NULL to READY (VOID_PENDING pending) 0:00:00.708251243 3456 00000000002E4000 INFO GST_STATES gstbin.c:2684:gst_bin_change_state_func:<pipeline0> child 'gltestsrc0' changed state to 2(READY) successfully 0:00:00.708319724 3456 00000000002E4000 INFO GST_STATES gstelement.c:2305:gst_element_continue_state:<pipeline0> committing state from NULL to READY, pending PAUSED, next PAUSED 0:00:00.708384964 3456 00000000002E4000 INFO GST_STATES gstelement.c:2235:_priv_gst_element_state_changed:<pipeline0> notifying about state-changed NULL to READY (PAUSED pending) 0:00:00.708587167 3456 00000000002E4000 INFO GST_STATES gstelement.c:2312:gst_element_continue_state:<pipeline0> continue state change READY to PAUSED, final PAUSED 0:00:00.708734260 3456 00000000002E4000 INFO GST_STATES gstbin.c:2230:gst_bin_element_set_state:<glimagesinkbin0> current READY pending VOID_PENDING, desired next PAUSED 0:00:00.708825433 3456 00000000002E4000 INFO GST_STATES gstbin.c:2230:gst_bin_element_set_state:<sink> current READY pending VOID_PENDING, desired next PAUSED 0:00:00.708911339 3456 00000000002E4000 INFO glcontext gstglcontext.c:280:gst_gl_context_new: creating a context for display <gldisplay0>, user choice:(null) 0:00:00.709060459 3456 00000000002E4000 INFO glwindow gstglwindow.c:212:gst_gl_window_new: creating a window, user choice:(null) [New Thread 3456.0x1698] [New Thread 3456.0x1104] 0:00:00.746759288 3456 0000000002C9C280 INFO glcontext gstglcontext.c:1269:gst_gl_context_create_thread:<glcontextwgl0> Attempting to create opengl context. user chosen api(s) (any), compiled api support (opengl opengl3) display api (opengl) 0:00:00.761953252 3456 0000000002C9C280 INFO glcontext gstglcontext.c:1280:gst_gl_context_create_thread:<glcontextwgl0> created context 0:00:00.762855262 3456 0000000002C9C280 INFO glcontext gstglcontext.c:1296:gst_gl_context_create_thread:<glcontextwgl0> available GL APIs: opengl 0:00:00.766021617 3456 0000000002C9C280 INFO glcontext gstglcontext.c:1111:_create_context_info:<glcontextwgl0> GL_VERSION: 2.1.0 - Build 8.15.10.2622 0:00:00.766091719 3456 0000000002C9C280 INFO glcontext gstglcontext.c:1114:_create_context_info:<glcontextwgl0> GL_SHADING_LANGUAGE_VERSION: 1.20 - Intel Build 8.15.10.2622 0:00:00.766136293 3456 0000000002C9C280 INFO glcontext gstglcontext.c:1116:_create_context_info:<glcontextwgl0> GL_VENDOR: Intel 0:00:00.766178841 3456 0000000002C9C280 INFO glcontext gstglcontext.c:1118:_create_context_info:<glcontextwgl0> GL_RENDERER: Intel(R) HD Graphics 0:00:00.877669459 3456 0000000002C9C280 INFO glwindow gstglwindow_win32.c:322:gst_gl_window_win32_run: begin message loop 0:00:00.877818173 3456 00000000002E4000 INFO glcontext gstglcontext.c:935:gst_gl_context_create:<glcontextwgl0> gl thread created 0:00:00.877940548 3456 00000000002E4000 INFO GST_STATES gstbin.c:2690:gst_bin_change_state_func:<glimagesinkbin0> child 'sink' is changing state asynchronously to PAUSED 0:00:00.878045094 3456 00000000002E4000 INFO GST_STATES gstbin.c:2230:gst_bin_element_set_state:<glcolorconvertelement0> current READY pending VOID_PENDING, desired next PAUSED 0:00:00.878107902 3456 00000000002E4000 INFO GST_STATES gstelement.c:2330:gst_element_continue_state:<glcolorconvertelement0> completed state change to PAUSED 0:00:00.878152476 3456 00000000002E4000 INFO GST_STATES gstelement.c:2235:_priv_gst_element_state_changed:<glcolorconvertelement0> notifying about state-changed READY to PAUSED (VOID_PENDING pending) 0:00:00.878208801 3456 00000000002E4000 INFO GST_STATES gstbin.c:2684:gst_bin_change_state_func:<glimagesinkbin0> child 'glcolorconvertelement0' changed state to 3(PAUSED) successfully 0:00:00.878261884 3456 00000000002E4000 INFO GST_STATES gstbin.c:2230:gst_bin_element_set_state:<gluploadelement0> current READY pending VOID_PENDING, desired next PAUSED 0:00:00.878313752 3456 00000000002E4000 INFO GST_STATES gstelement.c:2330:gst_element_continue_state:<gluploadelement0> completed state change to PAUSED 0:00:00.878356299 3456 00000000002E4000 INFO GST_STATES gstelement.c:2235:_priv_gst_element_state_changed:<gluploadelement0> notifying about state-changed READY to PAUSED (VOID_PENDING pending) 0:00:00.878405735 3456 00000000002E4000 INFO GST_STATES gstbin.c:2684:gst_bin_change_state_func:<glimagesinkbin0> child 'gluploadelement0' changed state to 3(PAUSED) successfully 0:00:00.878462060 3456 00000000002E4000 INFO GST_STATES gstbin.c:2690:gst_bin_change_state_func:<pipeline0> child 'glimagesinkbin0' is changing state asynchronously to PAUSED 0:00:00.878510686 3456 00000000002E4000 INFO GST_STATES gstbin.c:2230:gst_bin_element_set_state:<gltestsrc0> current READY pending VOID_PENDING, desired next PAUSED 0:00:00.878571063 3456 00000000002E4000 INFO basesrc gstbasesrc.c:1339:gst_base_src_do_seek:<gltestsrc0> seeking: time segment start=0:00:00.000000000, offset=0:00:00.000000000, stop=99:99:99.999999999, rate=1.000000, applied_rate=1.000000, flags=0x00, time=0:00:00.000000000, base=0:00:00.000000000, position 0:00:00.000000000, duration 99:99:99.999999999 0:00:00.878687766 3456 00000000002E4000 INFO task gsttask.c:446:gst_task_set_lock: setting stream lock 0000000002CB7E00 on task 0000000002CA6050 0:00:00.878743280 3456 00000000002E4000 INFO GST_PADS gstpad.c:5748:gst_pad_start_task:<gltestsrc0:src> created task 0000000002CA6050 [New Thread 3456.0x198] 0:00:00.879171188 3456 00000000002E4000 INFO GST_STATES gstelement.c:2330:gst_element_continue_state:<gltestsrc0> completed state change to PAUSED 0:00:00.879238048 3456 00000000002E4000 INFO GST_STATES gstelement.c:2235:_priv_gst_element_state_changed:<gltestsrc0> notifying about state-changed READY to PAUSED (VOID_PENDING pending) 0:00:00.879295589 3456 00000000002E4000 INFO GST_STATES gstbin.c:2684:gst_bin_change_state_func:<pipeline0> child 'gltestsrc0' changed state to 3(PAUSED) successfully Pipeline is PREROLLING ... 0:00:00.879442277 3456 0000000002C9C2C0 INFO GST_ELEMENT_PADS gstelement.c:894:gst_element_get_static_pad: no such pad 'sink' in element "gltestsrc0" 0:00:00.879590181 3456Got context from element 'sink': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplay\)\ gldisplay0"; 0000000002C9C2C0 FIXME default gstutils.c:3761:gst_pad_create_stream_id_internal:<gltestsrc0:src> Creating random stream-id, consider implementing a deterministic way of creating a stream-id 0:00:00.880218670 3456 0000000002C9C2C0 INFO GST_EVENT gstevent.c:679:gst_event_new_caps: creating caps event video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)320, height=(int)240, framerate=(fraction)30/1 0:00:00.881312752 3456 0000000002C9C2C0 INFO basetransform gstbasetransform.c:1371:gst_base_transform_setcaps:<gluploadelement0> reuse caps 0:00:00.881365430 3456 0000000002C9C2C0 INFO GST_EVENT gstevent.c:679:gst_event_new_caps: creating caps event video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)320, height=(int)240, framerate=(fraction)30/1 0:00:00.881947725 3456 0000000002C9C2C0 INFO basetransform gstbasetransform.c:1371:gst_base_transform_setcaps:<glcolorconvertelement0> reuse caps 0:00:00.882018638 3456 0000000002C9C2C0 INFO GST_EVENT gstevent.c:679:gst_event_new_caps: creating caps event video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)320, height=(int)240, framerate=(fraction)30/1 Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 3456.0x1104] 0x000000018003b5d5 in ?? () from /cygdrive/c/Windows/system32/ig4icd64.dll (gdb) t a a bt
+ Trace 235068
It could be a dup of bug #749284 but I'm not sure so I decided to report separately for now.
Note that videotestsrc ! glimagesink works.
Here is what I've found so far by debugging step by step in gdb: The backtrace says that in _gen_fbo data is 0x140 (suspicious ptr) and when it enters gst_gl_framebuffer_generate() frame is NULL. But that's actually a lie, when breaking at the beginning of gst_gl_framebuffer_generate() frame is a perfectly fine pointer and stack gets corrupted by the time it reach line 119. If frame wasn't correct it wouldn't get that far anyway since the function starts with g_return_val_if_fail (GST_IS_GL_FRAMEBUFFER (frame), FALSE); So there is something between line 90 and 119 that corrupt the stack...
The stack is actually still correct until line 119. It crash inside gl->RenderbufferStorage (GL_RENDERBUFFER, GL_DEPTH24_STENCIL8, width, height);
I have ~0 knowledge of GL, but is it normal that it calls RenderbufferStorage twice? gl->RenderbufferStorage (GL_RENDERBUFFER, GL_DEPTH_COMPONENT, width, height); gl->RenderbufferStorage (GL_RENDERBUFFER, GL_DEPTH24_STENCIL8, width, height); If I comment out the first call, it won't crash and it display the test frame. However the "snow" is not animated, but I think that's another bug.
Oh, and gstglcolorconvert::_init_convert_fbo() has almost the same code than gst_gl_framebuffer_generate() and has the exact same crash. That smell the copy/paste.
Hm, I just tested with vmware and it doesn't crash. So it could be intel driver, maybe.
@Xavier: indeed the first call to RenderbufferStorage should be redundant, since there is no other buffer bound via glBindRenderbuffer before the second call. https://www.khronos.org/opengles/sdk/docs/man/xhtml/glRenderbufferStorage.xml "Any existing data store for the renderbuffer is deleted" http://www.opengl-tutorial.org/intermediate-tutorials/tutorial-14-render-to-texture/
Created attachment 303601 [details] [review] gl: fix crash on windows with intel driver
Thanks for the patch! commit 7ca9f52ccb05a6adb0c93319775998bda1b5e2eb Author: Xavier Claessens <xavier.claessens@collabora.com> Date: Tue May 19 10:43:28 2015 -0400 gl: fix crash on windows with intel driver https://bugzilla.gnome.org/show_bug.cgi?id=749430