GNOME Bugzilla – Bug 768137
applemedia: Reproducible segfault with h264
Last modified: 2018-11-03 13:52:39 UTC
I'm currently attempting to export a h264 stream from the local network. I'm using a D-Link 5020L IPCamera streaming h264, from a MacOS X 10.11. Steps to reproduce: - gst-launch-1.0 --verbose uridecodebin uri=http://USER:PASS@10.243.30.114/h264.cgi ! udpsink host=127.0.0.1 port=8080 - wait 1 or 2 seconds. Output: $ ./stream.sh Setting pipeline to PAUSED ... /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0: source = "\(GstSoupHTTPSrc\)\ source" Pipeline is PREROLLING ... /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstTypeFindElement:typefindelement0.GstPad:src: caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream" /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind: force-caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream" /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0: sink-caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream" /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstQueue2:queue2-0.GstPad:src: caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream" /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstQueue2:queue2-0.GstPad:src: caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream" /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0.GstGhostPad:sink.GstProxyPad:proxypad0: caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream" /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:src: caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream" /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstH264Parse:h264parse0.GstPad:sink: caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream" /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:sink: caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream" /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0.GstGhostPad:sink: caps = "video/x-h264\,\ stream-format\=\(string\)byte-stream" /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstH264Parse:h264parse0.GstPad:src: caps = "video/x-h264\,\ stream-format\=\(string\)avc\,\ width\=\(int\)640\,\ height\=\(int\)480\,\ framerate\=\(fraction\)0/1\,\ parsed\=\(boolean\)true\,\ alignment\=\(string\)au\,\ profile\=\(string\)baseline\,\ level\=\(string\)3\,\ codec_data\=\(buffer\)0142001effe100136742001ea9501407b42000007d00001d4c008001000468ce3c80" Got context from element 'vtdechw0': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayCocoa\)\ gldisplaycocoa0"; /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstVtdecHw:vtdechw0.GstPad:src: caps = "video/x-raw\(memory:GLMemory\)\,\ format\=\(string\)NV12\,\ width\=\(int\)640\,\ height\=\(int\)480\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)jpeg\,\ colorimetry\=\(string\)bt601\,\ framerate\=\(fraction\)0/1\,\ texture-target\=\(string\)rectangle" /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstVtdecHw:vtdechw0.GstPad:sink: caps = "video/x-h264\,\ stream-format\=\(string\)avc\,\ width\=\(int\)640\,\ height\=\(int\)480\,\ framerate\=\(fraction\)0/1\,\ parsed\=\(boolean\)true\,\ alignment\=\(string\)au\,\ profile\=\(string\)baseline\,\ level\=\(string\)3\,\ codec_data\=\(buffer\)0142001effe100136742001ea9501407b42000007d00001d4c008001000468ce3c80" /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstCapsFilter:capsfilter0.GstPad:src: caps = "video/x-h264\,\ stream-format\=\(string\)avc\,\ width\=\(int\)640\,\ height\=\(int\)480\,\ framerate\=\(fraction\)0/1\,\ parsed\=\(boolean\)true\,\ alignment\=\(string\)au\,\ profile\=\(string\)baseline\,\ level\=\(string\)3\,\ codec_data\=\(buffer\)0142001effe100136742001ea9501407b42000007d00001d4c008001000468ce3c80" /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstCapsFilter:capsfilter0.GstPad:sink: caps = "video/x-h264\,\ stream-format\=\(string\)avc\,\ width\=\(int\)640\,\ height\=\(int\)480\,\ framerate\=\(fraction\)0/1\,\ parsed\=\(boolean\)true\,\ alignment\=\(string\)au\,\ profile\=\(string\)baseline\,\ level\=\(string\)3\,\ codec_data\=\(buffer\)0142001effe100136742001ea9501407b42000007d00001d4c008001000468ce3c80" /GstPipeline:pipeline0/GstUDPSink:udpsink0.GstPad:sink: caps = "video/x-raw\(memory:GLMemory\)\,\ format\=\(string\)NV12\,\ width\=\(int\)640\,\ height\=\(int\)480\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)jpeg\,\ colorimetry\=\(string\)bt601\,\ framerate\=\(fraction\)0/1\,\ texture-target\=\(string\)rectangle" /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0.GstGhostPad:src_0.GstProxyPad:proxypad2: caps = "video/x-raw\(memory:GLMemory\)\,\ format\=\(string\)NV12\,\ width\=\(int\)640\,\ height\=\(int\)480\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)jpeg\,\ colorimetry\=\(string\)bt601\,\ framerate\=\(fraction\)0/1\,\ texture-target\=\(string\)rectangle" /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstQueue2:queue2-0: max-size-bytes = 1479060 Prerolled, waiting for buffering to finish... Pipeline is PREROLLED ... Setting pipeline to PLAYING ... New clock: GstSystemClock Caught SIGSEGV exec gdb failed: No such file or directory Spinning. Please run 'gdb gst-launch-1.0 79952' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core. LLDB stack: bt * thread #1: tid = 0x391d13, 0x00007fff94ce1f72 libsystem_kernel.dylib`mach_msg_trap + 10, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP * frame #0: 0x00007fff94ce1f72 libsystem_kernel.dylib`mach_msg_trap + 10 frame #1: 0x00007fff94ce13b3 libsystem_kernel.dylib`mach_msg + 55 frame #2: 0x00007fff986c21c4 CoreFoundation`__CFRunLoopServiceMachPort + 212 frame #3: 0x00007fff986c168c CoreFoundation`__CFRunLoopRun + 1356 frame #4: 0x00007fff986c0ed8 CoreFoundation`CFRunLoopRunSpecific + 296 frame #5: 0x00007fff8b1d6935 HIToolbox`RunCurrentEventLoopInMode + 235 frame #6: 0x00007fff8b1d676f HIToolbox`ReceiveNextEventCommon + 432 frame #7: 0x00007fff8b1d65af HIToolbox`_BlockUntilNextEventMatchingListInModeWithFilter + 71 frame #8: 0x00007fff97124df6 AppKit`_DPSNextEvent + 1067 frame #9: 0x00007fff97124226 AppKit`-[NSApplication _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 454 frame #10: 0x0000000106200161 libgstgl-1.0.0.dylib`gst_gl_display_cocoa_nsapp_iteration + 204 frame #11: 0x0000000101951c8e libglib-2.0.0.dylib`g_timeout_dispatch + 23 frame #12: 0x00000001019547ae libglib-2.0.0.dylib`g_main_context_dispatch + 276 frame #13: 0x0000000101954a98 libglib-2.0.0.dylib`g_main_context_iterate + 413 frame #14: 0x0000000101954cee libglib-2.0.0.dylib`g_main_loop_run + 207 frame #15: 0x00000001017a38ee libgstreamer-1.0.0.dylib`gst_bus_poll + 286 frame #16: 0x000000010178420a gst-launch-1.0`event_loop + 3271 frame #17: 0x0000000101782f96 gst-launch-1.0`main + 2010 frame #18: 0x00007fff98ab25ad libdyld.dylib`start + 1 frame #19: 0x00007fff98ab25ad libdyld.dylib`start + 1 Unfortunately, Ctrl+\ doesn't seem to coredump, so I can't attach more details atm.
Note that the following command-line works: gst-launch-1.0 --verbose \ playbin uri=http://USER:PASS@10.243.30.114/h264.cgi use-buffering=true
Forgot to mention: $ gst-launch-1.0 --version gst-launch-1.0 version 1.8.1 GStreamer 1.8.1 Unknown package origin
Please get a backtrace of all threads when it crashes, e.g. with gdb/lldb. What you pasted does not contain the thread that actually crashed. Also this seems completely unrelated to RTP :)
(lldb) bt all * thread #1: tid = 0x3961a6, 0x00007fff94ce1f72 libsystem_kernel.dylib`mach_msg_trap + 10, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP * frame #0: 0x00007fff94ce1f72 libsystem_kernel.dylib`mach_msg_trap + 10 frame #1: 0x00007fff94ce13b3 libsystem_kernel.dylib`mach_msg + 55 frame #2: 0x00007fff986c21c4 CoreFoundation`__CFRunLoopServiceMachPort + 212 frame #3: 0x00007fff986c168c CoreFoundation`__CFRunLoopRun + 1356 frame #4: 0x00007fff986c0ed8 CoreFoundation`CFRunLoopRunSpecific + 296 frame #5: 0x00007fff8b1d6935 HIToolbox`RunCurrentEventLoopInMode + 235 frame #6: 0x00007fff8b1d676f HIToolbox`ReceiveNextEventCommon + 432 frame #7: 0x00007fff8b1d65af HIToolbox`_BlockUntilNextEventMatchingListInModeWithFilter + 71 frame #8: 0x00007fff97124df6 AppKit`_DPSNextEvent + 1067 frame #9: 0x00007fff97124226 AppKit`-[NSApplication _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 454 frame #10: 0x00000001102ed161 libgstgl-1.0.0.dylib`gst_gl_display_cocoa_nsapp_iteration + 204 frame #11: 0x000000010ba4cc8e libglib-2.0.0.dylib`g_timeout_dispatch + 23 frame #12: 0x000000010ba4f7ae libglib-2.0.0.dylib`g_main_context_dispatch + 276 frame #13: 0x000000010ba4fa98 libglib-2.0.0.dylib`g_main_context_iterate + 413 frame #14: 0x000000010ba4fcee libglib-2.0.0.dylib`g_main_loop_run + 207 frame #15: 0x000000010b8a08ee libgstreamer-1.0.0.dylib`gst_bus_poll + 286 frame #16: 0x000000010b87f20a gst-launch-1.0`event_loop + 3271 frame #17: 0x000000010b87df96 gst-launch-1.0`main + 2010 frame #18: 0x00007fff98ab25ad libdyld.dylib`start + 1 thread #2: tid = 0x3961a9, 0x00007fff94ce8efa libsystem_kernel.dylib`kevent_qos + 10, queue = 'com.apple.libdispatch-manager' frame #0: 0x00007fff94ce8efa libsystem_kernel.dylib`kevent_qos + 10 frame #1: 0x00007fff8683f165 libdispatch.dylib`_dispatch_mgr_invoke + 216 frame #2: 0x00007fff8683edcd libdispatch.dylib`_dispatch_mgr_thread + 52 thread #3: tid = 0x3961ab, 0x00007fff94ce85e2 libsystem_kernel.dylib`__workq_kernreturn + 10 frame #0: 0x00007fff94ce85e2 libsystem_kernel.dylib`__workq_kernreturn + 10 frame #1: 0x00007fff957eb578 libsystem_pthread.dylib`_pthread_wqthread + 1283 frame #2: 0x00007fff957e9341 libsystem_pthread.dylib`start_wqthread + 13 thread #4: tid = 0x3961ae, 0x00007fff94ce807a libsystem_kernel.dylib`__select + 10, name = 'gmain' frame #0: 0x00007fff94ce807a libsystem_kernel.dylib`__select + 10 frame #1: 0x000000010ba5af33 libglib-2.0.0.dylib`g_poll + 399 frame #2: 0x000000010ba4fa41 libglib-2.0.0.dylib`g_main_context_iterate + 326 frame #3: 0x000000010ba4faf0 libglib-2.0.0.dylib`g_main_context_iteration + 55 frame #4: 0x000000010ba50bd1 libglib-2.0.0.dylib`glib_worker_main + 53 frame #5: 0x000000010ba701ed libglib-2.0.0.dylib`g_thread_proxy + 90 frame #6: 0x00007fff957eb99d libsystem_pthread.dylib`_pthread_body + 131 frame #7: 0x00007fff957eb91a libsystem_pthread.dylib`_pthread_start + 168 frame #8: 0x00007fff957e9351 libsystem_pthread.dylib`thread_start + 13 thread #5: tid = 0x3961af, 0x00007fff94ce7db6 libsystem_kernel.dylib`__psynch_cvwait + 10, name = 'pool' frame #0: 0x00007fff94ce7db6 libsystem_kernel.dylib`__psynch_cvwait + 10 frame #1: 0x00007fff957ec75e libsystem_pthread.dylib`_pthread_cond_wait + 821 frame #2: 0x000000010ba8a70f libglib-2.0.0.dylib`g_cond_wait_until + 129 frame #3: 0x000000010ba29281 libglib-2.0.0.dylib`g_async_queue_pop_intern_unlocked + 89 frame #4: 0x000000010ba29400 libglib-2.0.0.dylib`g_async_queue_timeout_pop + 46 frame #5: 0x000000010ba70fdb libglib-2.0.0.dylib`g_thread_pool_thread_proxy + 367 frame #6: 0x000000010ba701ed libglib-2.0.0.dylib`g_thread_proxy + 90 frame #7: 0x00007fff957eb99d libsystem_pthread.dylib`_pthread_body + 131 frame #8: 0x00007fff957eb91a libsystem_pthread.dylib`_pthread_start + 168 frame #9: 0x00007fff957e9351 libsystem_pthread.dylib`thread_start + 13 thread #6: tid = 0x3961b4, 0x00007fff94ce7db6 libsystem_kernel.dylib`__psynch_cvwait + 10, name = 'source:src' frame #0: 0x00007fff94ce7db6 libsystem_kernel.dylib`__psynch_cvwait + 10 frame #1: 0x00007fff957ec728 libsystem_pthread.dylib`_pthread_cond_wait + 767 frame #2: 0x000000010ba8a577 libglib-2.0.0.dylib`g_cond_wait + 46 frame #3: 0x000000010ce5b5dc libgstcoreelements.so`gst_queue2_chain_buffer_or_buffer_list + 958 frame #4: 0x000000010b8ce70a libgstreamer-1.0.0.dylib`gst_pad_chain_data_unchecked + 205 frame #5: 0x000000010b8cf085 libgstreamer-1.0.0.dylib`gst_pad_push_data + 204 frame #6: 0x000000010b8ceed2 libgstreamer-1.0.0.dylib`gst_pad_push + 269 frame #7: 0x000000010b8ce70a libgstreamer-1.0.0.dylib`gst_pad_chain_data_unchecked + 205 frame #8: 0x000000010b8cf085 libgstreamer-1.0.0.dylib`gst_pad_push_data + 204 frame #9: 0x000000010b8ceed2 libgstreamer-1.0.0.dylib`gst_pad_push + 269 frame #10: 0x000000010c8ffc6f libgstbase-1.0.0.dylib`gst_base_src_loop + 2195 frame #11: 0x000000010b8fa6f4 libgstreamer-1.0.0.dylib`gst_task_func + 339 frame #12: 0x000000010ba70e91 libglib-2.0.0.dylib`g_thread_pool_thread_proxy + 37 frame #13: 0x000000010ba701ed libglib-2.0.0.dylib`g_thread_proxy + 90 frame #14: 0x00007fff957eb99d libsystem_pthread.dylib`_pthread_body + 131 frame #15: 0x00007fff957eb91a libsystem_pthread.dylib`_pthread_start + 168 frame #16: 0x00007fff957e9351 libsystem_pthread.dylib`thread_start + 13 thread #7: tid = 0x3961b5, 0x00007fff94ce7db6 libsystem_kernel.dylib`__psynch_cvwait + 10, name = 'queue2-0:src' frame #0: 0x00007fff94ce7db6 libsystem_kernel.dylib`__psynch_cvwait + 10 frame #1: 0x00007fff957ec728 libsystem_pthread.dylib`_pthread_cond_wait + 767 frame #2: 0x000000010ba8a577 libglib-2.0.0.dylib`g_cond_wait + 46 frame #3: 0x00000001102e1705 libgstgl-1.0.0.dylib`gst_gl_window_default_send_message + 106 frame #4: 0x00000001102cb0b5 libgstgl-1.0.0.dylib`gst_gl_context_thread_add + 203 frame #5: 0x00000001102ccc5c libgstgl-1.0.0.dylib`_mem_free + 43 frame #6: 0x000000010b8c5ebe libgstreamer-1.0.0.dylib`_gst_memory_free + 69 frame #7: 0x000000010b89cbeb libgstreamer-1.0.0.dylib`_gst_buffer_free + 145 frame #8: 0x000000010c8ee307 libgstbase-1.0.0.dylib`gst_base_sink_set_last_buffer_unlocked + 125 frame #9: 0x000000010c8efd02 libgstbase-1.0.0.dylib`gst_base_sink_set_last_buffer + 58 frame #10: 0x000000010c8f5c1f libgstbase-1.0.0.dylib`gst_base_sink_chain_unlocked + 2260 frame #11: 0x000000010c8fa14f libgstbase-1.0.0.dylib`gst_base_sink_chain_main + 68 frame #12: 0x000000010b8ce70a libgstreamer-1.0.0.dylib`gst_pad_chain_data_unchecked + 205 frame #13: 0x000000010b8cf085 libgstreamer-1.0.0.dylib`gst_pad_push_data + 204 frame #14: 0x000000010b8ceed2 libgstreamer-1.0.0.dylib`gst_pad_push + 269 frame #15: 0x000000010b8bcab6 libgstreamer-1.0.0.dylib`gst_proxy_pad_chain_default + 103 frame #16: 0x000000010b8ce70a libgstreamer-1.0.0.dylib`gst_pad_chain_data_unchecked + 205 frame #17: 0x000000010b8cf085 libgstreamer-1.0.0.dylib`gst_pad_push_data + 204 frame #18: 0x000000010b8ceed2 libgstreamer-1.0.0.dylib`gst_pad_push + 269 frame #19: 0x000000010b8bcab6 libgstreamer-1.0.0.dylib`gst_proxy_pad_chain_default + 103 frame #20: 0x000000010b8ce70a libgstreamer-1.0.0.dylib`gst_pad_chain_data_unchecked + 205 frame #21: 0x000000010b8cf085 libgstreamer-1.0.0.dylib`gst_pad_push_data + 204 frame #22: 0x000000010b8ceed2 libgstreamer-1.0.0.dylib`gst_pad_push + 269 frame #23: 0x000000010c82553f libgstvideo-1.0.0.dylib`gst_video_decoder_clip_and_push_buf + 276 frame #24: 0x000000010c824dd6 libgstvideo-1.0.0.dylib`gst_video_decoder_finish_frame + 672 frame #25: 0x0000000110299eca libgstapplemedia.so`gst_vtdec_push_frames_if_needed + 270 frame #26: 0x0000000110299694 libgstapplemedia.so`gst_vtdec_handle_frame + 92 frame #27: 0x000000010c8268c8 libgstvideo-1.0.0.dylib`gst_video_decoder_decode_frame + 448 frame #28: 0x000000010c82cc9c libgstvideo-1.0.0.dylib`gst_video_decoder_chain_forward + 316 frame #29: 0x000000010c82d3d3 libgstvideo-1.0.0.dylib`gst_video_decoder_chain + 482 frame #30: 0x000000010b8ce70a libgstreamer-1.0.0.dylib`gst_pad_chain_data_unchecked + 205 frame #31: 0x000000010b8cf085 libgstreamer-1.0.0.dylib`gst_pad_push_data + 204 frame #32: 0x000000010b8ceed2 libgstreamer-1.0.0.dylib`gst_pad_push + 269 frame #33: 0x000000010c907a8a libgstbase-1.0.0.dylib`gst_base_transform_chain + 652 frame #34: 0x000000010b8ce70a libgstreamer-1.0.0.dylib`gst_pad_chain_data_unchecked + 205 frame #35: 0x000000010b8cf085 libgstreamer-1.0.0.dylib`gst_pad_push_data + 204 frame #36: 0x000000010b8ceed2 libgstreamer-1.0.0.dylib`gst_pad_push + 269 frame #37: 0x000000010c8e1b52 libgstbase-1.0.0.dylib`gst_base_parse_push_frame + 1504 frame #38: 0x000000010c8e3885 libgstbase-1.0.0.dylib`gst_base_parse_finish_frame + 814 frame #39: 0x00000001101ff017 libgstvideoparsersbad.so`gst_h264_parse_handle_frame + 3112 frame #40: 0x000000010c8ea374 libgstbase-1.0.0.dylib`gst_base_parse_handle_buffer + 397 frame #41: 0x000000010c8e97fe libgstbase-1.0.0.dylib`gst_base_parse_chain + 998 frame #42: 0x000000010b8ce70a libgstreamer-1.0.0.dylib`gst_pad_chain_data_unchecked + 205 frame #43: 0x000000010b8cf085 libgstreamer-1.0.0.dylib`gst_pad_push_data + 204 frame #44: 0x000000010b8ceed2 libgstreamer-1.0.0.dylib`gst_pad_push + 269 frame #45: 0x000000010b8ce70a libgstreamer-1.0.0.dylib`gst_pad_chain_data_unchecked + 205 frame #46: 0x000000010b8cf085 libgstreamer-1.0.0.dylib`gst_pad_push_data + 204 frame #47: 0x000000010b8ceed2 libgstreamer-1.0.0.dylib`gst_pad_push + 269 frame #48: 0x000000010b8bcab6 libgstreamer-1.0.0.dylib`gst_proxy_pad_chain_default + 103 frame #49: 0x000000010b8ce70a libgstreamer-1.0.0.dylib`gst_pad_chain_data_unchecked + 205 frame #50: 0x000000010b8cf085 libgstreamer-1.0.0.dylib`gst_pad_push_data + 204 frame #51: 0x000000010b8ceed2 libgstreamer-1.0.0.dylib`gst_pad_push + 269 frame #52: 0x000000010ce5e8c0 libgstcoreelements.so`gst_queue2_loop + 909 frame #53: 0x000000010b8fa6f4 libgstreamer-1.0.0.dylib`gst_task_func + 339 frame #54: 0x000000010ba70e91 libglib-2.0.0.dylib`g_thread_pool_thread_proxy + 37 frame #55: 0x000000010ba701ed libglib-2.0.0.dylib`g_thread_proxy + 90 frame #56: 0x00007fff957eb99d libsystem_pthread.dylib`_pthread_body + 131 frame #57: 0x00007fff957eb91a libsystem_pthread.dylib`_pthread_start + 168 frame #58: 0x00007fff957e9351 libsystem_pthread.dylib`thread_start + 13 thread #8: tid = 0x3961b8, 0x00007fff94ce7db6 libsystem_kernel.dylib`__psynch_cvwait + 10 frame #0: 0x00007fff94ce7db6 libsystem_kernel.dylib`__psynch_cvwait + 10 frame #1: 0x00007fff957ec728 libsystem_pthread.dylib`_pthread_cond_wait + 767 frame #2: 0x00007fff99877f33 AppleGVA`___lldb_unnamed_function913$$AppleGVA + 1079 frame #3: 0x00007fff99877af5 AppleGVA`___lldb_unnamed_function912$$AppleGVA + 9 frame #4: 0x00007fff957eb99d libsystem_pthread.dylib`_pthread_body + 131 frame #5: 0x00007fff957eb91a libsystem_pthread.dylib`_pthread_start + 168 frame #6: 0x00007fff957e9351 libsystem_pthread.dylib`thread_start + 13 thread #9: tid = 0x3961c7, 0x00007fff94ce85e2 libsystem_kernel.dylib`__workq_kernreturn + 10 frame #0: 0x00007fff94ce85e2 libsystem_kernel.dylib`__workq_kernreturn + 10 frame #1: 0x00007fff957eb578 libsystem_pthread.dylib`_pthread_wqthread + 1283 frame #2: 0x00007fff957e9341 libsystem_pthread.dylib`start_wqthread + 13 thread #10: tid = 0x3961c9, 0x00007fff94ce807a libsystem_kernel.dylib`__select + 10, name = 'gstglnavigation' frame #0: 0x00007fff94ce807a libsystem_kernel.dylib`__select + 10 frame #1: 0x000000010ba5af33 libglib-2.0.0.dylib`g_poll + 399 frame #2: 0x000000010ba4fa41 libglib-2.0.0.dylib`g_main_context_iterate + 326 frame #3: 0x000000010ba4fcee libglib-2.0.0.dylib`g_main_loop_run + 207 frame #4: 0x00000001102e0620 libgstgl-1.0.0.dylib`gst_gl_window_navigation_thread + 177 frame #5: 0x000000010ba701ed libglib-2.0.0.dylib`g_thread_proxy + 90 frame #6: 0x00007fff957eb99d libsystem_pthread.dylib`_pthread_body + 131 frame #7: 0x00007fff957eb91a libsystem_pthread.dylib`_pthread_start + 168 frame #8: 0x00007fff957e9351 libsystem_pthread.dylib`thread_start + 13 thread #11: tid = 0x3961ca, 0x00007fff94ce810a libsystem_kernel.dylib`__semwait_signal + 10, name = 'gstglcontext' frame #0: 0x00007fff94ce810a libsystem_kernel.dylib`__semwait_signal + 10 frame #1: 0x00007fff93b0ad17 libsystem_c.dylib`nanosleep + 199 frame #2: 0x000000010ba712aa libglib-2.0.0.dylib`g_usleep + 69 frame #3: 0x000000010b87f47f gst-launch-1.0`fault_handler_sighandler + 218 frame #4: 0x00007fff8acc552a libsystem_platform.dylib`_sigtramp + 26 frame #5: 0x00007fff93695f85 IOSurface`IOSurfaceDecrementUseCount + 10 frame #6: 0x000000011028b5dc libgstapplemedia.so`_io_surface_memory_destroy + 39 frame #7: 0x00000001102ccd6e libgstgl-1.0.0.dylib`_destroy_gl_objects + 33 frame #8: 0x00000001102e1910 libgstgl-1.0.0.dylib`_run_message_sync + 29 frame #9: 0x00000001102e1945 libgstgl-1.0.0.dylib`_run_message_async + 23 frame #10: 0x000000010ba4f7ae libglib-2.0.0.dylib`g_main_context_dispatch + 276 frame #11: 0x000000010ba4fa98 libglib-2.0.0.dylib`g_main_context_iterate + 413 frame #12: 0x000000010ba4fcee libglib-2.0.0.dylib`g_main_loop_run + 207 frame #13: 0x00000001102ca0b2 libgstgl-1.0.0.dylib`gst_gl_context_create_thread + 585 frame #14: 0x000000010ba701ed libglib-2.0.0.dylib`g_thread_proxy + 90 frame #15: 0x00007fff957eb99d libsystem_pthread.dylib`_pthread_body + 131 frame #16: 0x00007fff957eb91a libsystem_pthread.dylib`_pthread_start + 168 frame #17: 0x00007fff957e9351 libsystem_pthread.dylib`thread_start + 13
Also, with gst-debug, I get the following warnings that might be related: 0:00:02.620001000 80224 0x7ff2e28a7ad0 WARN multiudpsink gstmultiudpsink.c:715:gst_multiudpsink_send_messages:<udpsink0> warning: Attempting to send a UDP packets larger than maximum size (460800 > 65507) 0:00:02.620022000 80224 0x7ff2e28a7ad0 WARN multiudpsink gstmultiudpsink.c:715:gst_multiudpsink_send_messages:<udpsink0> warning: Reason: Error sending message: Message too long
(In reply to David Rajchenbach-Teller (please use "needinfo") from comment #5) > Also, with gst-debug, I get the following warnings that might be related: > > 0:00:02.620001000 80224 0x7ff2e28a7ad0 WARN multiudpsink > gstmultiudpsink.c:715:gst_multiudpsink_send_messages:<udpsink0> warning: > Attempting to send a UDP packets larger than maximum size (460800 > 65507) > 0:00:02.620022000 80224 0x7ff2e28a7ad0 WARN multiudpsink > gstmultiudpsink.c:715:gst_multiudpsink_send_messages:<udpsink0> warning: > Reason: Error sending message: Message too long Well, that's a problem but shouldn't cause a crash. Instead of sending raw h264 over UDP you need to somehow split it into separate packets, e.g. by using RTP. You can't send infinite sized packets over UDP.
The actual problem is some refcounting problem with IOSurfaces though. This might be fixed with 1.8.2 already, there were some related changes. Can you check?
Same crash (afaict) with 1.8.2.
Thanks for testing. Can you also get a debug log with GST_DEBUG=6 and attach it here? Without the applemedia plugin this will also not crash if you need a fast workaround.
Created attachment 330492 [details] GST_DEBUG=6 logs
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/403.