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 768137 - applemedia: Reproducible segfault with h264
applemedia: Reproducible segfault with h264
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
unspecified
Other Mac OS
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-06-28 13:33 UTC by David Rajchenbach-Teller (please use "needinfo")
Modified: 2018-11-03 13:52 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
GST_DEBUG=6 logs (618.87 KB, application/x-gzip)
2016-06-28 16:14 UTC, David Rajchenbach-Teller (please use "needinfo")
Details

Description David Rajchenbach-Teller (please use "needinfo") 2016-06-28 13:33:30 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.
Comment 1 David Rajchenbach-Teller (please use "needinfo") 2016-06-28 13:35:14 UTC
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
Comment 2 David Rajchenbach-Teller (please use "needinfo") 2016-06-28 13:44:32 UTC
Forgot to mention:

$ gst-launch-1.0 --version
gst-launch-1.0 version 1.8.1
GStreamer 1.8.1
Unknown package origin
Comment 3 Sebastian Dröge (slomo) 2016-06-28 13:47:25 UTC
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 :)
Comment 4 David Rajchenbach-Teller (please use "needinfo") 2016-06-28 13:53:40 UTC
(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
Comment 5 David Rajchenbach-Teller (please use "needinfo") 2016-06-28 14:02:03 UTC
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
Comment 6 Sebastian Dröge (slomo) 2016-06-28 14:04:15 UTC
(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.
Comment 7 Sebastian Dröge (slomo) 2016-06-28 14:08:36 UTC
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?
Comment 8 David Rajchenbach-Teller (please use "needinfo") 2016-06-28 15:56:36 UTC
Same crash (afaict) with 1.8.2.
Comment 9 Sebastian Dröge (slomo) 2016-06-28 16:02:14 UTC
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.
Comment 10 David Rajchenbach-Teller (please use "needinfo") 2016-06-28 16:14:08 UTC
Created attachment 330492 [details]
GST_DEBUG=6 logs
Comment 11 GStreamer system administrator 2018-11-03 13:52:39 UTC
-- 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.