Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OS X support #1

Open
3 of 4 tasks
nzoschke opened this issue Feb 26, 2024 · 28 comments
Open
3 of 4 tasks

OS X support #1

nzoschke opened this issue Feb 26, 2024 · 28 comments

Comments

@nzoschke
Copy link

nzoschke commented Feb 26, 2024

The plugin is not working for me on OS X yet.

  • setup.sh supports OS X via brew
  • build.sh builds the plugin
  • build.sh and test.sh have OS X osxvideosink device
  • test gst-launch-1.0 commands work

Running the test command after build.sh gives this error here:

gst-launch-1.0 audiotestsrc ! queue ! audioconvert ! projectm ! video/x-raw,width=512,height=512,framerate=60/1 ! videoconvert ! osxvideosink sync=false master

Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Got context from element 'projectm0': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayCocoa\)\ gldisplaycocoa0";

** (gst-launch-1.0:29313): ERROR **: 08:22:41.492: OpenGL Error: GL_INVALID_ENUM - Enumeration parameter is not legal
@nzoschke

This comment was marked as outdated.

@nzoschke
Copy link
Author

nzoschke commented Feb 26, 2024

setup.sh seems good as examples from the docs work https://gstreamer.freedesktop.org/documentation/tutorials/basic/gstreamer-tools.html?gi-language=c

gst-launch-1.0 videotestsrc pattern=11 ! videoconvert ! autovideosink
gst-launch-1.0 playbin uri=https://gstreamer.freedesktop.org/data/media/sintel_trailer-480p.webm
gst-launch-1.0 audiotestsrc ! autoaudiosink 

@nzoschke

This comment was marked as outdated.

@hack-s
Copy link
Contributor

hack-s commented Apr 30, 2024

I have made a couple changes that resolved a similar issue for me on Linux (Ubuntu). If you would like to give it a try, here is the PR: #2

@Blaquewithaq
Copy link
Contributor

I've improved the scripts to account for the different lib names and the different video syncs. Let me know if they work as expected for you!

If you could re-evaluation what on this list is still relevant and put it in the new issue. Thanks!

@nzoschke nzoschke changed the title Build errors then segfault on OS X OS X support May 10, 2024
@nzoschke
Copy link
Author

nzoschke commented May 10, 2024

Testing OS X one more time here.

OS Versions:

sw_vers -productVersion
14.4.1

uname -a
Darwin studio Darwin Kernel Version 23.4.0: Fri Mar 15 00:10:42 PDT 2024; root:xnu-10063.101.17~1/RELEASE_ARM64_T6000 arm64

brew --version
Homebrew 4.2.21

Dependency versions:

./setup.sh 
==> Updating Homebrew...
Warning: git 2.45.0 is already installed and up-to-date.
Warning: cmake 3.29.3 is already installed and up-to-date.
Warning: ninja 1.12.0 is already installed and up-to-date.
Warning: pkg-config 0.29.2_3 is already installed and up-to-date.
Warning: gstreamer 1.24.3 is already installed and up-to-date.

Build projectm:

git clone https://github.com/projectM-visualizer/projectm
cd projectm
git fetch && git reset --hard origin/master
git submodule update --init --recursive

mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/opt/homebrew ..
make
make install

-- Installing: /opt/homebrew/lib/libprojectM-4.4.1.0.dylib
-- Installing: /opt/homebrew/lib/libprojectM-4-playlist.4.1.0.dylib
...

Build gst-projectm

export PROJECTM_ROOT=/opt/homebrew
export GST_PLUGIN_PATH=$HOME/.local/share/gstreamer-1.0/plugins/
./build.sh

[6/6] : && /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.sdk -dynamiclib -Wl,-headerpad_max_install_names  -o libgstprojectm.dylib -install_name @rpath/libgstprojectm.dylib CMakeFiles/gstprojectm.dir/src/caps.c.o CMakeFiles/gstprojectm.dir/src/debug.c.o CMakeFiles/gstprojectm.dir/src/plugin.c.o CMakeFiles/gstprojectm.dir/src/projectm.c.o CMakeFiles/gstprojectm.dir/src/gstglbaseaudiovisualizer.c.o  -Wl,-rpath,/opt/homebrew/lib  /opt/homebrew/lib/libprojectM-4.4.1.0.dylib  /opt/homebrew/Cellar/gstreamer/1.24.3/lib/libgstreamer-1.0.dylib  /opt/homebrew/Cellar/gstreamer/1.24.3/lib/libgstreamer-1.0.dylib  /opt/homebrew/Cellar/gstreamer/1.24.3/lib/libgstbase-1.0.dylib  /opt/homebrew/Cellar/gstreamer/1.24.3/lib/libgstaudio-1.0.dylib  /opt/homebrew/Cellar/gstreamer/1.24.3/lib/libgstvideo-1.0.dylib  /opt/homebrew/Cellar/gstreamer/1.24.3/lib/libgstgl-1.0.dylib  /opt/homebrew/Cellar/gstreamer/1.24.3/lib/libgstpbutils-1.0.dylib  /opt/homebrew/Cellar/glib/2.80.0_2/lib/libglib-2.0.dylib  /opt/homebrew/Cellar/glib/2.80.0_2/lib/libgobject-2.0.dylib  -framework OpenGL  -framework CoreFoundation && :

Install to gstreamer plugins? (Y/n): y

Done! Here's an example command:
gst-launch-1.0 audiotestsrc ! queue ! audioconvert ! projectm ! video/x-raw,width=512,height=512,framerate=60/1 ! videoconvert ! osxvideosink sync=false
gst-launch-1.0 audiotestsrc ! queue ! audioconvert ! projectm ! video/x-raw,width=512,height=512,framerate=60/1 ! videoconvert ! osxvideosink sync=false

Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Got context from element 'projectm0': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayCocoa\)\ gldisplaycocoa0";

** (gst-launch-1.0:29313): ERROR **: 08:22:41.492: OpenGL Error: GL_INVALID_ENUM - Enumeration parameter is not legal

zsh: trace trap  gst-launch-1.0 audiotestsrc ! queue ! audioconvert ! projectm !  !  !  
-------------------------------------
Translated Report (Full Report Below)
-------------------------------------

Process:               gst-launch-1.0 [29313]
Path:                  /opt/homebrew/*/gst-launch-1.0
Identifier:            gst-launch-1.0
Version:               ???
Code Type:             ARM-64 (Native)
Parent Process:        zsh [24623]
Responsible:           Terminal [563]
User ID:               501

Date/Time:             2024-05-10 08:22:41.5017 -0700
OS Version:            macOS 14.4.1 (23E224)
Report Version:        12
Anonymous UUID:        2BAD61E7-BD81-C89C-4977-791B0B0B82D6

Sleep/Wake UUID:       E29218B4-BFA7-4747-B4B0-E91B7B2FED0A

Time Awake Since Boot: 170000 seconds
Time Since Wake:       1131 seconds

System Integrity Protection: enabled

Crashed Thread:        2  Dispatch queue: org.freedesktop.gstreamer.glwindow

Exception Type:        EXC_BREAKPOINT (SIGTRAP)
Exception Codes:       0x0000000000000001, 0x000000010497c2f4

Termination Reason:    Namespace SIGNAL, Code 5 Trace/BPT trap: 5
Terminating Process:   exc handler [29313]

Thread 0::  Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib        	       0x18fe2e1f4 mach_msg2_trap + 8
1   libsystem_kernel.dylib        	       0x18fe40b24 mach_msg2_internal + 80
2   libsystem_kernel.dylib        	       0x18fe36e34 mach_msg_overwrite + 476
3   libsystem_kernel.dylib        	       0x18fe2e578 mach_msg + 24
4   CoreFoundation                	       0x18ff4e058 __CFRunLoopServiceMachPort + 160
5   CoreFoundation                	       0x18ff4c91c __CFRunLoopRun + 1208
6   CoreFoundation                	       0x18ff4be0c CFRunLoopRunSpecific + 608
7   HIToolbox                     	       0x19a6e7000 RunCurrentEventLoopInMode + 292
8   HIToolbox                     	       0x19a6e6e3c ReceiveNextEventCommon + 648
9   HIToolbox                     	       0x19a6e6b94 _BlockUntilNextEventMatchingListInModeWithFilter + 76
10  AppKit                        	       0x1937a4970 _DPSNextEvent + 660
11  AppKit                        	       0x193f96dec -[NSApplication(NSEventRouting) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 700
12  AppKit                        	       0x193797cb8 -[NSApplication run] + 476
13  libgstreamer-1.0.0.dylib      	       0x1048b71a8 run_main_with_nsapp + 180
14  libgstreamer-1.0.0.dylib      	       0x1048b7200 gst_macos_main + 36
15  dyld                          	       0x18fae60e0 start + 2360

Thread 1:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 2 Crashed::  Dispatch queue: org.freedesktop.gstreamer.glwindow
0   libglib-2.0.0.dylib           	       0x10497c2f4 _g_log_abort + 40
1   libglib-2.0.0.dylib           	       0x10497c688 g_log_structured_array + 264
2   libglib-2.0.0.dylib           	       0x10497c140 g_log_default_handler + 204
3   libglib-2.0.0.dylib           	       0x10497bd2c g_logv + 828
4   libglib-2.0.0.dylib           	       0x10497b980 g_log + 28
5   libgstprojectm.dylib          	       0x1046869d0 gl_error_handler + 252
6   libgstprojectm.dylib          	       0x104687bb4 gst_projectm_gl_start + 220
7   libgstprojectm.dylib          	       0x10468a57c gst_gl_base_audio_visualizer_gl_start + 204
8   libgstgl-1.0.0.dylib          	       0x1086a6ba8 _run_message_sync + 32
9   libgstgl-1.0.0.dylib          	       0x1086ab02c __gst_gl_window_cocoa_send_message_async_block_invoke + 48
10  libdispatch.dylib             	       0x18fcbc750 _dispatch_call_block_and_release + 32
11  libdispatch.dylib             	       0x18fcbe3e8 _dispatch_client_callout + 20
12  libdispatch.dylib             	       0x18fcc5a14 _dispatch_lane_serial_drain + 748
13  libdispatch.dylib             	       0x18fcc6544 _dispatch_lane_invoke + 380
14  libdispatch.dylib             	       0x18fcd12d0 _dispatch_root_queue_drain_deferred_wlh + 288
15  libdispatch.dylib             	       0x18fcd0b44 _dispatch_workloop_worker_thread + 404
16  libsystem_pthread.dylib       	       0x18fe6b00c _pthread_wqthread + 288
17  libsystem_pthread.dylib       	       0x18fe69d28 start_wqthread + 8

Thread 3:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 4:: macos-gst-thread
0   libsystem_kernel.dylib        	       0x18fe39358 __select + 8
1   libglib-2.0.0.dylib           	       0x104984348 g_poll + 424
2   libglib-2.0.0.dylib           	       0x104975474 g_main_context_iterate_unlocked + 296
3   libglib-2.0.0.dylib           	       0x104975760 g_main_loop_run + 120
4   gst-launch-1.0                	       0x104280fe8 real_main + 1832
5   libgstreamer-1.0.0.dylib      	       0x1048b707c gst_thread_func + 132
6   libglib-2.0.0.dylib           	       0x10499bb74 g_thread_proxy + 68
7   libsystem_pthread.dylib       	       0x18fe6ef94 _pthread_start + 136
8   libsystem_pthread.dylib       	       0x18fe69d34 thread_start + 8

Thread 5:: com.apple.NSEventThread
0   libsystem_kernel.dylib        	       0x18fe2e1f4 mach_msg2_trap + 8
1   libsystem_kernel.dylib        	       0x18fe40b24 mach_msg2_internal + 80
2   libsystem_kernel.dylib        	       0x18fe36e34 mach_msg_overwrite + 476
3   libsystem_kernel.dylib        	       0x18fe2e578 mach_msg + 24
4   CoreFoundation                	       0x18ff4e058 __CFRunLoopServiceMachPort + 160
5   CoreFoundation                	       0x18ff4c91c __CFRunLoopRun + 1208
6   CoreFoundation                	       0x18ff4be0c CFRunLoopRunSpecific + 608
7   AppKit                        	       0x1938cdcb4 _NSEventThread + 144
8   libsystem_pthread.dylib       	       0x18fe6ef94 _pthread_start + 136
9   libsystem_pthread.dylib       	       0x18fe69d34 thread_start + 8

Thread 6:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 7:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 8:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 9:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 10:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 11:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 12:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 13:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 14:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 15:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 16:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 17:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 18:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 19:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 20:
0   libsystem_pthread.dylib       	       0x18fe69d20 start_wqthread + 0

Thread 21:: pool-spawner
0   libsystem_kernel.dylib        	       0x18fe319ec __psynch_cvwait + 8
1   libsystem_pthread.dylib       	       0x18fe6f55c _pthread_cond_wait + 1228
2   libglib-2.0.0.dylib           	       0x1049c13d8 g_cond_wait + 44
3   libglib-2.0.0.dylib           	       0x1049459c8 g_async_queue_pop_intern_unlocked + 116
4   libglib-2.0.0.dylib           	       0x10499c044 g_thread_pool_spawn_thread + 124
5   libglib-2.0.0.dylib           	       0x10499bb74 g_thread_proxy + 68
6   libsystem_pthread.dylib       	       0x18fe6ef94 _pthread_start + 136
7   libsystem_pthread.dylib       	       0x18fe69d34 thread_start + 8

Thread 22:: queue0:src
0   libsystem_kernel.dylib        	       0x18fe319ec __psynch_cvwait + 8
1   libsystem_pthread.dylib       	       0x18fe6f55c _pthread_cond_wait + 1228
2   libglib-2.0.0.dylib           	       0x1049c13d8 g_cond_wait + 44
3   libgstgl-1.0.0.dylib          	       0x1086a69d4 gst_gl_window_default_send_message + 88
4   libgstgl-1.0.0.dylib          	       0x108686280 gst_gl_context_thread_add + 204
5   libgstprojectm.dylib          	       0x104689b80 gst_gl_base_audio_visualizer_find_gl_context_unlocked + 812
6   libgstprojectm.dylib          	       0x1046890d4 gst_gl_base_audio_visualizer_decide_allocation + 80
7   libgstpbutils-1.0.0.dylib     	       0x1084fdea0 gst_audio_visualizer_src_negotiate + 876
8   libgstpbutils-1.0.0.dylib     	       0x1084fd490 gst_audio_visualizer_sink_event + 140
9   libgstreamer-1.0.0.dylib      	       0x10486b2ac gst_pad_send_event_unchecked + 656
10  libgstreamer-1.0.0.dylib      	       0x10486aa0c gst_pad_push_event_unchecked + 352
11  libgstreamer-1.0.0.dylib      	       0x10486de80 push_sticky + 268
12  libgstreamer-1.0.0.dylib      	       0x104866810 events_foreach + 140
13  libgstreamer-1.0.0.dylib      	       0x1048677dc check_sticky + 104
14  libgstreamer-1.0.0.dylib      	       0x10486a610 gst_pad_push_event + 528
15  libgstbase-1.0.0.dylib        	       0x1084636b4 gst_base_transform_setcaps + 1964
16  libgstbase-1.0.0.dylib        	       0x108461cb8 gst_base_transform_sink_eventfunc + 252
17  libgstreamer-1.0.0.dylib      	       0x10486b2ac gst_pad_send_event_unchecked + 656
18  libgstreamer-1.0.0.dylib      	       0x10486aa0c gst_pad_push_event_unchecked + 352
19  libgstreamer-1.0.0.dylib      	       0x10486de80 push_sticky + 268
20  libgstreamer-1.0.0.dylib      	       0x104866810 events_foreach + 140
21  libgstreamer-1.0.0.dylib      	       0x1048677dc check_sticky + 104
22  libgstreamer-1.0.0.dylib      	       0x10486a610 gst_pad_push_event + 528
23  libgstcoreelements.dylib      	       0x108639a64 gst_queue_loop + 2068
24  libgstreamer-1.0.0.dylib      	       0x104897778 gst_task_func + 284
25  libglib-2.0.0.dylib           	       0x10499cc18 g_thread_pool_thread_proxy + 208
26  libglib-2.0.0.dylib           	       0x10499bb74 g_thread_proxy + 68
27  libsystem_pthread.dylib       	       0x18fe6ef94 _pthread_start + 136
28  libsystem_pthread.dylib       	       0x18fe69d34 thread_start + 8

Thread 23:: audiotestsrc0:src
0   libsystem_kernel.dylib        	       0x18fe319ec __psynch_cvwait + 8
1   libsystem_pthread.dylib       	       0x18fe6f55c _pthread_cond_wait + 1228
2   libglib-2.0.0.dylib           	       0x1049c13d8 g_cond_wait + 44
3   libgstcoreelements.dylib      	       0x1086376d0 gst_queue_handle_sink_query + 216
4   libgstreamer-1.0.0.dylib      	       0x104866acc gst_pad_query + 504
5   libgstreamer-1.0.0.dylib      	       0x104864e3c gst_pad_peer_query + 376
6   libgstbase-1.0.0.dylib        	       0x1084582d0 gst_base_src_negotiate_unlocked + 116
7   libgstbase-1.0.0.dylib        	       0x10845c1ac gst_base_src_loop + 160
8   libgstreamer-1.0.0.dylib      	       0x104897778 gst_task_func + 284
9   libglib-2.0.0.dylib           	       0x10499cc18 g_thread_pool_thread_proxy + 208
10  libglib-2.0.0.dylib           	       0x10499bb74 g_thread_proxy + 68
11  libsystem_pthread.dylib       	       0x18fe6ef94 _pthread_start + 136
12  libsystem_pthread.dylib       	       0x18fe69d34 thread_start + 8

Thread 24:: gmain
0   libsystem_kernel.dylib        	       0x18fe39358 __select + 8
1   libglib-2.0.0.dylib           	       0x104984348 g_poll + 424
2   libglib-2.0.0.dylib           	       0x104975474 g_main_context_iterate_unlocked + 296
3   libglib-2.0.0.dylib           	       0x10497553c g_main_context_iteration + 60
4   libglib-2.0.0.dylib           	       0x104976770 glib_worker_main + 48
5   libglib-2.0.0.dylib           	       0x10499bb74 g_thread_proxy + 68
6   libsystem_pthread.dylib       	       0x18fe6ef94 _pthread_start + 136
7   libsystem_pthread.dylib       	       0x18fe69d34 thread_start + 8

Thread 25:: gldisplay-event
0   libsystem_kernel.dylib        	       0x18fe39358 __select + 8
1   libglib-2.0.0.dylib           	       0x104984348 g_poll + 424
2   libglib-2.0.0.dylib           	       0x104975474 g_main_context_iterate_unlocked + 296
3   libglib-2.0.0.dylib           	       0x104975760 g_main_loop_run + 120
4   libgstgl-1.0.0.dylib          	       0x1086897f4 _event_thread_main + 88
5   libglib-2.0.0.dylib           	       0x10499bb74 g_thread_proxy + 68
6   libsystem_pthread.dylib       	       0x18fe6ef94 _pthread_start + 136
7   libsystem_pthread.dylib       	       0x18fe69d34 thread_start + 8

Thread 26:: gstglcontext
0   libsystem_kernel.dylib        	       0x18fe39358 __select + 8
1   libglib-2.0.0.dylib           	       0x104984348 g_poll + 424
2   libglib-2.0.0.dylib           	       0x104975474 g_main_context_iterate_unlocked + 296
3   libglib-2.0.0.dylib           	       0x104975760 g_main_loop_run + 120
4   libgstgl-1.0.0.dylib          	       0x1086852ec gst_gl_context_create_thread + 1040
5   libglib-2.0.0.dylib           	       0x10499bb74 g_thread_proxy + 68
6   libsystem_pthread.dylib       	       0x18fe6ef94 _pthread_start + 136
7   libsystem_pthread.dylib       	       0x18fe69d34 thread_start + 8


Thread 2 crashed with ARM Thread State (64-bit):
    x0: 0x0000000000000000   x1: 0x0000000000000000   x2: 0x0000000000000000   x3: 0x00006000005ad2c0
    x4: 0x00006000005ad280   x5: 0x0000000000000018   x6: 0x000000000000000a   x7: 0x0000000000000600
    x8: 0x0000000104a30000   x9: 0x000000016bc970e0  x10: 0xffffffffffffffff  x11: 0x00000000b6416014
   x12: 0x00000000000007fb  x13: 0x00000000000007fd  x14: 0x00000000b6616813  x15: 0x0000000000000013
   x16: 0x000000018fe69db0  x17: 0x0000000000016800  x18: 0x0000000000000000  x19: 0x0000000000000001
   x20: 0x0000000000000003  x21: 0x000000016bc965e8  x22: 0x0000000000000000  x23: 0x0000000000000000
   x24: 0x0000000104a30910  x25: 0x0000000000000000  x26: 0x0000000104a308b8  x27: 0x000000010497cdd0
   x28: 0x0000000000000000   fp: 0x000000016bc96570   lr: 0x000000010497c2e0
    sp: 0x000000016bc96560   pc: 0x000000010497c2f4 cpsr: 0x00001000
   far: 0x0000000000000000  esr: 0xf2000001 (Breakpoint) brk 1

Binary Images:
       0x1089c0000 -        0x1089cbfff libobjc-trampolines.dylib (*) <e8a1b184-0349-3c61-a119-6543eb038317> /usr/lib/libobjc-trampolines.dylib
       0x1086e8000 -        0x108753fff com.apple.AppleMetalOpenGLRenderer (1.0) <83d94df2-aca8-3695-a3a1-bf8ca16657ac> /System/Library/Extensions/AppleMetalOpenGLRenderer.bundle/Contents/MacOS/AppleMetalOpenGLRenderer
       0x10852c000 -        0x108537fff libgstosxvideo.dylib (*) <bceccc24-e8fd-328a-afaa-18dd5c1c7659> /opt/homebrew/*/libgstosxvideo.dylib
       0x1084c4000 -        0x1084cffff libgstvideoconvertscale.dylib (*) <3db05c25-af6c-3976-bfb8-2b73f63a8874> /opt/homebrew/*/libgstvideoconvertscale.dylib
       0x104680000 -        0x10468bfff libgstprojectm.dylib (*) <5bc75e61-fcee-3ebf-b1a6-220eaf21f8ae> /Users/USER/*/libgstprojectm.dylib
       0x108794000 -        0x10884bfff libprojectM-4.4.1.0.dylib (*) <06aef6bc-7d51-3359-9708-541c931b69d3> /opt/homebrew/*/libprojectM-4.4.1.0.dylib
       0x1088b8000 -        0x108937fff libgstvideo-1.0.0.dylib (*) <99f98f1a-2204-3895-9c1c-a03be2566f3d> /opt/homebrew/*/libgstvideo-1.0.0.dylib
       0x108670000 -        0x1086bffff libgstgl-1.0.0.dylib (*) <5866cc58-061a-3c82-bb6a-4a1c091caff3> /opt/homebrew/*/libgstgl-1.0.0.dylib
       0x1084e8000 -        0x10850ffff libgstpbutils-1.0.0.dylib (*) <cbe63aa4-0bf1-39ad-aa35-d73fdac2bfa4> /opt/homebrew/*/libgstpbutils-1.0.0.dylib
       0x108a7c000 -        0x108b4ffff libX11.6.dylib (*) <1a7bda7e-24d4-3a17-85b9-adb83f1e177a> /opt/homebrew/*/libX11.6.dylib
       0x10477c000 -        0x10477ffff libX11-xcb.1.dylib (*) <cb44ecf3-ca0e-34a0-8602-607065b83dce> /opt/homebrew/*/libX11-xcb.1.dylib
       0x108374000 -        0x108387fff libxcb.1.1.0.dylib (*) <8ef9b9ff-3f1e-39a6-bec1-e7d10db8e6cb> /opt/homebrew/*/libxcb.1.1.0.dylib
       0x104abc000 -        0x104abffff libXau.6.0.0.dylib (*) <bf6689dc-5292-350c-94b7-d1d71956c572> /opt/homebrew/*/libXau.6.0.0.dylib
       0x104ad0000 -        0x104ad3fff libXdmcp.6.dylib (*) <11368a67-e3a3-3d6f-ae03-78456881a92e> /opt/homebrew/*/libXdmcp.6.dylib
       0x104aa4000 -        0x104aabfff libgstaudioconvert.dylib (*) <d786468c-d78e-3a27-becb-298e52eb46ea> /opt/homebrew/*/libgstaudioconvert.dylib
       0x108604000 -        0x10864ffff libgstcoreelements.dylib (*) <1a013834-dd75-3f38-a00e-919475650cd6> /opt/homebrew/*/libgstcoreelements.dylib
       0x1047e4000 -        0x1047effff libgstaudiotestsrc.dylib (*) <f7037975-2442-335a-a6f7-00980ce7de52> /opt/homebrew/*/libgstaudiotestsrc.dylib
       0x1083ac000 -        0x1083fffff libgstaudio-1.0.0.dylib (*) <3760ee84-63e7-3111-a803-1c213ca087cc> /opt/homebrew/*/libgstaudio-1.0.0.dylib
       0x108428000 -        0x108483fff libgstbase-1.0.0.dylib (*) <5c6bb74a-4f79-30d9-9375-a4242cdb2dcd> /opt/homebrew/*/libgstbase-1.0.0.dylib
       0x108330000 -        0x10835bfff libgsttag-1.0.0.dylib (*) <f662112f-389e-317c-9aa3-38821ae6c15a> /opt/homebrew/*/libgsttag-1.0.0.dylib
       0x108554000 -        0x1085dffff liborc-0.4.0.dylib (*) <f994d955-4042-3b10-ba94-7bf9296c5496> /opt/homebrew/*/liborc-0.4.0.dylib
       0x10480c000 -        0x1048ebfff libgstreamer-1.0.0.dylib (*) <ab2a29b1-e175-3644-bb0d-82415df9bc16> /opt/homebrew/*/libgstreamer-1.0.0.dylib
       0x10493c000 -        0x104a2bfff libglib-2.0.0.dylib (*) <80aa0559-f78c-3932-a57a-cd80e140e154> /opt/homebrew/*/libglib-2.0.0.dylib
       0x104704000 -        0x10471bfff libintl.8.dylib (*) <9924fd2d-8556-34b2-add9-ab2838b3359b> /opt/homebrew/*/libintl.8.dylib
       0x104788000 -        0x1047c3fff libgobject-2.0.0.dylib (*) <7432be8c-02f1-31dc-b0eb-50d634dd5abc> /opt/homebrew/*/libgobject-2.0.0.dylib
       0x1046f0000 -        0x1046f3fff libgmodule-2.0.0.dylib (*) <556047c9-c8db-3da2-92ff-8d0e0e5b38b1> /opt/homebrew/*/libgmodule-2.0.0.dylib
       0x104aec000 -        0x104b5ffff libpcre2-8.0.dylib (*) <0e90f358-d449-3571-95ad-690078c20228> /opt/homebrew/*/libpcre2-8.0.dylib
       0x10427c000 -        0x104283fff gst-launch-1.0 (*) <4b111051-a9f5-3f1d-8e67-ce5a22d0f649> /opt/homebrew/*/gst-launch-1.0
       0x18fe2d000 -        0x18fe67ffb libsystem_kernel.dylib (*) <2a91fd2c-4cef-3211-a025-7a1c0a8c2db5> /usr/lib/system/libsystem_kernel.dylib
       0x18fed0000 -        0x1903a8fff com.apple.CoreFoundation (6.9) <33908a83-098f-3437-973e-fb848c4f39df> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
       0x19a6b4000 -        0x19a977fff com.apple.HIToolbox (2.1.1) <c315e2a3-3fd1-3a2b-b205-b8b492b0f506> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox
       0x19376a000 -        0x194aa6fff com.apple.AppKit (6.9) <8b85317d-d56a-3370-8b78-da6c1d0fb53c> /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit
       0x18fae0000 -        0x18fb689db dyld (*) <f6dd3ec2-85a4-3ab1-8486-b189cd980ebe> /usr/lib/dyld
               0x0 - 0xffffffffffffffff ??? (*) <00000000-0000-0000-0000-000000000000> ???
       0x18fe68000 -        0x18fe74fff libsystem_pthread.dylib (*) <45239f06-cc53-36d0-9933-7776ac7ea2fa> /usr/lib/system/libsystem_pthread.dylib
       0x18fcba000 -        0x18fd01fff libdispatch.dylib (*) <7f973554-8168-35bf-ae86-2e9123e81bf7> /usr/lib/system/libdispatch.dylib

External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0

VM Region Summary:
ReadOnly portion of Libraries: Total=835.1M resident=0K(0%) swapped_out_or_unallocated=835.1M(100%)
Writable regions: Total=1.4G written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=1.4G(100%)

                                VIRTUAL   REGION 
REGION TYPE                        SIZE    COUNT (non-coalesced) 
===========                     =======  ======= 
Accelerate framework               128K        1 
Activity Tracing                   256K        1 
CG image                            96K        5 
ColorSync                          624K       29 
CoreAnimation                      176K       11 
CoreGraphics                        32K        2 
CoreUI image data                 1104K        7 
Foundation                          16K        1 
Kernel Alloc Once                   32K        1 
MALLOC                             1.3G       47 
MALLOC guard page                  192K       12 
OpenGL GLSL                        256K        3 
STACK GUARD                       56.4M       27 
Stack                             21.8M       27 
VM_ALLOCATE                        848K       35 
__AUTH                             937K      203 
__AUTH_CONST                      15.0M      359 
__CTF                               824        1 
__DATA                            4111K      370 
__DATA_CONST                      18.9M      387 
__DATA_DIRTY                       919K      115 
__FONT_DATA                        2352        1 
__GLSLBUILTINS                    5174K        1 
__LINKEDIT                       527.8M       29 
__OBJC_RO                         71.7M        1 
__OBJC_RW                         2195K        1 
__TEXT                           307.3M      401 
dyld private memory                272K        2 
mapped file                       70.8M       19 
shared memory                      864K       14 
===========                     =======  ======= 
TOTAL                              2.4G     2113 



-----------
Full Report
-----------
{"app_name":"gst-launch-1.0","timestamp":"2024-05-10 08:22:42.00 -0700","app_version":"","slice_uuid":"4b111051-a9f5-3f1d-8e67-ce5a22d0f649","build_version":"","platform":1,"share_with_app_devs":1,"is_first_party":1,"bug_type":"309","os_version":"macOS 14.4.1 (23E224)","roots_installed":0,"incident_id":"C58E371D-97E0-4CBC-945B-50C90AFFA16C","name":"gst-launch-1.0"}
{
  "uptime" : 170000,
  "procRole" : "Default",
  "version" : 2,
  "userID" : 501,
  "deployVersion" : 210,
  "modelCode" : "MacBookPro18,3",
  "coalitionID" : 591,
  "osVersion" : {
    "train" : "macOS 14.4.1",
    "build" : "23E224",
    "releaseType" : "User"
  },
  "captureTime" : "2024-05-10 08:22:41.5017 -0700",
  "codeSigningMonitor" : 1,
  "incident" : "C58E371D-97E0-4CBC-945B-50C90AFFA16C",
  "pid" : 29313,
  "translated" : false,
  "cpuType" : "ARM-64",
  "roots_installed" : 0,
  "bug_type" : "309",
  "procLaunch" : "2024-05-10 08:22:40.8631 -0700",
  "procStartAbsTime" : 4182616876616,
  "procExitAbsTime" : 4182632011825,
  "procName" : "gst-launch-1.0",
  "procPath" : "\/opt\/homebrew\/*\/gst-launch-1.0",
  "parentProc" : "zsh",
  "parentPid" : 24623,
  "coalitionName" : "com.apple.Terminal",
  "crashReporterKey" : "2BAD61E7-BD81-C89C-4977-791B0B0B82D6",
  "responsiblePid" : 563,
  "responsibleProc" : "Terminal",
  "codeSigningID" : "gst-launch-1-555549444b111051a9f53f1d8e67ce5a22d0f649",
  "codeSigningTeamID" : "",
  "codeSigningFlags" : 570425857,
  "codeSigningValidationCategory" : 10,
  "codeSigningTrustLevel" : 4294967295,
  "instructionByteStream" : {"beforePC":"9E++qf17Aan9QwCR8wMAqix4AJRgAAA1kwAANUsXAZQgAIBSRhcBlA==","atPC":"IAAg1Pxvuqn6ZwGp+F8CqfZXA6n0TwSp\/XsFqf1DAZH\/gxbR8wMBqg=="},
  "wakeTime" : 1131,
  "sleepWakeUUID" : "E29218B4-BFA7-4747-B4B0-E91B7B2FED0A",
  "sip" : "enabled",
  "exception" : {"codes":"0x0000000000000001, 0x000000010497c2f4","rawCodes":[1,4372022004],"type":"EXC_BREAKPOINT","signal":"SIGTRAP"},
  "termination" : {"flags":0,"code":5,"namespace":"SIGNAL","indicator":"Trace\/BPT trap: 5","byProc":"exc handler","byPid":29313},
  "os_fault" : {"process":"gst-launch-1.0"},
  "extMods" : {"caller":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"system":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"targeted":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"warnings":0},
  "faultingThread" : 2,
  "threads" : [{"id":2843931,"threadState":{"x":[{"value":268451845},{"value":21592279046},{"value":8589934592},{"value":27500675596288},{"value":0},{"value":27500675596288},{"value":2},{"value":4294967295},{"value":18446744073709550527},{"value":6403},{"value":0},{"value":1},{"value":6403},{"value":260525},{"value":0},{"value":2199023255552},{"value":18446744073709551569},{"value":8622321168},{"value":0},{"value":4294967295},{"value":2},{"value":27500675596288},{"value":0},{"value":27500675596288},{"value":6102195960},{"value":8589934592},{"value":21592279046},{"value":21592279046},{"value":4412409862}],"flavor":"ARM_THREAD_STATE64","lr":{"value":6709054244},"cpsr":{"value":4096},"fp":{"value":6102195808},"sp":{"value":6102195728},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6708978164},"far":{"value":0}},"queue":"com.apple.main-thread","frames":[{"imageOffset":4596,"symbol":"mach_msg2_trap","symbolLocation":8,"imageIndex":28},{"imageOffset":80676,"symbol":"mach_msg2_internal","symbolLocation":80,"imageIndex":28},{"imageOffset":40500,"symbol":"mach_msg_overwrite","symbolLocation":476,"imageIndex":28},{"imageOffset":5496,"symbol":"mach_msg","symbolLocation":24,"imageIndex":28},{"imageOffset":516184,"symbol":"__CFRunLoopServiceMachPort","symbolLocation":160,"imageIndex":29},{"imageOffset":510236,"symbol":"__CFRunLoopRun","symbolLocation":1208,"imageIndex":29},{"imageOffset":507404,"symbol":"CFRunLoopRunSpecific","symbolLocation":608,"imageIndex":29},{"imageOffset":208896,"symbol":"RunCurrentEventLoopInMode","symbolLocation":292,"imageIndex":30},{"imageOffset":208444,"symbol":"ReceiveNextEventCommon","symbolLocation":648,"imageIndex":30},{"imageOffset":207764,"symbol":"_BlockUntilNextEventMatchingListInModeWithFilter","symbolLocation":76,"imageIndex":30},{"imageOffset":239984,"symbol":"_DPSNextEvent","symbolLocation":660,"imageIndex":31},{"imageOffset":8572396,"symbol":"-[NSApplication(NSEventRouting) _nextEventMatchingEventMask:untilDate:inMode:dequeue:]","symbolLocation":700,"imageIndex":31},{"imageOffset":187576,"symbol":"-[NSApplication run]","symbolLocation":476,"imageIndex":31},{"imageOffset":700840,"symbol":"run_main_with_nsapp","symbolLocation":180,"imageIndex":21},{"imageOffset":700928,"symbol":"gst_macos_main","symbolLocation":36,"imageIndex":21},{"imageOffset":24800,"symbol":"start","symbolLocation":2360,"imageIndex":32}]},{"id":2843934,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6102757376},{"value":5123},{"value":6102220800},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6102757376},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"triggered":true,"id":2843935,"threadState":{"x":[{"value":0},{"value":0},{"value":0},{"value":105553122218688},{"value":105553122218624},{"value":24},{"value":10},{"value":1536},{"value":4372758528},{"value":6103331040},{"value":18446744073709551615},{"value":3057737748},{"value":2043},{"value":2045},{"value":3059836947},{"value":19},{"value":6709222832,"symbolLocation":0,"symbol":"pthread_setspecific"},{"value":92160},{"value":0},{"value":1},{"value":3},{"value":6103328232},{"value":0},{"value":0},{"value":4372760848,"symbolLocation":0,"symbol":"g_log_structured_depth"},{"value":0},{"value":4372760760,"symbolLocation":0,"symbol":"g_messages_lock"},{"value":4372024784,"symbolLocation":0,"symbol":"g_log_writer_default"},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":4372021984},"cpsr":{"value":4096},"fp":{"value":6103328112},"sp":{"value":6103328096},"esr":{"value":4060086273,"description":"(Breakpoint) brk 1"},"pc":{"value":4372022004,"matchesCrashFrame":1},"far":{"value":0}},"queue":"org.freedesktop.gstreamer.glwindow","frames":[{"imageOffset":262900,"symbol":"_g_log_abort","symbolLocation":40,"imageIndex":22},{"imageOffset":263816,"symbol":"g_log_structured_array","symbolLocation":264,"imageIndex":22},{"imageOffset":262464,"symbol":"g_log_default_handler","symbolLocation":204,"imageIndex":22},{"imageOffset":261420,"symbol":"g_logv","symbolLocation":828,"imageIndex":22},{"imageOffset":260480,"symbol":"g_log","symbolLocation":28,"imageIndex":22},{"imageOffset":27088,"symbol":"gl_error_handler","symbolLocation":252,"imageIndex":4},{"imageOffset":31668,"symbol":"gst_projectm_gl_start","symbolLocation":220,"imageIndex":4},{"imageOffset":42364,"symbol":"gst_gl_base_audio_visualizer_gl_start","symbolLocation":204,"imageIndex":4},{"imageOffset":224168,"symbol":"_run_message_sync","symbolLocation":32,"imageIndex":7},{"imageOffset":241708,"symbol":"__gst_gl_window_cocoa_send_message_async_block_invoke","symbolLocation":48,"imageIndex":7},{"imageOffset":10064,"symbol":"_dispatch_call_block_and_release","symbolLocation":32,"imageIndex":35},{"imageOffset":17384,"symbol":"_dispatch_client_callout","symbolLocation":20,"imageIndex":35},{"imageOffset":47636,"symbol":"_dispatch_lane_serial_drain","symbolLocation":748,"imageIndex":35},{"imageOffset":50500,"symbol":"_dispatch_lane_invoke","symbolLocation":380,"imageIndex":35},{"imageOffset":94928,"symbol":"_dispatch_root_queue_drain_deferred_wlh","symbolLocation":288,"imageIndex":35},{"imageOffset":92996,"symbol":"_dispatch_workloop_worker_thread","symbolLocation":404,"imageIndex":35},{"imageOffset":12300,"symbol":"_pthread_wqthread","symbolLocation":288,"imageIndex":34},{"imageOffset":7464,"symbol":"start_wqthread","symbolLocation":8,"imageIndex":34}]},{"id":2843947,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6103904256},{"value":19203},{"value":6103367680},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6103904256},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"id":2843948,"name":"macos-gst-thread","threadState":{"x":[{"value":4},{"value":0},{"value":6104476240},{"value":6104476112},{"value":6104476504},{"value":5408},{"value":105553175762208},{"value":4064},{"value":6104476504},{"value":1000},{"value":8},{"value":2},{"value":105553178788056},{"value":5},{"value":0},{"value":10391814820155359232},{"value":93},{"value":0},{"value":0},{"value":105553178788064},{"value":89},{"value":105553178788048},{"value":5},{"value":105553178788064},{"value":5},{"value":6104476112},{"value":1},{"value":6104476240},{"value":6104476368}],"flavor":"ARM_THREAD_STATE64","lr":{"value":4372054856},"cpsr":{"value":2684358656},"fp":{"value":6104476608},"sp":{"value":6104476096},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709023576},"far":{"value":0}},"frames":[{"imageOffset":50008,"symbol":"__select","symbolLocation":8,"imageIndex":28},{"imageOffset":295752,"symbol":"g_poll","symbolLocation":424,"imageIndex":22},{"imageOffset":234612,"symbol":"g_main_context_iterate_unlocked","symbolLocation":296,"imageIndex":22},{"imageOffset":235360,"symbol":"g_main_loop_run","symbolLocation":120,"imageIndex":22},{"imageOffset":20456,"symbol":"real_main","symbolLocation":1832,"imageIndex":27},{"imageOffset":700540,"symbol":"gst_thread_func","symbolLocation":132,"imageIndex":21},{"imageOffset":392052,"symbol":"g_thread_proxy","symbolLocation":68,"imageIndex":22},{"imageOffset":28564,"symbol":"_pthread_start","symbolLocation":136,"imageIndex":34},{"imageOffset":7476,"symbol":"thread_start","symbolLocation":8,"imageIndex":34}]},{"id":2843956,"name":"com.apple.NSEventThread","threadState":{"x":[{"value":268451845},{"value":21592279046},{"value":8589934592},{"value":141849884884992},{"value":0},{"value":141849884884992},{"value":2},{"value":4294967295},{"value":18446744073709550527},{"value":33027},{"value":0},{"value":1},{"value":33027},{"value":51438},{"value":0},{"value":0},{"value":18446744073709551569},{"value":8622321168},{"value":0},{"value":4294967295},{"value":2},{"value":141849884884992},{"value":0},{"value":141849884884992},{"value":6105047144},{"value":8589934592},{"value":21592279046},{"value":21592279046},{"value":4412409862}],"flavor":"ARM_THREAD_STATE64","lr":{"value":6709054244},"cpsr":{"value":4096},"fp":{"value":6105046992},"sp":{"value":6105046912},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6708978164},"far":{"value":0}},"frames":[{"imageOffset":4596,"symbol":"mach_msg2_trap","symbolLocation":8,"imageIndex":28},{"imageOffset":80676,"symbol":"mach_msg2_internal","symbolLocation":80,"imageIndex":28},{"imageOffset":40500,"symbol":"mach_msg_overwrite","symbolLocation":476,"imageIndex":28},{"imageOffset":5496,"symbol":"mach_msg","symbolLocation":24,"imageIndex":28},{"imageOffset":516184,"symbol":"__CFRunLoopServiceMachPort","symbolLocation":160,"imageIndex":29},{"imageOffset":510236,"symbol":"__CFRunLoopRun","symbolLocation":1208,"imageIndex":29},{"imageOffset":507404,"symbol":"CFRunLoopRunSpecific","symbolLocation":608,"imageIndex":29},{"imageOffset":1457332,"symbol":"_NSEventThread","symbolLocation":144,"imageIndex":31},{"imageOffset":28564,"symbol":"_pthread_start","symbolLocation":136,"imageIndex":34},{"imageOffset":7476,"symbol":"thread_start","symbolLocation":8,"imageIndex":34}]},{"id":2844034,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6105624576},{"value":63755},{"value":6105088000},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6105624576},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"id":2844035,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6106198016},{"value":63491},{"value":6105661440},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6106198016},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"id":2844037,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6106771456},{"value":46083},{"value":6106234880},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6106771456},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"id":2844038,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6107344896},{"value":46339},{"value":6106808320},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6107344896},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"id":2844039,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6107918336},{"value":63235},{"value":6107381760},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6107918336},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"id":2844040,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6108491776},{"value":46595},{"value":6107955200},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6108491776},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"id":2844041,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6109065216},{"value":62979},{"value":6108528640},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6109065216},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"id":2844042,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6109638656},{"value":62723},{"value":6109102080},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6109638656},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"id":2844043,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6110212096},{"value":46851},{"value":6109675520},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6110212096},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"id":2844044,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6110785536},{"value":47107},{"value":6110248960},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6110785536},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"id":2844045,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6111358976},{"value":47363},{"value":6110822400},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6111358976},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"id":2844046,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6111932416},{"value":47619},{"value":6111395840},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6111932416},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"id":2844049,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6112505856},{"value":62467},{"value":6111969280},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6112505856},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"id":2844050,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6113079296},{"value":62211},{"value":6112542720},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6113079296},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"id":2844051,"frames":[{"imageOffset":7456,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":34}],"threadState":{"x":[{"value":6113652736},{"value":61955},{"value":6113116160},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6113652736},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709222688},"far":{"value":0}}},{"id":2844061,"name":"pool-spawner","threadState":{"x":[{"value":260},{"value":0},{"value":256},{"value":0},{"value":0},{"value":160},{"value":0},{"value":0},{"value":6114225720},{"value":0},{"value":105553163092696},{"value":2},{"value":0},{"value":0},{"value":0},{"value":0},{"value":305},{"value":8622337000},{"value":0},{"value":105553163092672},{"value":105553174642976},{"value":6114226400},{"value":0},{"value":0},{"value":256},{"value":257},{"value":512},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":6709245276},"cpsr":{"value":1610616832},"fp":{"value":6114225840},"sp":{"value":6114225696},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6708992492},"far":{"value":0}},"frames":[{"imageOffset":18924,"symbol":"__psynch_cvwait","symbolLocation":8,"imageIndex":28},{"imageOffset":30044,"symbol":"_pthread_cond_wait","symbolLocation":1228,"imageIndex":34},{"imageOffset":545752,"symbol":"g_cond_wait","symbolLocation":44,"imageIndex":22},{"imageOffset":39368,"symbol":"g_async_queue_pop_intern_unlocked","symbolLocation":116,"imageIndex":22},{"imageOffset":393284,"symbol":"g_thread_pool_spawn_thread","symbolLocation":124,"imageIndex":22},{"imageOffset":392052,"symbol":"g_thread_proxy","symbolLocation":68,"imageIndex":22},{"imageOffset":28564,"symbol":"_pthread_start","symbolLocation":136,"imageIndex":34},{"imageOffset":7476,"symbol":"thread_start","symbolLocation":8,"imageIndex":34}]},{"id":2844062,"name":"queue0:src","threadState":{"x":[{"value":260},{"value":0},{"value":0},{"value":0},{"value":0},{"value":160},{"value":0},{"value":0},{"value":6114795672},{"value":0},{"value":105553163108504},{"value":2},{"value":0},{"value":0},{"value":0},{"value":0},{"value":305},{"value":8622337000},{"value":0},{"value":105553163108480},{"value":105553174594064},{"value":6114799840},{"value":0},{"value":0},{"value":0},{"value":1},{"value":256},{"value":0},{"value":105553122067728}],"flavor":"ARM_THREAD_STATE64","lr":{"value":6709245276},"cpsr":{"value":1610616832},"fp":{"value":6114795792},"sp":{"value":6114795648},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6708992492},"far":{"value":0}},"frames":[{"imageOffset":18924,"symbol":"__psynch_cvwait","symbolLocation":8,"imageIndex":28},{"imageOffset":30044,"symbol":"_pthread_cond_wait","symbolLocation":1228,"imageIndex":34},{"imageOffset":545752,"symbol":"g_cond_wait","symbolLocation":44,"imageIndex":22},{"imageOffset":223700,"symbol":"gst_gl_window_default_send_message","symbolLocation":88,"imageIndex":7},{"imageOffset":90752,"symbol":"gst_gl_context_thread_add","symbolLocation":204,"imageIndex":7},{"imageOffset":39808,"symbol":"gst_gl_base_audio_visualizer_find_gl_context_unlocked","symbolLocation":812,"imageIndex":4},{"imageOffset":37076,"symbol":"gst_gl_base_audio_visualizer_decide_allocation","symbolLocation":80,"imageIndex":4},{"imageOffset":89760,"symbol":"gst_audio_visualizer_src_negotiate","symbolLocation":876,"imageIndex":8},{"imageOffset":87184,"symbol":"gst_audio_visualizer_sink_event","symbolLocation":140,"imageIndex":8},{"imageOffset":389804,"symbol":"gst_pad_send_event_unchecked","symbolLocation":656,"imageIndex":21},{"imageOffset":387596,"symbol":"gst_pad_push_event_unchecked","symbolLocation":352,"imageIndex":21},{"imageOffset":401024,"symbol":"push_sticky","symbolLocation":268,"imageIndex":21},{"imageOffset":370704,"symbol":"events_foreach","symbolLocation":140,"imageIndex":21},{"imageOffset":374748,"symbol":"check_sticky","symbolLocation":104,"imageIndex":21},{"imageOffset":386576,"symbol":"gst_pad_push_event","symbolLocation":528,"imageIndex":21},{"imageOffset":243380,"symbol":"gst_base_transform_setcaps","symbolLocation":1964,"imageIndex":18},{"imageOffset":236728,"symbol":"gst_base_transform_sink_eventfunc","symbolLocation":252,"imageIndex":18},{"imageOffset":389804,"symbol":"gst_pad_send_event_unchecked","symbolLocation":656,"imageIndex":21},{"imageOffset":387596,"symbol":"gst_pad_push_event_unchecked","symbolLocation":352,"imageIndex":21},{"imageOffset":401024,"symbol":"push_sticky","symbolLocation":268,"imageIndex":21},{"imageOffset":370704,"symbol":"events_foreach","symbolLocation":140,"imageIndex":21},{"imageOffset":374748,"symbol":"check_sticky","symbolLocation":104,"imageIndex":21},{"imageOffset":386576,"symbol":"gst_pad_push_event","symbolLocation":528,"imageIndex":21},{"imageOffset":219748,"symbol":"gst_queue_loop","symbolLocation":2068,"imageIndex":15},{"imageOffset":571256,"symbol":"gst_task_func","symbolLocation":284,"imageIndex":21},{"imageOffset":396312,"symbol":"g_thread_pool_thread_proxy","symbolLocation":208,"imageIndex":22},{"imageOffset":392052,"symbol":"g_thread_proxy","symbolLocation":68,"imageIndex":22},{"imageOffset":28564,"symbol":"_pthread_start","symbolLocation":136,"imageIndex":34},{"imageOffset":7476,"symbol":"thread_start","symbolLocation":8,"imageIndex":34}]},{"id":2844063,"name":"audiotestsrc0:src","threadState":{"x":[{"value":260},{"value":0},{"value":0},{"value":0},{"value":0},{"value":160},{"value":0},{"value":0},{"value":6115371656},{"value":0},{"value":105553163317720},{"value":2},{"value":0},{"value":0},{"value":0},{"value":0},{"value":305},{"value":8622337000},{"value":0},{"value":105553163317696},{"value":105553174478160},{"value":6115373280},{"value":0},{"value":0},{"value":0},{"value":1},{"value":256},{"value":512},{"value":4371476900,"symbolLocation":0,"symbol":"_gst_debug_min"}],"flavor":"ARM_THREAD_STATE64","lr":{"value":6709245276},"cpsr":{"value":1610616832},"fp":{"value":6115371776},"sp":{"value":6115371632},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6708992492},"far":{"value":0}},"frames":[{"imageOffset":18924,"symbol":"__psynch_cvwait","symbolLocation":8,"imageIndex":28},{"imageOffset":30044,"symbol":"_pthread_cond_wait","symbolLocation":1228,"imageIndex":34},{"imageOffset":545752,"symbol":"g_cond_wait","symbolLocation":44,"imageIndex":22},{"imageOffset":210640,"symbol":"gst_queue_handle_sink_query","symbolLocation":216,"imageIndex":15},{"imageOffset":371404,"symbol":"gst_pad_query","symbolLocation":504,"imageIndex":21},{"imageOffset":364092,"symbol":"gst_pad_peer_query","symbolLocation":376,"imageIndex":21},{"imageOffset":197328,"symbol":"gst_base_src_negotiate_unlocked","symbolLocation":116,"imageIndex":18},{"imageOffset":213420,"symbol":"gst_base_src_loop","symbolLocation":160,"imageIndex":18},{"imageOffset":571256,"symbol":"gst_task_func","symbolLocation":284,"imageIndex":21},{"imageOffset":396312,"symbol":"g_thread_pool_thread_proxy","symbolLocation":208,"imageIndex":22},{"imageOffset":392052,"symbol":"g_thread_proxy","symbolLocation":68,"imageIndex":22},{"imageOffset":28564,"symbol":"_pthread_start","symbolLocation":136,"imageIndex":34},{"imageOffset":7476,"symbol":"thread_start","symbolLocation":8,"imageIndex":34}]},{"id":2844064,"name":"gmain","threadState":{"x":[{"value":4},{"value":0},{"value":6115945872},{"value":6115945744},{"value":0},{"value":688},{"value":105553178886832},{"value":0},{"value":6115946136},{"value":1000},{"value":0},{"value":2},{"value":105553178886832},{"value":2095104},{"value":2043},{"value":2766047276},{"value":93},{"value":2768142381},{"value":0},{"value":105553178886840},{"value":4294967295},{"value":105553178886832},{"value":13},{"value":105553178886840},{"value":13},{"value":6115945744},{"value":1},{"value":6115945872},{"value":6115946000}],"flavor":"ARM_THREAD_STATE64","lr":{"value":4372054856},"cpsr":{"value":2684358656},"fp":{"value":6115946240},"sp":{"value":6115945728},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709023576},"far":{"value":0}},"frames":[{"imageOffset":50008,"symbol":"__select","symbolLocation":8,"imageIndex":28},{"imageOffset":295752,"symbol":"g_poll","symbolLocation":424,"imageIndex":22},{"imageOffset":234612,"symbol":"g_main_context_iterate_unlocked","symbolLocation":296,"imageIndex":22},{"imageOffset":234812,"symbol":"g_main_context_iteration","symbolLocation":60,"imageIndex":22},{"imageOffset":239472,"symbol":"glib_worker_main","symbolLocation":48,"imageIndex":22},{"imageOffset":392052,"symbol":"g_thread_proxy","symbolLocation":68,"imageIndex":22},{"imageOffset":28564,"symbol":"_pthread_start","symbolLocation":136,"imageIndex":34},{"imageOffset":7476,"symbol":"thread_start","symbolLocation":8,"imageIndex":34}]},{"id":2844066,"name":"gldisplay-event","threadState":{"x":[{"value":4},{"value":0},{"value":6116519328},{"value":6116519200},{"value":0},{"value":0},{"value":105553178902544},{"value":0},{"value":6116519592},{"value":1000},{"value":0},{"value":2},{"value":105553178908544},{"value":2045},{"value":2871164956},{"value":28},{"value":93},{"value":163840},{"value":0},{"value":105553178908552},{"value":4294967295},{"value":105553178908544},{"value":18},{"value":105553178908552},{"value":18},{"value":6116519200},{"value":1},{"value":6116519328},{"value":6116519456}],"flavor":"ARM_THREAD_STATE64","lr":{"value":4372054856},"cpsr":{"value":2684358656},"fp":{"value":6116519696},"sp":{"value":6116519184},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709023576},"far":{"value":0}},"frames":[{"imageOffset":50008,"symbol":"__select","symbolLocation":8,"imageIndex":28},{"imageOffset":295752,"symbol":"g_poll","symbolLocation":424,"imageIndex":22},{"imageOffset":234612,"symbol":"g_main_context_iterate_unlocked","symbolLocation":296,"imageIndex":22},{"imageOffset":235360,"symbol":"g_main_loop_run","symbolLocation":120,"imageIndex":22},{"imageOffset":104436,"symbol":"_event_thread_main","symbolLocation":88,"imageIndex":7},{"imageOffset":392052,"symbol":"g_thread_proxy","symbolLocation":68,"imageIndex":22},{"imageOffset":28564,"symbol":"_pthread_start","symbolLocation":136,"imageIndex":34},{"imageOffset":7476,"symbol":"thread_start","symbolLocation":8,"imageIndex":34}]},{"id":2844067,"name":"gstglcontext","threadState":{"x":[{"value":4},{"value":0},{"value":6117092640},{"value":6117092512},{"value":0},{"value":9920},{"value":105553178781376},{"value":1027},{"value":6117092904},{"value":1000},{"value":0},{"value":2},{"value":105553178781376},{"value":2095104},{"value":2043},{"value":3547187821},{"value":93},{"value":3549282855},{"value":0},{"value":105553178781384},{"value":4294967295},{"value":105553178781376},{"value":20},{"value":105553178781384},{"value":20},{"value":6117092512},{"value":1},{"value":6117092640},{"value":6117092768}],"flavor":"ARM_THREAD_STATE64","lr":{"value":4372054856},"cpsr":{"value":2684358656},"fp":{"value":6117093008},"sp":{"value":6117092496},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":6709023576},"far":{"value":0}},"frames":[{"imageOffset":50008,"symbol":"__select","symbolLocation":8,"imageIndex":28},{"imageOffset":295752,"symbol":"g_poll","symbolLocation":424,"imageIndex":22},{"imageOffset":234612,"symbol":"g_main_context_iterate_unlocked","symbolLocation":296,"imageIndex":22},{"imageOffset":235360,"symbol":"g_main_loop_run","symbolLocation":120,"imageIndex":22},{"imageOffset":86764,"symbol":"gst_gl_context_create_thread","symbolLocation":1040,"imageIndex":7},{"imageOffset":392052,"symbol":"g_thread_proxy","symbolLocation":68,"imageIndex":22},{"imageOffset":28564,"symbol":"_pthread_start","symbolLocation":136,"imageIndex":34},{"imageOffset":7476,"symbol":"thread_start","symbolLocation":8,"imageIndex":34}]}],
  "usedImages" : [
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" : 4439408640,
    "size" : 49152,
    "uuid" : "e8a1b184-0349-3c61-a119-6543eb038317",
    "path" : "\/usr\/lib\/libobjc-trampolines.dylib",
    "name" : "libobjc-trampolines.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" : 4436426752,
    "CFBundleShortVersionString" : "1.0",
    "CFBundleIdentifier" : "com.apple.AppleMetalOpenGLRenderer",
    "size" : 442368,
    "uuid" : "83d94df2-aca8-3695-a3a1-bf8ca16657ac",
    "path" : "\/System\/Library\/Extensions\/AppleMetalOpenGLRenderer.bundle\/Contents\/MacOS\/AppleMetalOpenGLRenderer",
    "name" : "AppleMetalOpenGLRenderer",
    "CFBundleVersion" : "1"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4434608128,
    "size" : 49152,
    "uuid" : "bceccc24-e8fd-328a-afaa-18dd5c1c7659",
    "path" : "\/opt\/homebrew\/*\/libgstosxvideo.dylib",
    "name" : "libgstosxvideo.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4434182144,
    "size" : 49152,
    "uuid" : "3db05c25-af6c-3976-bfb8-2b73f63a8874",
    "path" : "\/opt\/homebrew\/*\/libgstvideoconvertscale.dylib",
    "name" : "libgstvideoconvertscale.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4368891904,
    "size" : 49152,
    "uuid" : "5bc75e61-fcee-3ebf-b1a6-220eaf21f8ae",
    "path" : "\/Users\/USER\/*\/libgstprojectm.dylib",
    "name" : "libgstprojectm.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4437131264,
    "size" : 753664,
    "uuid" : "06aef6bc-7d51-3359-9708-541c931b69d3",
    "path" : "\/opt\/homebrew\/*\/libprojectM-4.4.1.0.dylib",
    "name" : "libprojectM-4.4.1.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4438327296,
    "size" : 524288,
    "uuid" : "99f98f1a-2204-3895-9c1c-a03be2566f3d",
    "path" : "\/opt\/homebrew\/*\/libgstvideo-1.0.0.dylib",
    "name" : "libgstvideo-1.0.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4435935232,
    "size" : 327680,
    "uuid" : "5866cc58-061a-3c82-bb6a-4a1c091caff3",
    "path" : "\/opt\/homebrew\/*\/libgstgl-1.0.0.dylib",
    "name" : "libgstgl-1.0.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4434329600,
    "size" : 163840,
    "uuid" : "cbe63aa4-0bf1-39ad-aa35-d73fdac2bfa4",
    "path" : "\/opt\/homebrew\/*\/libgstpbutils-1.0.0.dylib",
    "name" : "libgstpbutils-1.0.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4440178688,
    "size" : 868352,
    "uuid" : "1a7bda7e-24d4-3a17-85b9-adb83f1e177a",
    "path" : "\/opt\/homebrew\/*\/libX11.6.dylib",
    "name" : "libX11.6.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4369924096,
    "size" : 16384,
    "uuid" : "cb44ecf3-ca0e-34a0-8602-607065b83dce",
    "path" : "\/opt\/homebrew\/*\/libX11-xcb.1.dylib",
    "name" : "libX11-xcb.1.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4432805888,
    "size" : 81920,
    "uuid" : "8ef9b9ff-3f1e-39a6-bec1-e7d10db8e6cb",
    "path" : "\/opt\/homebrew\/*\/libxcb.1.1.0.dylib",
    "name" : "libxcb.1.1.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4373331968,
    "size" : 16384,
    "uuid" : "bf6689dc-5292-350c-94b7-d1d71956c572",
    "path" : "\/opt\/homebrew\/*\/libXau.6.0.0.dylib",
    "name" : "libXau.6.0.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4373413888,
    "size" : 16384,
    "uuid" : "11368a67-e3a3-3d6f-ae03-78456881a92e",
    "path" : "\/opt\/homebrew\/*\/libXdmcp.6.dylib",
    "name" : "libXdmcp.6.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4373233664,
    "size" : 32768,
    "uuid" : "d786468c-d78e-3a27-becb-298e52eb46ea",
    "path" : "\/opt\/homebrew\/*\/libgstaudioconvert.dylib",
    "name" : "libgstaudioconvert.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4435492864,
    "size" : 311296,
    "uuid" : "1a013834-dd75-3f38-a00e-919475650cd6",
    "path" : "\/opt\/homebrew\/*\/libgstcoreelements.dylib",
    "name" : "libgstcoreelements.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4370350080,
    "size" : 49152,
    "uuid" : "f7037975-2442-335a-a6f7-00980ce7de52",
    "path" : "\/opt\/homebrew\/*\/libgstaudiotestsrc.dylib",
    "name" : "libgstaudiotestsrc.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4433035264,
    "size" : 344064,
    "uuid" : "3760ee84-63e7-3111-a803-1c213ca087cc",
    "path" : "\/opt\/homebrew\/*\/libgstaudio-1.0.0.dylib",
    "name" : "libgstaudio-1.0.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4433543168,
    "size" : 376832,
    "uuid" : "5c6bb74a-4f79-30d9-9375-a4242cdb2dcd",
    "path" : "\/opt\/homebrew\/*\/libgstbase-1.0.0.dylib",
    "name" : "libgstbase-1.0.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4432527360,
    "size" : 180224,
    "uuid" : "f662112f-389e-317c-9aa3-38821ae6c15a",
    "path" : "\/opt\/homebrew\/*\/libgsttag-1.0.0.dylib",
    "name" : "libgsttag-1.0.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4434771968,
    "size" : 573440,
    "uuid" : "f994d955-4042-3b10-ba94-7bf9296c5496",
    "path" : "\/opt\/homebrew\/*\/liborc-0.4.0.dylib",
    "name" : "liborc-0.4.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4370513920,
    "size" : 917504,
    "uuid" : "ab2a29b1-e175-3644-bb0d-82415df9bc16",
    "path" : "\/opt\/homebrew\/*\/libgstreamer-1.0.0.dylib",
    "name" : "libgstreamer-1.0.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4371759104,
    "size" : 983040,
    "uuid" : "80aa0559-f78c-3932-a57a-cd80e140e154",
    "path" : "\/opt\/homebrew\/*\/libglib-2.0.0.dylib",
    "name" : "libglib-2.0.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4369432576,
    "size" : 98304,
    "uuid" : "9924fd2d-8556-34b2-add9-ab2838b3359b",
    "path" : "\/opt\/homebrew\/*\/libintl.8.dylib",
    "name" : "libintl.8.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4369973248,
    "size" : 245760,
    "uuid" : "7432be8c-02f1-31dc-b0eb-50d634dd5abc",
    "path" : "\/opt\/homebrew\/*\/libgobject-2.0.0.dylib",
    "name" : "libgobject-2.0.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4369350656,
    "size" : 16384,
    "uuid" : "556047c9-c8db-3da2-92ff-8d0e0e5b38b1",
    "path" : "\/opt\/homebrew\/*\/libgmodule-2.0.0.dylib",
    "name" : "libgmodule-2.0.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4373528576,
    "size" : 475136,
    "uuid" : "0e90f358-d449-3571-95ad-690078c20228",
    "path" : "\/opt\/homebrew\/*\/libpcre2-8.0.dylib",
    "name" : "libpcre2-8.0.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" : 4364681216,
    "size" : 32768,
    "uuid" : "4b111051-a9f5-3f1d-8e67-ce5a22d0f649",
    "path" : "\/opt\/homebrew\/*\/gst-launch-1.0",
    "name" : "gst-launch-1.0"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" : 6708973568,
    "size" : 241660,
    "uuid" : "2a91fd2c-4cef-3211-a025-7a1c0a8c2db5",
    "path" : "\/usr\/lib\/system\/libsystem_kernel.dylib",
    "name" : "libsystem_kernel.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" : 6709641216,
    "CFBundleShortVersionString" : "6.9",
    "CFBundleIdentifier" : "com.apple.CoreFoundation",
    "size" : 5083136,
    "uuid" : "33908a83-098f-3437-973e-fb848c4f39df",
    "path" : "\/System\/Library\/Frameworks\/CoreFoundation.framework\/Versions\/A\/CoreFoundation",
    "name" : "CoreFoundation",
    "CFBundleVersion" : "2420"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" : 6885687296,
    "CFBundleShortVersionString" : "2.1.1",
    "CFBundleIdentifier" : "com.apple.HIToolbox",
    "size" : 2899968,
    "uuid" : "c315e2a3-3fd1-3a2b-b205-b8b492b0f506",
    "path" : "\/System\/Library\/Frameworks\/Carbon.framework\/Versions\/A\/Frameworks\/HIToolbox.framework\/Versions\/A\/HIToolbox",
    "name" : "HIToolbox"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" : 6768992256,
    "CFBundleShortVersionString" : "6.9",
    "CFBundleIdentifier" : "com.apple.AppKit",
    "size" : 20172800,
    "uuid" : "8b85317d-d56a-3370-8b78-da6c1d0fb53c",
    "path" : "\/System\/Library\/Frameworks\/AppKit.framework\/Versions\/C\/AppKit",
    "name" : "AppKit",
    "CFBundleVersion" : "2487.50.124"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" : 6705512448,
    "size" : 559580,
    "uuid" : "f6dd3ec2-85a4-3ab1-8486-b189cd980ebe",
    "path" : "\/usr\/lib\/dyld",
    "name" : "dyld"
  },
  {
    "size" : 0,
    "source" : "A",
    "base" : 0,
    "uuid" : "00000000-0000-0000-0000-000000000000"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" : 6709215232,
    "size" : 53248,
    "uuid" : "45239f06-cc53-36d0-9933-7776ac7ea2fa",
    "path" : "\/usr\/lib\/system\/libsystem_pthread.dylib",
    "name" : "libsystem_pthread.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" : 6707453952,
    "size" : 294912,
    "uuid" : "7f973554-8168-35bf-ae86-2e9123e81bf7",
    "path" : "\/usr\/lib\/system\/libdispatch.dylib",
    "name" : "libdispatch.dylib"
  }
],
  "sharedCache" : {
  "base" : 6704758784,
  "size" : 4189880320,
  "uuid" : "a53b7d2f-a773-3524-8828-248b33ef0b4e"
},
  "vmSummary" : "ReadOnly portion of Libraries: Total=835.1M resident=0K(0%) swapped_out_or_unallocated=835.1M(100%)\nWritable regions: Total=1.4G written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=1.4G(100%)\n\n                                VIRTUAL   REGION \nREGION TYPE                        SIZE    COUNT (non-coalesced) \n===========                     =======  ======= \nAccelerate framework               128K        1 \nActivity Tracing                   256K        1 \nCG image                            96K        5 \nColorSync                          624K       29 \nCoreAnimation                      176K       11 \nCoreGraphics                        32K        2 \nCoreUI image data                 1104K        7 \nFoundation                          16K        1 \nKernel Alloc Once                   32K        1 \nMALLOC                             1.3G       47 \nMALLOC guard page                  192K       12 \nOpenGL GLSL                        256K        3 \nSTACK GUARD                       56.4M       27 \nStack                             21.8M       27 \nVM_ALLOCATE                        848K       35 \n__AUTH                             937K      203 \n__AUTH_CONST                      15.0M      359 \n__CTF                               824        1 \n__DATA                            4111K      370 \n__DATA_CONST                      18.9M      387 \n__DATA_DIRTY                       919K      115 \n__FONT_DATA                        2352        1 \n__GLSLBUILTINS                    5174K        1 \n__LINKEDIT                       527.8M       29 \n__OBJC_RO                         71.7M        1 \n__OBJC_RW                         2195K        1 \n__TEXT                           307.3M      401 \ndyld private memory                272K        2 \nmapped file                       70.8M       19 \nshared memory                      864K       14 \n===========                     =======  ======= \nTOTAL                              2.4G     2113 \n",
  "legacyInfo" : {
  "threadTriggered" : {
    "queue" : "org.freedesktop.gstreamer.glwindow"
  }
},
  "logWritingSignature" : "81ab42a13a79089001a60fb15136efc9b0e44a1c",
  "trialInfo" : {
  "rollouts" : [
    {
      "rolloutId" : "648c94d4ebdf9e3e398fa708",
      "factorPackIds" : {
        "SIRI_UNDERSTANDING_NL_OVERRIDES" : "65a8104b6712a43e7922cab8"
      },
      "deploymentId" : 240000171
    },
    {
      "rolloutId" : "63f9578e238e7b23a1f3030a",
      "factorPackIds" : {

      },
      "deploymentId" : 240000005
    }
  ],
  "experiments" : [
    {
      "treatmentId" : "a34d22a1-a1a5-4126-a477-0c499e502c6a",
      "experimentId" : "65835bc103dc58766bab2d27",
      "deploymentId" : 400000011
    }
  ]
}
}

@nzoschke
Copy link
Author

gltestsrc is working

https://gstreamer.freedesktop.org/documentation/opengl/gltestsrc.html?gi-language=c

gst-launch-1.0 -v gltestsrc pattern=smpte ! glimagesink
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Got context from element 'sink': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayCocoa\)\ gldisplaycocoa0";
/GstPipeline:pipeline0/GstGLTestSrc:gltestsrc0.GstPad:src: caps = video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)320, height=(int)240, framerate=(fraction)30/1, texture-target=(string)2D
/GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0.GstGhostPad:sink.GstProxyPad:proxypad0: caps = video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)320, height=(int)240, framerate=(fraction)30/1, texture-target=(string)2D
/GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0/GstGLUploadElement:gluploadelement0.GstPad:src: caps = video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)320, height=(int)240, framerate=(fraction)30/1, texture-target=(string)2D
/GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0/GstGLColorConvertElement:glcolorconvertelement0.GstPad:src: caps = video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)320, height=(int)240, framerate=(fraction)30/1, texture-target=(string)2D
/GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0/GstGLColorBalance:glcolorbalance0.GstPad:src: caps = video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)320, height=(int)240, framerate=(fraction)30/1, texture-target=(string)2D
/GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0/GstGLImageSink:sink.GstPad:sink: caps = video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)320, height=(int)240, framerate=(fraction)30/1, texture-target=(string)2D
/GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0/GstGLColorBalance:glcolorbalance0.GstPad:sink: caps = video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)320, height=(int)240, framerate=(fraction)30/1, texture-target=(string)2D
/GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0/GstGLColorConvertElement:glcolorconvertelement0.GstPad:sink: caps = video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)320, height=(int)240, framerate=(fraction)30/1, texture-target=(string)2D
/GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0/GstGLUploadElement:gluploadelement0.GstPad:sink: caps = video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)320, height=(int)240, framerate=(fraction)30/1, texture-target=(string)2D
/GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0.GstGhostPad:sink: caps = video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)320, height=(int)240, framerate=(fraction)30/1, texture-target=(string)2D
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
Redistribute latency...
New clock: GstSystemClock

@Blaquewithaq
Copy link
Contributor

I see all your examples are running the test with audio. Did you try any of the others. Does details or inspect give you a result about the projectm lib?

@Blaquewithaq
Copy link
Contributor

Blaquewithaq commented May 10, 2024

What's making this challenging for Hack and me is that there isn't any helpful information in what you've posted that would assist us in tracking down the issue, because the error given is so generic.

I dont have a mac device to play around on so all I can do is provide suggestions until I do.

  1. Modify the test.sh script, change GST_DEBUG to GST_DEBUG=4 on the audio test
  2. Try to rerun and post the output here.

@nzoschke
Copy link
Author

Test scripts

./test.sh --details

Plugin Details:
  Name                     projectm
  Description              plugin to visualize audio using the ProjectM library
  Filename                 /Users/noah/.local/share/gstreamer-1.0/plugins/libgstprojectm.dylib
  Version                  0.0.1
  License                  LGPL
  Source module            GstProjectM
  Binary package           GstProjectM
  Origin URL               https://github.com/projectM-visualizer/gst-projectm

  projectm: ProjectM Visualizer

  1 features:
  +-- 1 elements
./test.sh --inspect

Factory Details:
  Rank                     none (0)
  Long-name                ProjectM Visualizer
  Klass                    Generic
  Description              A plugin for visualizing music using ProjectM
  Author                   AnomieVision <[email protected]> | Tristan Charpentier <[email protected]>

Plugin Details:
  Name                     projectm
  Description              plugin to visualize audio using the ProjectM library
  Filename                 /Users/noah/.local/share/gstreamer-1.0/plugins/libgstprojectm.dylib
  Version                  0.0.1
  License                  LGPL
  Source module            GstProjectM
  Binary package           GstProjectM
  Origin URL               https://github.com/projectM-visualizer/gst-projectm

GObject
 +----GInitiallyUnowned
       +----GstObject
             +----GstElement
                   +----GstAudioVisualizer
                         +----GstGLBaseAudioVisualizer
                               +----GstProjectM

Pad Templates:
  SINK template: 'sink'
    Availability: Always
    Capabilities:
      audio/x-raw
                 format: S16LE
                 layout: interleaved
               channels: [ 1, 2147483647 ]
                   rate: [ 1, 2147483647 ]
           channel-mask: { (bitmask)0x0000000000000003 }
  
  SRC template: 'src'
    Availability: Always
    Capabilities:
      video/x-raw
                 format: { (string)ABGR }
              framerate: [ 0/1, 2147483647/1 ]
                  width: [ 1, 2147483647 ]
                 height: [ 1, 2147483647 ]

Element has no clocking capabilities.
Element has no URI handling capabilities.

Pads:
  SINK: 'sink'
    Pad Template: 'sink'
  SRC: 'src'
    Pad Template: 'src'

Element Properties:

  aspect-correction   : Enables or disables aspect ratio correction. When enabled, the visualizer adjusts for aspect ratio differences in rendering.
                        flags: readable, writable
                        Boolean. Default: true
  
  beat-sensitivity    : Controls the sensitivity to audio beats. Higher values make the visualizer respond more strongly to beats.
                        flags: readable, writable
                        Float. Range:               0 -               5 Default:               1 
  
  easter-egg          : DControls the activation of an Easter Egg feature. The value determines the likelihood of triggering the Easter Egg.
                        flags: readable, writable
                        Float. Range:               0 -               1 Default:               0 
  
  hard-cut-duration   : Sets the duration, in seconds, for hard cuts. Hard cuts are abrupt transitions in the visualizer.
                        flags: readable, writable
                        Double. Range:               0 -          999999 Default:               3 
  
  hard-cut-enabled    : Enables or disables hard cuts. When enabled, the visualizer may exhibit sudden transitions based on the audio input.
                        flags: readable, writable
                        Boolean. Default: false
  
  hard-cut-sensitivity: Adjusts the sensitivity of the visualizer to hard cuts. Higher values increase the responsiveness to abrupt changes in audio.
                        flags: readable, writable
                        Float. Range:               0 -               1 Default:               1 
  
  mesh-size           : Sets the size of the mesh used in rendering. The format is 'width,height'.
                        flags: readable, writable
                        String. Default: "48,32"
  
  name                : The name of the object
                        flags: readable, writable
                        String. Default: "projectm0"
  
  parent              : The parent of the object
                        flags: readable, writable
                        Object of type "GstObject"
  
  preset              : Specifies the path to the preset file. The preset file determines the visual style and behavior of the audio visualizer.
                        flags: readable, writable
                        String. Default: null
  
  preset-duration     : Sets the duration, in seconds, for each preset. A zero value causes the preset to play indefinitely.
                        flags: readable, writable
                        Double. Range:               0 -          999999 Default:               0 
  
  preset-locked       : Locks or unlocks the current preset. When locked, the visualizer remains on the current preset without automatic changes.
                        flags: readable, writable
                        Boolean. Default: true
  
  shade-amount        : Shading color to use (big-endian ARGB)
                        flags: readable, writable, controllable
                        Unsigned Integer. Range: 0 - 4294967295 Default: 657930 
  
  shader              : Shader function to apply on each frame
                        flags: readable, writable, controllable
                        Enum "GstAudioVisualizerShader" Default: 1, "fade"
                           (0): none             - GST_AUDIO_VISUALIZER_SHADER_NONE
                           (1): fade             - GST_AUDIO_VISUALIZER_SHADER_FADE
                           (2): fade-and-move-up - GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP
                           (3): fade-and-move-down - GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN
                           (4): fade-and-move-left - GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT
                           (5): fade-and-move-right - GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT
                           (6): fade-and-move-horiz-out - GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT
                           (7): fade-and-move-horiz-in - GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN
                           (8): fade-and-move-vert-out - GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT
                           (9): fade-and-move-vert-in - GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN
  
  soft-cut-duration   : Sets the duration, in seconds, for soft cuts. Soft cuts are smoother transitions between visualizer states.
                        flags: readable, writable
                        Double. Range:               0 -          999999 Default:               3 
  
  texture-dir         : Sets the path to the directory containing textures used in the visualizer.
                        flags: readable, writable
                        String. Default: null

@nzoschke
Copy link
Author

This one already has GST_DEBUG=4

./test.sh --preset

0:00:00.000061916 32506 0x6000015899f0 INFO                GST_INIT gst.c:574:init_pre: Initializing GStreamer Core Library version 1.24.3
0:00:00.000075875 32506 0x6000015899f0 INFO                GST_INIT gst.c:575:init_pre: Using library installed in /opt/homebrew/Cellar/gstreamer/1.24.3/lib
0:00:00.000088833 32506 0x6000015899f0 INFO                GST_INIT gst.c:595:init_pre: Darwin studio.attlocal.net 23.4.0 Darwin Kernel Version 23.4.0: Fri Mar 15 00:10:42 PDT 2024; root:xnu-10063.101.17~1/RELEASE_ARM64_T6000 arm64
0:00:00.000183041 32506 0x6000015899f0 INFO                GST_INIT gstmessage.c:129:_priv_gst_message_initialize: init messages
0:00:00.000324500 32506 0x6000015899f0 INFO                GST_INIT gstcontext.c:86:_priv_gst_context_initialize: init contexts
0:00:00.000504416 32506 0x6000015899f0 INFO      GST_PLUGIN_LOADING gstplugin.c:328:_priv_gst_plugin_initialize: registering 0 static plugins
0:00:00.000548375 32506 0x6000015899f0 INFO      GST_PLUGIN_LOADING gstplugin.c:236:gst_plugin_register_static: registered static plugin "staticelements"
0:00:00.000556125 32506 0x6000015899f0 INFO      GST_PLUGIN_LOADING gstplugin.c:238:gst_plugin_register_static: added static plugin "staticelements", result: 1
0:00:00.000687250 32506 0x6000015899f0 INFO            GST_REGISTRY gstregistry.c:1918:ensure_current_registry: reading registry cache: /Users/noah/.cache/gstreamer-1.0/registry.aarch64.bin
0:00:00.004637208 32506 0x6000015899f0 INFO            GST_REGISTRY gstregistrybinary.c:683:priv_gst_registry_binary_read_cache: loaded /Users/noah/.cache/gstreamer-1.0/registry.aarch64.bin in 0.003932 seconds
0:00:00.004648833 32506 0x6000015899f0 INFO            GST_REGISTRY gstregistry.c:1785:scan_and_update_registry: Validating plugins from registry cache: /Users/noah/.cache/gstreamer-1.0/registry.aarch64.bin
0:00:00.005635500 32506 0x6000015899f0 INFO            GST_REGISTRY gstregistry.c:1877:scan_and_update_registry: Registry cache has not changed
0:00:00.005640583 32506 0x6000015899f0 INFO            GST_REGISTRY gstregistry.c:1953:ensure_current_registry: registry reading and updating done
0:00:00.005643833 32506 0x6000015899f0 INFO                GST_INIT gst.c:808:init_post: GLib runtime version: 2.80.0
0:00:00.005646291 32506 0x6000015899f0 INFO                GST_INIT gst.c:810:init_post: GLib headers version: 2.80.0
0:00:00.005648083 32506 0x6000015899f0 INFO                GST_INIT gst.c:811:init_post: initialized GStreamer successfully
0:00:00.005661458 32506 0x6000015899f0 INFO            GST_PIPELINE gstparse.c:345:gst_parse_launch_full: parsing pipeline description 'audiotestsrc ! queue ! audioconvert ! projectm preset=test/presets/250-wavecode.milk.milk ! video/x-raw,width=512,height=512,framerate=60/1 ! videoconvert ! osxvideosink sync=false '
0:00:00.007299416 32506 0x6000015899f0 INFO      GST_PLUGIN_LOADING gstplugin.c:995:_priv_gst_plugin_load_file_for_registry: plugin "/opt/homebrew/Cellar/gstreamer/1.24.3/lib/gstreamer-1.0/libgstaudiotestsrc.dylib" loaded
0:00:00.007345333 32506 0x6000015899f0 INFO     GST_ELEMENT_FACTORY gstelementfactory.c:489:gst_element_factory_create_with_properties: creating element "audiotestsrc"
0:00:00.007355333 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstelement.c:759:gst_element_add_pad:<GstBaseSrc@0x15c05d2e0> adding pad 'src'
0:00:00.008121083 32506 0x6000015899f0 INFO      GST_PLUGIN_LOADING gstplugin.c:995:_priv_gst_plugin_load_file_for_registry: plugin "/opt/homebrew/Cellar/gstreamer/1.24.3/lib/gstreamer-1.0/libgstcoreelements.dylib" loaded
0:00:00.008146125 32506 0x6000015899f0 INFO     GST_ELEMENT_FACTORY gstelementfactory.c:489:gst_element_factory_create_with_properties: creating element "queue"
0:00:00.008153958 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstelement.c:759:gst_element_add_pad:<GstQueue@0x15a905220> adding pad 'sink'
0:00:00.008158583 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstelement.c:759:gst_element_add_pad:<GstQueue@0x15a905220> adding pad 'src'
0:00:00.008684625 32506 0x6000015899f0 INFO      GST_PLUGIN_LOADING gstplugin.c:995:_priv_gst_plugin_load_file_for_registry: plugin "/opt/homebrew/Cellar/gstreamer/1.24.3/lib/gstreamer-1.0/libgstaudioconvert.dylib" loaded
0:00:00.008713666 32506 0x6000015899f0 INFO     GST_ELEMENT_FACTORY gstelementfactory.c:489:gst_element_factory_create_with_properties: creating element "audioconvert"
0:00:00.008718833 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstelement.c:759:gst_element_add_pad:<GstBaseTransform@0x15c0090d0> adding pad 'sink'
0:00:00.008723041 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstelement.c:759:gst_element_add_pad:<GstBaseTransform@0x15c0090d0> adding pad 'src'
0:00:00.012186333 32506 0x6000015899f0 INFO      GST_PLUGIN_LOADING gstplugin.c:995:_priv_gst_plugin_load_file_for_registry: plugin "/Users/noah/.local/share/gstreamer-1.0/plugins/libgstprojectm.dylib" loaded
0:00:00.012245375 32506 0x6000015899f0 INFO     GST_ELEMENT_FACTORY gstelementfactory.c:489:gst_element_factory_create_with_properties: creating element "projectm"
0:00:00.012253000 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstelement.c:759:gst_element_add_pad:<GstAudioVisualizer@0x15a057c30> adding pad 'sink'
0:00:00.012256875 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstelement.c:759:gst_element_add_pad:<GstAudioVisualizer@0x15a057c30> adding pad 'src'
0:00:00.012926458 32506 0x6000015899f0 INFO      GST_PLUGIN_LOADING gstplugin.c:995:_priv_gst_plugin_load_file_for_registry: plugin "/opt/homebrew/Cellar/gstreamer/1.24.3/lib/gstreamer-1.0/libgstvideoconvertscale.dylib" loaded
0:00:00.013014000 32506 0x6000015899f0 INFO     GST_ELEMENT_FACTORY gstelementfactory.c:489:gst_element_factory_create_with_properties: creating element "videoconvert"
0:00:00.013019416 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstelement.c:759:gst_element_add_pad:<GstBaseTransform@0x15a05cd50> adding pad 'sink'
0:00:00.013026583 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstelement.c:759:gst_element_add_pad:<GstBaseTransform@0x15a05cd50> adding pad 'src'
0:00:00.013634875 32506 0x6000015899f0 INFO      GST_PLUGIN_LOADING gstplugin.c:995:_priv_gst_plugin_load_file_for_registry: plugin "/opt/homebrew/Cellar/gstreamer/1.24.3/lib/gstreamer-1.0/libgstosxvideo.dylib" loaded
0:00:00.013664625 32506 0x6000015899f0 INFO     GST_ELEMENT_FACTORY gstelementfactory.c:489:gst_element_factory_create_with_properties: creating element "osxvideosink"
0:00:00.013669541 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstelement.c:759:gst_element_add_pad:<GstBaseSink@0x15a05d530> adding pad 'sink'
0:00:00.013690791 32506 0x6000015899f0 INFO     GST_ELEMENT_FACTORY gstelementfactory.c:489:gst_element_factory_create_with_properties: creating element "pipeline"
0:00:00.013726625 32506 0x6000015899f0 INFO            GST_PIPELINE subprojects/gstreamer/gst/parse/grammar.y:1062:gst_parse_perform_link: linking some pad of GstAudioTestSrc named audiotestsrc0 to some pad of GstQueue named queue0 (0/0) with caps "(NULL)"
0:00:00.013730666 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstutils.c:1821:gst_element_link_pads_full: trying to link element audiotestsrc0:(any) to element queue0:(any)
0:00:00.013734000 32506 0x6000015899f0 INFO                GST_PADS gstutils.c:1081:gst_pad_check_link: trying to link audiotestsrc0:src and queue0:sink
0:00:00.013742166 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:4398:gst_pad_peer_query:<queue0:src> pad has no peer
0:00:00.013746541 32506 0x6000015899f0 INFO                GST_PADS gstutils.c:1635:prepare_link_maybe_ghosting: audiotestsrc0 and queue0 in same bin, no need for ghost pads
0:00:00.013768291 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:2441:gst_pad_link_prepare: trying to link audiotestsrc0:src and queue0:sink
0:00:00.013772166 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:4398:gst_pad_peer_query:<queue0:src> pad has no peer
0:00:00.013775708 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:2622:gst_pad_link_full: linked audiotestsrc0:src and queue0:sink, successful
0:00:00.013777875 32506 0x6000015899f0 INFO               GST_EVENT gstevent.c:1687:gst_event_new_reconfigure: creating reconfigure event
0:00:00.013781666 32506 0x6000015899f0 INFO               GST_EVENT gstpad.c:6018:gst_pad_send_event_unchecked:<audiotestsrc0:src> Received event on flushing pad. Discarding
0:00:00.013788750 32506 0x6000015899f0 INFO            GST_PIPELINE subprojects/gstreamer/gst/parse/grammar.y:1062:gst_parse_perform_link: linking some pad of GstQueue named queue0 to some pad of GstAudioConvert named audioconvert0 (0/0) with caps "(NULL)"
0:00:00.013839000 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstutils.c:1821:gst_element_link_pads_full: trying to link element queue0:(any) to element audioconvert0:(any)
0:00:00.013842666 32506 0x6000015899f0 INFO                GST_PADS gstutils.c:1081:gst_pad_check_link: trying to link queue0:src and audioconvert0:sink
0:00:00.013849375 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:4398:gst_pad_peer_query:<audioconvert0:src> pad has no peer
0:00:00.013862500 32506 0x6000015899f0 INFO               structure gststructure.c:2957:gst_structure_get_valist: Expected field 'channel-mask' in structure: audio/x-raw, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ];
0:00:00.013874833 32506 0x6000015899f0 INFO                GST_PADS gstutils.c:1635:prepare_link_maybe_ghosting: queue0 and audioconvert0 in same bin, no need for ghost pads
0:00:00.013878166 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:2441:gst_pad_link_prepare: trying to link queue0:src and audioconvert0:sink
0:00:00.013880958 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:4398:gst_pad_peer_query:<audioconvert0:src> pad has no peer
0:00:00.013919833 32506 0x6000015899f0 INFO               structure gststructure.c:2957:gst_structure_get_valist: Expected field 'channel-mask' in structure: audio/x-raw, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ];
0:00:00.013930041 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:2622:gst_pad_link_full: linked queue0:src and audioconvert0:sink, successful
0:00:00.013931708 32506 0x6000015899f0 INFO               GST_EVENT gstevent.c:1687:gst_event_new_reconfigure: creating reconfigure event
0:00:00.013933541 32506 0x6000015899f0 INFO               GST_EVENT gstpad.c:6018:gst_pad_send_event_unchecked:<queue0:src> Received event on flushing pad. Discarding
0:00:00.013938500 32506 0x6000015899f0 INFO            GST_PIPELINE subprojects/gstreamer/gst/parse/grammar.y:1062:gst_parse_perform_link: linking some pad of GstAudioConvert named audioconvert0 to some pad of GstProjectM named projectm0 (0/0) with caps "(NULL)"
0:00:00.013941125 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstutils.c:1821:gst_element_link_pads_full: trying to link element audioconvert0:(any) to element projectm0:(any)
0:00:00.013986458 32506 0x6000015899f0 INFO                GST_PADS gstutils.c:1081:gst_pad_check_link: trying to link audioconvert0:src and projectm0:sink
0:00:00.014002666 32506 0x6000015899f0 INFO               structure gststructure.c:2957:gst_structure_get_valist: Expected field 'channel-mask' in structure: audio/x-raw, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ];
0:00:00.014016875 32506 0x6000015899f0 INFO                GST_PADS gstutils.c:1635:prepare_link_maybe_ghosting: audioconvert0 and projectm0 in same bin, no need for ghost pads
0:00:00.014020041 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:2441:gst_pad_link_prepare: trying to link audioconvert0:src and projectm0:sink
0:00:00.014030833 32506 0x6000015899f0 INFO               structure gststructure.c:2957:gst_structure_get_valist: Expected field 'channel-mask' in structure: audio/x-raw, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ];
0:00:00.014044625 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:2622:gst_pad_link_full: linked audioconvert0:src and projectm0:sink, successful
0:00:00.014046333 32506 0x6000015899f0 INFO               GST_EVENT gstevent.c:1687:gst_event_new_reconfigure: creating reconfigure event
0:00:00.014048166 32506 0x6000015899f0 INFO               GST_EVENT gstpad.c:6018:gst_pad_send_event_unchecked:<audioconvert0:src> Received event on flushing pad. Discarding
0:00:00.014057500 32506 0x6000015899f0 INFO            GST_PIPELINE subprojects/gstreamer/gst/parse/grammar.y:1062:gst_parse_perform_link: linking some pad of GstProjectM named projectm0 to some pad of GstVideoConvert named videoconvert0 (0/0) with caps "video/x-raw, width=(int)512, height=(int)512, framerate=(fraction)60/1"
0:00:00.014060666 32506 0x6000015899f0 INFO     GST_ELEMENT_FACTORY gstelementfactory.c:489:gst_element_factory_create_with_properties: creating element "capsfilter"
0:00:00.014085041 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstelement.c:759:gst_element_add_pad:<GstBaseTransform@0x159742320> adding pad 'sink'
0:00:00.014088500 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstelement.c:759:gst_element_add_pad:<GstBaseTransform@0x159742320> adding pad 'src'
0:00:00.014094541 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2070:gst_bin_get_state_func:<pipeline0> getting state
0:00:00.014099416 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2825:gst_element_continue_state:<capsfilter0> completed state change to NULL
0:00:00.014102166 32506 0x6000015899f0 INFO               GST_EVENT gstevent.c:1687:gst_event_new_reconfigure: creating reconfigure event
0:00:00.014105750 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstutils.c:1821:gst_element_link_pads_full: trying to link element projectm0:(any) to element capsfilter0:sink
0:00:00.014150291 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstelement.c:1017:gst_element_get_static_pad: found pad capsfilter0:sink
0:00:00.014153041 32506 0x6000015899f0 INFO                GST_PADS gstutils.c:1635:prepare_link_maybe_ghosting: projectm0 and capsfilter0 in same bin, no need for ghost pads
0:00:00.014156708 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:2441:gst_pad_link_prepare: trying to link projectm0:src and capsfilter0:sink
0:00:00.014160291 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:4398:gst_pad_peer_query:<capsfilter0:src> pad has no peer
0:00:00.014164291 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:2622:gst_pad_link_full: linked projectm0:src and capsfilter0:sink, successful
0:00:00.014165916 32506 0x6000015899f0 INFO               GST_EVENT gstevent.c:1687:gst_event_new_reconfigure: creating reconfigure event
0:00:00.014167625 32506 0x6000015899f0 INFO               GST_EVENT gstpad.c:6018:gst_pad_send_event_unchecked:<projectm0:src> Received event on flushing pad. Discarding
0:00:00.014170916 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstutils.c:1821:gst_element_link_pads_full: trying to link element capsfilter0:src to element videoconvert0:(any)
0:00:00.014231000 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstelement.c:1017:gst_element_get_static_pad: found pad capsfilter0:src
0:00:00.014237291 32506 0x6000015899f0 INFO                GST_PADS gstutils.c:1081:gst_pad_check_link: trying to link capsfilter0:src and videoconvert0:sink
0:00:00.014244500 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:4398:gst_pad_peer_query:<videoconvert0:src> pad has no peer
0:00:00.014515625 32506 0x6000015899f0 INFO                GST_PADS gstutils.c:1635:prepare_link_maybe_ghosting: capsfilter0 and videoconvert0 in same bin, no need for ghost pads
0:00:00.014521333 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:2441:gst_pad_link_prepare: trying to link capsfilter0:src and videoconvert0:sink
0:00:00.014525000 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:4398:gst_pad_peer_query:<videoconvert0:src> pad has no peer
0:00:00.014788500 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:2622:gst_pad_link_full: linked capsfilter0:src and videoconvert0:sink, successful
0:00:00.014791500 32506 0x6000015899f0 INFO               GST_EVENT gstevent.c:1687:gst_event_new_reconfigure: creating reconfigure event
0:00:00.014793541 32506 0x6000015899f0 INFO               GST_EVENT gstpad.c:6018:gst_pad_send_event_unchecked:<capsfilter0:src> Received event on flushing pad. Discarding
0:00:00.014799666 32506 0x6000015899f0 INFO            GST_PIPELINE subprojects/gstreamer/gst/parse/grammar.y:1062:gst_parse_perform_link: linking some pad of GstVideoConvert named videoconvert0 to some pad of GstOSXVideoSink named osxvideosink0 (0/0) with caps "(NULL)"
0:00:00.014802750 32506 0x6000015899f0 INFO        GST_ELEMENT_PADS gstutils.c:1821:gst_element_link_pads_full: trying to link element videoconvert0:(any) to element osxvideosink0:(any)
0:00:00.014805666 32506 0x6000015899f0 INFO                GST_PADS gstutils.c:1081:gst_pad_check_link: trying to link videoconvert0:src and osxvideosink0:sink
0:00:00.014835625 32506 0x6000015899f0 INFO                GST_PADS gstutils.c:1635:prepare_link_maybe_ghosting: videoconvert0 and osxvideosink0 in same bin, no need for ghost pads
0:00:00.014839416 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:2441:gst_pad_link_prepare: trying to link videoconvert0:src and osxvideosink0:sink
0:00:00.014864583 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:2622:gst_pad_link_full: linked videoconvert0:src and osxvideosink0:sink, successful
0:00:00.014866416 32506 0x6000015899f0 INFO               GST_EVENT gstevent.c:1687:gst_event_new_reconfigure: creating reconfigure event
0:00:00.014868291 32506 0x6000015899f0 INFO               GST_EVENT gstpad.c:6018:gst_pad_send_event_unchecked:<videoconvert0:src> Received event on flushing pad. Discarding
Setting pipeline to PAUSED ...
0:00:00.014914583 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2484:gst_bin_element_set_state:<osxvideosink0> current NULL pending VOID_PENDING, desired next READY
0:00:00.014917833 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2825:gst_element_continue_state:<osxvideosink0> completed state change to READY
0:00:00.014920375 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2728:_priv_gst_element_state_changed:<osxvideosink0> notifying about state-changed NULL to READY (VOID_PENDING pending)
0:00:00.014928833 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2942:gst_bin_change_state_func:<pipeline0> child 'osxvideosink0' changed state to 2(READY) successfully
0:00:00.014931916 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2484:gst_bin_element_set_state:<videoconvert0> current NULL pending VOID_PENDING, desired next READY
0:00:00.014933833 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2825:gst_element_continue_state:<videoconvert0> completed state change to READY
0:00:00.014949458 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2728:_priv_gst_element_state_changed:<videoconvert0> notifying about state-changed NULL to READY (VOID_PENDING pending)
0:00:00.014956875 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2942:gst_bin_change_state_func:<pipeline0> child 'videoconvert0' changed state to 2(READY) successfully
0:00:00.014961333 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2484:gst_bin_element_set_state:<capsfilter0> current NULL pending VOID_PENDING, desired next READY
0:00:00.014963958 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2825:gst_element_continue_state:<capsfilter0> completed state change to READY
0:00:00.014966333 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2728:_priv_gst_element_state_changed:<capsfilter0> notifying about state-changed NULL to READY (VOID_PENDING pending)
0:00:00.014969166 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2942:gst_bin_change_state_func:<pipeline0> child 'capsfilter0' changed state to 2(READY) successfully
0:00:00.015029625 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2484:gst_bin_element_set_state:<projectm0> current NULL pending VOID_PENDING, desired next READY
0:00:00.015033500 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2825:gst_element_continue_state:<projectm0> completed state change to READY
0:00:00.015035916 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2728:_priv_gst_element_state_changed:<projectm0> notifying about state-changed NULL to READY (VOID_PENDING pending)
0:00:00.015039625 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2942:gst_bin_change_state_func:<pipeline0> child 'projectm0' changed state to 2(READY) successfully
0:00:00.015042458 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2484:gst_bin_element_set_state:<audioconvert0> current NULL pending VOID_PENDING, desired next READY
0:00:00.015044541 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2825:gst_element_continue_state:<audioconvert0> completed state change to READY
0:00:00.015046791 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2728:_priv_gst_element_state_changed:<audioconvert0> notifying about state-changed NULL to READY (VOID_PENDING pending)
0:00:00.015049416 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2942:gst_bin_change_state_func:<pipeline0> child 'audioconvert0' changed state to 2(READY) successfully
0:00:00.015051958 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2484:gst_bin_element_set_state:<queue0> current NULL pending VOID_PENDING, desired next READY
0:00:00.015053875 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2825:gst_element_continue_state:<queue0> completed state change to READY
0:00:00.015126333 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2728:_priv_gst_element_state_changed:<queue0> notifying about state-changed NULL to READY (VOID_PENDING pending)
0:00:00.015130375 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2942:gst_bin_change_state_func:<pipeline0> child 'queue0' changed state to 2(READY) successfully
0:00:00.015133000 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2484:gst_bin_element_set_state:<audiotestsrc0> current NULL pending VOID_PENDING, desired next READY
0:00:00.015135458 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2825:gst_element_continue_state:<audiotestsrc0> completed state change to READY
0:00:00.015137583 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2728:_priv_gst_element_state_changed:<audiotestsrc0> notifying about state-changed NULL to READY (VOID_PENDING pending)
0:00:00.015140083 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2942:gst_bin_change_state_func:<pipeline0> child 'audiotestsrc0' changed state to 2(READY) successfully
0:00:00.015143750 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2800:gst_element_continue_state:<pipeline0> committing state from NULL to READY, pending PAUSED, next PAUSED
0:00:00.015200500 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2728:_priv_gst_element_state_changed:<pipeline0> notifying about state-changed NULL to READY (PAUSED pending)
0:00:00.015218833 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2807:gst_element_continue_state:<pipeline0> continue state change READY to PAUSED, final PAUSED
0:00:00.015224000 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2484:gst_bin_element_set_state:<osxvideosink0> current READY pending VOID_PENDING, desired next PAUSED
0:00:00.026191708 32506 0x6000015899f0 INFO            osxvideosink osxvideosink.m:131:gst_osx_video_sink_osxwindow_create:<osxvideosink0> emitting prepare-xwindow-id
0:00:00.042228916 32506 0x6000015899f0 INFO            osxvideosink osxvideosink.m:148:gst_osx_video_sink_osxwindow_create:<osxvideosink0> No superview, creating an internal window.
0:00:00.055377875 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2948:gst_bin_change_state_func:<pipeline0> child 'osxvideosink0' is changing state asynchronously to PAUSED
0:00:00.055388666 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2484:gst_bin_element_set_state:<videoconvert0> current READY pending VOID_PENDING, desired next PAUSED
0:00:00.055393375 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2825:gst_element_continue_state:<videoconvert0> completed state change to PAUSED
0:00:00.055396333 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2728:_priv_gst_element_state_changed:<videoconvert0> notifying about state-changed READY to PAUSED (VOID_PENDING pending)
0:00:00.055402291 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2942:gst_bin_change_state_func:<pipeline0> child 'videoconvert0' changed state to 3(PAUSED) successfully
0:00:00.055406208 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2484:gst_bin_element_set_state:<capsfilter0> current READY pending VOID_PENDING, desired next PAUSED
0:00:00.055409000 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2825:gst_element_continue_state:<capsfilter0> completed state change to PAUSED
0:00:00.055411291 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2728:_priv_gst_element_state_changed:<capsfilter0> notifying about state-changed READY to PAUSED (VOID_PENDING pending)
0:00:00.055413958 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2942:gst_bin_change_state_func:<pipeline0> child 'capsfilter0' changed state to 3(PAUSED) successfully
0:00:00.055448166 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2484:gst_bin_element_set_state:<projectm0> current READY pending VOID_PENDING, desired next PAUSED
0:00:00.055462125 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2825:gst_element_continue_state:<projectm0> completed state change to PAUSED
0:00:00.055494250 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2728:_priv_gst_element_state_changed:<projectm0> notifying about state-changed READY to PAUSED (VOID_PENDING pending)
0:00:00.055499458 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2942:gst_bin_change_state_func:<pipeline0> child 'projectm0' changed state to 3(PAUSED) successfully
0:00:00.055503458 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2484:gst_bin_element_set_state:<audioconvert0> current READY pending VOID_PENDING, desired next PAUSED
0:00:00.055506833 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2825:gst_element_continue_state:<audioconvert0> completed state change to PAUSED
0:00:00.055509166 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2728:_priv_gst_element_state_changed:<audioconvert0> notifying about state-changed READY to PAUSED (VOID_PENDING pending)
0:00:00.055646375 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2942:gst_bin_change_state_func:<pipeline0> child 'audioconvert0' changed state to 3(PAUSED) successfully
0:00:00.055651583 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2484:gst_bin_element_set_state:<queue0> current READY pending VOID_PENDING, desired next PAUSED
0:00:00.055690000 32506 0x6000015899f0 INFO                    task gsttask.c:531:gst_task_set_lock: setting stream lock 0x15a964120 on task 0x15aa0da50
0:00:00.055694125 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:6363:gst_pad_start_task:<queue0:src> created task 0x15aa0da50
0:00:00.055742791 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2825:gst_element_continue_state:<queue0> completed state change to PAUSED
0:00:00.055761791 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2728:_priv_gst_element_state_changed:<queue0> notifying about state-changed READY to PAUSED (VOID_PENDING pending)
0:00:00.055767958 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2942:gst_bin_change_state_func:<pipeline0> child 'queue0' changed state to 3(PAUSED) successfully
0:00:00.055771500 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2484:gst_bin_element_set_state:<audiotestsrc0> current READY pending VOID_PENDING, desired next PAUSED
0:00:00.055780375 32506 0x6000015899f0 INFO                 basesrc gstbasesrc.c:1454:gst_base_src_do_seek:<audiotestsrc0> 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.055829791 32506 0x6000015899f0 INFO                    task gsttask.c:531:gst_task_set_lock: setting stream lock 0x15a963870 on task 0x15ad04380
0:00:00.055835208 32506 0x6000015899f0 INFO                GST_PADS gstpad.c:6363:gst_pad_start_task:<audiotestsrc0:src> created task 0x15ad04380
0:00:00.055875041 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2825:gst_element_continue_state:<audiotestsrc0> completed state change to PAUSED
0:00:00.055882041 32506 0x6000015899f0 INFO              GST_STATES gstelement.c:2728:_priv_gst_element_state_changed:<audiotestsrc0> notifying about state-changed READY to PAUSED (VOID_PENDING pending)
0:00:00.055887500 32506 0x6000015899f0 INFO              GST_STATES gstbin.c:2942:gst_bin_change_state_func:<pipeline0> child 'audiotestsrc0' changed state to 3(PAUSED) successfully
0:00:00.055896666 32506 0x6000015899f0 INFO                pipeline gstpipeline.c:540:gst_pipeline_change_state:<pipeline0> pipeline is not live
Pipeline is PREROLLING ...
0:00:00.055910875 32506 0x600001598640 INFO        GST_ELEMENT_PADS gstelement.c:1014:gst_element_get_static_pad: no such pad 'sink' in element "audiotestsrc0"
0:00:00.055917333 32506 0x600001598640 FIXME                default gstutils.c:4089:gst_element_decorate_stream_id_internal:<audiotestsrc0> Creating random stream-id, consider implementing a deterministic way of creating a stream-id
0:00:00.056032750 32506 0x600001598640 INFO               structure gststructure.c:2957:gst_structure_get_valist: Expected field 'channel-mask' in structure: audio/x-raw, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ];
0:00:00.056053333 32506 0x600001598640 INFO               structure gststructure.c:2966:gst_structure_get_valist: Expected field 'channel-mask' in structure to be of type 'GstBitmask', but field was of type 'GstValueList': audio/x-raw, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], channel-mask=(bitmask){ 0x0000000000000003 };
0:00:00.056088333 32506 0x600001598640 WARN          audio-channels audio-channels.c:415:gst_audio_channel_positions_from_mask: Only partially valid channel mask 0x0000000000000003 for 1 channels
0:00:00.056096500 32506 0x600001598640 INFO               GST_EVENT gstevent.c:918:gst_event_new_caps: creating caps event audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)44100, channels=(int)1, channel-mask=(bitmask)0x0000000000000003
/GstPipeline:pipeline0/GstAudioTestSrc:audiotestsrc0.GstPad:src: caps = audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)44100, channels=(int)1, channel-mask=(bitmask)0x0000000000000003
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:sink: caps = audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)44100, channels=(int)1, channel-mask=(bitmask)0x0000000000000003
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:src: caps = audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)44100, channels=(int)1, channel-mask=(bitmask)0x0000000000000003
0:00:00.056163541 32506 0x600001581ea0 INFO           basetransform gstbasetransform.c:1326:gst_base_transform_setcaps:<audioconvert0> reuse caps
0:00:00.056169625 32506 0x600001581ea0 WARN          audio-channels audio-channels.c:415:gst_audio_channel_positions_from_mask: Only partially valid channel mask 0x0000000000000003 for 1 channels
0:00:00.056172750 32506 0x600001581ea0 WARN          audio-channels audio-channels.c:415:gst_audio_channel_positions_from_mask: Only partially valid channel mask 0x0000000000000003 for 1 channels
0:00:00.056179416 32506 0x600001581ea0 INFO         audio-converter audio-converter.c:1361:gst_audio_converter_new: unitsizes: 2 -> 2
0:00:00.056182000 32506 0x600001581ea0 INFO         audio-converter audio-converter.c:730:chain_unpack: unpack format S16LE to S16LE
0:00:00.056192291 32506 0x600001581ea0 INFO         audio-converter audio-converter.c:872:chain_mix: mix format S16LE, passthrough 1, in_channels 1, out_channels 1
0:00:00.056195041 32506 0x600001581ea0 INFO         audio-converter audio-converter.c:966:chain_quantize: depth in 16, out 16
0:00:00.056196791 32506 0x600001581ea0 INFO         audio-converter audio-converter.c:978:chain_quantize: using no dither and noise shaping
0:00:00.056198875 32506 0x600001581ea0 INFO         audio-converter audio-converter.c:1036:chain_pack: pack format S16LE to S16LE
0:00:00.056200750 32506 0x600001581ea0 INFO         audio-converter audio-converter.c:1390:gst_audio_converter_new: same formats, same layout, no resampler and passthrough mixing -> passthrough
0:00:00.056256666 32506 0x600001581ea0 INFO               GST_EVENT gstevent.c:918:gst_event_new_caps: creating caps event audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)44100, channels=(int)1, channel-mask=(bitmask)0x0000000000000003
0:00:00.056277541 32506 0x600001581ea0 WARN          audio-channels audio-channels.c:415:gst_audio_channel_positions_from_mask: Only partially valid channel mask 0x0000000000000003 for 1 channels
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:src: caps = audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)44100, channels=(int)1, channel-mask=(bitmask)0x0000000000000003
0:00:00.056434250 32506 0x600001581ea0 INFO               GST_EVENT gstevent.c:918:gst_event_new_caps: creating caps event video/x-raw, width=(int)512, height=(int)512, framerate=(fraction)60/1, format=(string)ABGR
/GstPipeline:pipeline0/GstProjectM:projectm0.GstPad:src: caps = video/x-raw, width=(int)512, height=(int)512, framerate=(fraction)60/1, format=(string)ABGR
0:00:00.056561125 32506 0x600001581ea0 INFO           basetransform gstbasetransform.c:1326:gst_base_transform_setcaps:<capsfilter0> reuse caps
0:00:00.056565375 32506 0x600001581ea0 INFO               GST_EVENT gstevent.c:918:gst_event_new_caps: creating caps event video/x-raw, width=(int)512, height=(int)512, framerate=(fraction)60/1, format=(string)ABGR
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = video/x-raw, width=(int)512, height=(int)512, framerate=(fraction)60/1, format=(string)ABGR
0:00:00.056759000 32506 0x600001581ea0 INFO               GST_EVENT gstevent.c:918:gst_event_new_caps: creating caps event video/x-raw, width=(int)512, height=(int)512, framerate=(fraction)60/1, format=(string)UYVY
/GstPipeline:pipeline0/GstVideoConvert:videoconvert0.GstPad:src: caps = video/x-raw, width=(int)512, height=(int)512, framerate=(fraction)60/1, format=(string)UYVY
0:00:00.059485916 32506 0x6000038823d0 INFO            osxvideosink osxvideosink.m:708:-[GstOSXVideoSinkObject resize]:<osxvideosink0> resizing
0:00:00.061946916 32506 0x6000038823d0 INFO            osxvideosink osxvideosink.m:716:-[GstOSXVideoSinkObject resize]:<osxvideosink0> done
/GstPipeline:pipeline0/GstOSXVideoSink:osxvideosink0.GstPad:sink: caps = video/x-raw, width=(int)512, height=(int)512, framerate=(fraction)60/1, format=(string)UYVY
/GstPipeline:pipeline0/GstVideoConvert:videoconvert0.GstPad:sink: caps = video/x-raw, width=(int)512, height=(int)512, framerate=(fraction)60/1, format=(string)ABGR
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps = video/x-raw, width=(int)512, height=(int)512, framerate=(fraction)60/1, format=(string)ABGR
0:00:00.062087125 32506 0x600001581ea0 INFO             GST_CONTEXT gstglutils.c:115:pad_query:<projectm0:src> pad peer query failed
0:00:00.062093000 32506 0x600001581ea0 INFO             GST_CONTEXT gstglutils.c:115:pad_query:<projectm0:sink> pad peer query failed
0:00:00.062094958 32506 0x600001581ea0 INFO             GST_CONTEXT gstglutils.c:177:_gst_context_query:<projectm0> posting need context message
0:00:00.062103208 32506 0x600001581ea0 INFO             GST_CONTEXT gstglutils.c:115:pad_query:<projectm0:src> pad peer query failed
0:00:00.062105541 32506 0x600001581ea0 INFO             GST_CONTEXT gstglutils.c:115:pad_query:<projectm0:sink> pad peer query failed
0:00:00.062107375 32506 0x600001581ea0 INFO             GST_CONTEXT gstglutils.c:177:_gst_context_query:<projectm0> posting need context message
0:00:00.062192375 32506 0x600001581ea0 INFO             GST_CONTEXT gstglutils.c:241:gst_gl_element_propagate_display_context:<projectm0> posting have context (0x600001294d20) message with display (0x600000d9c380)
0:00:00.062201625 32506 0x600001581ea0 INFO             GST_CONTEXT gstglutils.c:115:pad_query:<projectm0:src> pad peer query failed
0:00:00.062203958 32506 0x600001581ea0 INFO             GST_CONTEXT gstglutils.c:115:pad_query:<projectm0:sink> pad peer query failed
0:00:00.062205708 32506 0x600001581ea0 INFO             GST_CONTEXT gstglutils.c:177:_gst_context_query:<projectm0> posting need context message
0:00:00.062209208 32506 0x600001581ea0 INFO             GST_CONTEXT gstglutils.c:115:pad_query:<projectm0:src> pad peer query failed
0:00:00.062219208 32506 0x600001581ea0 INFO               glcontext gstglcontext.c:34Got context from element 'projectm0': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayCocoa\)\ gldisplaycocoa0";
9:gst_gl_context_new: creating a context for display <gldisplaycocoa0>, user choice:(null)
0:00:00.062272958 32506 0x600001581ea0 INFO                glwindow gstglwindow.c:295:gst_gl_window_new: creating a window, user choice:(null)
0:00:00.062303041 32506 0x600001598e10 INFO               glcontext gstglcontext.c:1322:gst_gl_context_create_thread:<glcontextcocoa0> Attempting to create opengl context. user chosen api(s) (any), compiled api support (opengl opengl3) display api (opengl3 gles2)
0:00:00.066721458 32506 0x600001598e10 INFO         glcontext_cocoa gstglcontext_cocoa.m:327:gst_gl_context_cocoa_create_context:<glcontextcocoa0> GL context created: 0x15b01da00
0:00:00.066737291 32506 0x600001598e10 INFO               glcontext gstglcontext.c:1333:gst_gl_context_create_thread:<glcontextcocoa0> created context
0:00:00.066740833 32506 0x600001598e10 INFO               glcontext gstglcontext.c:1349:gst_gl_context_create_thread:<glcontextcocoa0> available GL APIs: opengl3
0:00:00.067277208 32506 0x600001598e10 INFO               glcontext gstglcontext.c:1113:_create_context_info:<glcontextcocoa0> GL_VERSION: 4.1 Metal - 88
0:00:00.067283041 32506 0x600001598e10 INFO               glcontext gstglcontext.c:1116:_create_context_info:<glcontextcocoa0> GL_SHADING_LANGUAGE_VERSION: 4.10
0:00:00.067289583 32506 0x600001598e10 INFO               glcontext gstglcontext.c:1118:_create_context_info:<glcontextcocoa0> GL_VENDOR: Apple
0:00:00.067291416 32506 0x600001598e10 INFO               glcontext gstglcontext.c:1120:_create_context_info:<glcontextcocoa0> GL_RENDERER: Apple M1 Pro
0:00:00.071000416 32506 0x600001598e10 INFO               glcontext gstgldebug.c:339:_gst_gl_debug_enable:<glcontextcocoa0> No debugging support available
0:00:00.071022833 32506 0x600003883d80 INFO               glcontext gstglcontext.c:1172:_unlock_create_thread:<glcontextcocoa0> gl thread running
0:00:00.071033583 32506 0x600001581ea0 INFO               glcontext gstglcontext.c:1079:gst_gl_context_create:<glcontextcocoa0> gl thread created
0:00:00.071041250 32506 0x600001581ea0 INFO    glbaseaudiovisualizer gstglbaseaudiovisualizer.c:430:gst_gl_base_audio_visualizer_find_gl_context_unlocked:<projectm0> found OpenGL context <glcontextcocoa0>
0:00:00.071069375 32506 0x600003883d80 INFO    glbaseaudiovisualizer gstglbaseaudiovisualizer.c:234:gst_gl_base_audio_visualizer_gl_start:<projectm0> starting
0:00:00.075897250 32506 0x6000038823d0 INFO         glcaopengllayer gstglcaopengllayer.m:167:-[GstGLCAOpenGLLayer copyCGLContextForPixelFormat:]: attempting to create CGLContext for CAOpenGLLayer with share context 0x15b01da00
0:00:00.076307041 32506 0x6000038823d0 INFO               glcontext gstglcontext.c:1113:_create_context_info:<glwrappedcontext0> GL_VERSION: 4.1 Metal - 88
0:00:00.076311208 32506 0x6000038823d0 INFO               glcontext gstglcontext.c:1116:_create_context_info:<glwrappedcontext0> GL_SHADING_LANGUAGE_VERSION: 4.10
0:00:00.076313166 32506 0x6000038823d0 INFO               glcontext gstglcontext.c:1118:_create_context_info:<glwrappedcontext0> GL_VENDOR: Apple
0:00:00.076315000 32506 0x6000038823d0 INFO               glcontext gstglcontext.c:1120:_create_context_info:<glwrappedcontext0> GL_RENDERER: Apple M1 Pro
0:00:00.100753833 32506 0x600003883d80 INFO                projectm projectm.c:63:projectm_init:<projectm0> Using Properties: preset=test/presets/250-wavecode.milk.milk, texture-dir=(null), beat-sensitivity=1.000000, hard-cut-duration=3.000000, hard-cut-enabled=0, hard-cut-sensitivity=1.000000, soft-cut-duration=3.000000, preset-duration=0.000000, mesh-size=(48, 32)aspect-correction=1, easter-egg=0.000000, preset-locked=1, 

** (gst-launch-1.0:32506): ERROR **: 09:32:15.724: OpenGL Error: GL_INVALID_ENUM - Enumeration parameter is not legal

./test.sh: line 42: 32506 Trace/BPT trap: 5       GST_DEBUG=4 gst-launch-1.0 -v audiotestsrc ! queue ! audioconvert ! projectm preset="test/presets/250-wavecode.milk.milk" ! "video/x-raw,width=512,height=512,framerate=60/1" ! videoconvert ! $VIDEO_SINK sync=false

@Blaquewithaq
Copy link
Contributor

Okay I'll review this and see if i can track it down

@Blaquewithaq
Copy link
Contributor

Were there any other videosinks available to you on osx, aside from osxvideosink?

@nzoschke
Copy link
Author

% gst-inspect-1.0 | grep sink                                                                                                                                        master
app:  appsink: AppSink
applemedia:  avsamplebufferlayersink: AV Sample video sink
autodetect:  autoaudiosink: Auto audio sink
autodetect:  autovideosink: Auto video sink
aws:  awss3hlssink: S3 HLS Sink
aws:  awss3putobjectsink: Amazon S3 PutObject sink
aws:  awss3sink: Amazon S3 sink
aws:  rusotos3sink: Amazon S3 sink
coreelements:  fakesink: Fake Sink
coreelements:  fdsink: Filedescriptor Sink
coreelements:  filesink: File Sink
curl:  curlfilesink: Curl file sink
curl:  curlftpsink: Curl ftp sink
curl:  curlhttpsink: Curl http sink
curl:  curlsmtpsink: Curl smtp sink
dash:  dashsink: DASH Sink
debug:  testsink: Test plugin
debugutilsbad:  checksumsink: Checksum sink
debugutilsbad:  fakeaudiosink: Fake Audio Sink
debugutilsbad:  fakevideosink: Fake Video Sink
debugutilsbad:  fpsdisplaysink: Measure and show framerate on videosink
debugutilsbad:  videocodectestsink: Video CODEC Test Sink
decklink:  decklinkaudiosink: Decklink Audio Sink
decklink:  decklinkvideosink: Decklink Video Sink
gdkpixbuf:  gdkpixbufsink: GdkPixbuf sink
gio:  giosink: GIO sink
gio:  giostreamsink: GIO stream sink
gtk:  gtksink: Gtk Video Sink
gtk4:  gtk4paintablesink: GTK 4 Paintable Sink
hls:  hlssink: HTTP Live Streaming sink
hls:  hlssink2: HTTP Live Streaming sink
hlssink3:  hlscmafsink: HTTP Live Streaming CMAF Sink
hlssink3:  hlssink3: HTTP Live Streaming sink
inter:  interaudiosink: Internal audio sink
inter:  intersubsink: Internal subtitle sink
inter:  intervideosink: Internal video sink
ipcpipeline:  ipcpipelinesink: Inter-process Pipeline Sink
multifile:  multifilesink: Multi-File Sink
multifile:  splitmuxsink: Split Muxing Bin
ndi:  ndisink: NewTek NDI Sink
ndi:  ndisinkcombiner: NewTek NDI Sink Combiner
opengl:  caopengllayersink: CAOpenGLLayer video sink
opengl:  glimagesink: GL Sink Bin
opengl:  glimagesinkelement: OpenGL video sink
opengl:  glsinkbin: GL Sink Bin
oss4:  oss4sink: OSS v4 Audio Sink
osxaudio:  osxaudiosink: Audio Sink (macOS)
osxvideo:  osxvideosink: macOS Video sink
playback:  playsink: Player Sink
proxy:  proxysink: Proxy Sink
rist:  ristsink: RIST Sink
rsfile:  rsfilesink: File Sink
rsinter:  intersink: Inter Sink
rswebrtc:  awskvswebrtcsink: AwsKvsWebRTCSink
rswebrtc:  janusvrwebrtcsink: JanusVRWebRTCSink
rswebrtc:  livekitwebrtcsink: LiveKitWebRTCSink
rswebrtc:  webrtcsink: WebRTCSink
rswebrtc:  whipclientsink: WhipWebRTCSink
rtmp:  rtmpsink: RTMP output sink
rtmp2:  rtmp2sink: RTMP sink element
rtpmanagerbad:  rtpsink: RTP Sink element
rtspclientsink:  rtspclientsink: RTSP RECORD client
shm:  shmsink: Shared Memory Sink
shout2:  shout2send: Icecast network sink
soup:  souphttpclientsink: HTTP client sink
srt:  srtclientsink: SRT sink
srt:  srtserversink: SRT sink
srt:  srtsink: SRT sink
tcp:  multifdsink: Multi filedescriptor sink
tcp:  multisocketsink: Multi socket sink
tcp:  tcpclientsink: TCP client sink
tcp:  tcpserversink: TCP server sink
threadshare:  ts-proxysink: Thread-sharing proxy sink
threadshare:  ts-udpsink: Thread-sharing UDP sink
udp:  dynudpsink: UDP packet sender
udp:  multiudpsink: UDP packet sender
udp:  udpsink: UDP packet sender
unixfd:  unixfdsink: Unix file descriptor sink
webrtchttp:  whipsink: WHIP Sink Bin
ximagesink:  ximagesink: Video sink

@Blaquewithaq
Copy link
Contributor

Try all of these and lmk if any work:

  • autodetect: autovideosink: Auto video sink
  • opengl: caopengllayersink: CAOpenGLLayer video sink
  • opengl: glimagesink: GL Sink Bin
  • opengl: glimagesinkelement: OpenGL video sink
  • opengl: glsinkbin: GL Sink Bin

My goal here is to narrow down my search field.

If any errors look new please share!

@nzoschke
Copy link
Author

I'm thinking we should take out the video pipeline stuff, does this look right?

VIDEO_SINK="autovideosink"
GST_DEBUG=4 gst-launch-1.0 -v \
    audiotestsrc ! queue ! audioconvert ! \
    projectm preset="test/presets/250-wavecode.milk.milk" \
    ! $VIDEO_SINK sync=false

** (gst-launch-1.0:33346): ERROR **: 10:05:09.464: OpenGL Error: GL_INVALID_ENUM - Enumeration parameter is not legal
VIDEO_SINK="caopengllayersink"
GST_DEBUG=4 gst-launch-1.0 -v \
    audiotestsrc ! queue ! audioconvert ! \
    projectm preset="test/presets/250-wavecode.milk.milk" \
    ! $VIDEO_SINK sync=false

WARNING: erroneous pipeline: could not link projectm0 to caopengllayersink0
VIDEO_SINK="glimagesink"
GST_DEBUG=4 gst-launch-1.0 -v \
    audiotestsrc ! queue ! audioconvert ! \
    projectm preset="test/presets/250-wavecode.milk.milk" \
    ! $VIDEO_SINK sync=false

** (gst-launch-1.0:33370): ERROR **: 10:05:50.329: OpenGL Error: GL_INVALID_ENUM - Enumeration parameter is not legal
VIDEO_SINK="glimagesinkelement"
GST_DEBUG=4 gst-launch-1.0 -v \
    audiotestsrc ! queue ! audioconvert ! \
    projectm preset="test/presets/250-wavecode.milk.milk" \
    ! $VIDEO_SINK sync=false

WARNING: erroneous pipeline: could not link projectm0 to glimagesink0
VIDEO_SINK="glsinkbin"
GST_DEBUG=4 gst-launch-1.0 -v \
    audiotestsrc ! queue ! audioconvert ! \
    projectm preset="test/presets/250-wavecode.milk.milk" \
    ! $VIDEO_SINK sync=false

0:00:00.016633083 33419 0x600000df54f0 INFO              GST_STATES gstbin.c:2608:gst_bin_element_set_state:<audiotestsrc0> skipping transition from NULL to  NULL
0:00:00.016635166 33419 0x600000df54f0 INFO              GST_STATES gstbin.c:2942:gst_bin_change_state_func:<pipeline0> child 'audiotestsrc0' changed state to 1(NULL) successfully
0:00:00.016637333 33419 0x600000df54f0 INFO              GST_STATES gstelement.c:2825:gst_element_continue_state:<pipeline0> completed state change to NULL
Freeing pipeline ...
0:00:00.016646041 33419 0x600000df54f0 INFO        GST_ELEMENT_PADS gstpad.c:2147:gst_pad_unlink: unlinking projectm0:src(0x12000f9a0) and glsinkbin0:sink(0x120015e50)

The last one didn't error but it didn't display anything either.

@Blaquewithaq
Copy link
Contributor

Thanks for testing those!

How would you remove it? Its what displays the gl context?

@nzoschke
Copy link
Author

VIDEO_SINK="autovideosink"
GST_DEBUG=4 gst-launch-1.0 -v \
  audiotestsrc ! queue ! audioconvert ! \
  projectm preset="test/presets/250-wavecode.milk.milk" \
  ! "video/x-raw,width=512,height=512,framerate=60/1" ! videoconvert ! $VIDEO_SINK sync=false

** (gst-launch-1.0:33546): ERROR **: 10:15:36.846: OpenGL Error: GL_INVALID_ENUM - Enumeration parameter is not legal

zsh: trace trap  GST_DEBUG=4 gst-launch-1.0 -v audiotestsrc ! queue ! audioconvert ! projectm 
VIDEO_SINK="caopengllayersink"
GST_DEBUG=4 gst-launch-1.0 -v \
  audiotestsrc ! queue ! audioconvert ! \
  projectm preset="test/presets/250-wavecode.milk.milk" \
  ! "video/x-raw,width=512,height=512,framerate=60/1" ! videoconvert ! $VIDEO_SINK sync=false

0:00:00.016151875 33565 0x6000038d14f0 ERROR           GST_PIPELINE subprojects/gstreamer/gst/parse/grammar.y:1150:gst_parse_perform_link: could not link videoconvert0 to caopengllayersink0

WARNING: erroneous pipeline: could not link videoconvert0 to caopengllayersink0
VIDEO_SINK="glimagesink"
GST_DEBUG=4 gst-launch-1.0 -v \
  audiotestsrc ! queue ! audioconvert ! \
  projectm preset="test/presets/250-wavecode.milk.milk" \
  ! "video/x-raw,width=512,height=512,framerate=60/1" ! videoconvert ! $VIDEO_SINK sync=false

** (gst-launch-1.0:33585): ERROR **: 10:16:37.152: OpenGL Error: GL_INVALID_ENUM - Enumeration parameter is not legal

zsh: trace trap  GST_DEBUG=4 gst-launch-1.0 -v audiotestsrc ! queue ! audioconvert ! projectm 
VIDEO_SINK="glimagesinkelement"
GST_DEBUG=4 gst-launch-1.0 -v \
  audiotestsrc ! queue ! audioconvert ! \
  projectm preset="test/presets/250-wavecode.milk.milk" \
  ! "video/x-raw,width=512,height=512,framerate=60/1" ! videoconvert ! $VIDEO_SINK sync=false

0:00:00.016014500 33605 0x6000016d82d0 ERROR           GST_PIPELINE subprojects/gstreamer/gst/parse/grammar.y:1150:gst_parse_perform_link: could not link videoconvert0 to glimagesink0
WARNING: erroneous pipeline: could not link videoconvert0 to glimagesink0
VIDEO_SINK="glsinkbin"
GST_DEBUG=4 gst-launch-1.0 -v \
  audiotestsrc ! queue ! audioconvert ! \
  projectm preset="test/presets/250-wavecode.milk.milk" \
  ! "video/x-raw,width=512,height=512,framerate=60/1" ! videoconvert ! $VIDEO_SINK sync=false

0:00:00.018605125 33625 0x600001564af0 INFO         GST_REFCOUNTING gstelement.c:3484:gst_element_finalize:<pipeline0> 0x159110c30 finalize parent
0:00:00.018610584 33625 0x600001564af0 INFO                GST_INIT gst.c:1094:gst_deinit: deinitializing GStreamer
0:00:00.019257959 33625 0x600001564af0 INFO                GST_INIT gst.c:1238:gst_deinit: deinitialized GStreamer

@Blaquewithaq
Copy link
Contributor

Oh my apologies, I misunderstood what you were talking about. I see now, the difference in commands.

I'll keep poking at it when I can but I'm not seeing a hint on where the issue is.

Without having my own osx device to dev on, I cant really do much else.

@hack-s
Copy link
Contributor

hack-s commented May 10, 2024

Looks like the GL error GL_INVALID_ENUM is already present right after projectm_create() is called.

@kblaschke
Copy link
Member

Debugging the hat plug-in, I can also see that the GL error pops up somewhere during projectM initialization. We don't check for error in most places (which is something we probably should do), so that can happen anywhere. Shaders and the basic textures as well as the vertex buffers look good though, as they all have proper IDs.

One way of checking would be placing glGetError() calls in strategic places in libprojectM and look where the error is set, then work back in the call hierarchy to find the call that is problematic. Might as well be a bug in projectM we missed.

@revmischa
Copy link
Contributor

revmischa commented May 12, 2024

I added a number of glGetError() calls and I think the problem is possibly located in MilkdropNoise::GetPreferredInternalFormat

    GLint preferredInternalFormat{GL_BGRA};
    glGetInternalformativ(GL_TEXTURE_2D, GL_RGBA8, GL_TEXTURE_IMAGE_FORMAT, sizeof(preferredInternalFormat), &preferredInternalFormat);

According to https://registry.khronos.org/OpenGL-Refpages/gl4/html/glGetInternalformat.xhtml it's only available from GL 4.2 on, and MacOS seems to have 4.1.

@kblaschke
Copy link
Member

That's kinda weird, as I'd expect that the function isn't defined at all, and would rather cause a nullptr dereference when caled like this.

Since I'm not really sure this internal format selection really does anything to improve performance and the order of the noise channels isn't relevant at all, I'd just remove that code and use GL_BGRA with GL Core and GL_RGBA with GLES, as these are the "good defaults" for each API variant. If it's not the preferred format, the GL driver will take care of rearranging the data accordingly, which isn't a big deal is these textures are just created once per projectM instance.

@kblaschke
Copy link
Member

I've removed the offending function in PR projectM-visualizer/projectm#806 as it's bad to use GL 4.2 functions in a library that claims to only need GL 3.3.

@kblaschke
Copy link
Member

After that fix (which was an unfortunate problem, but not the actual issue), it seems that the internal framebuffer creation in projectM fails, and the first frame rendered then fails with a GL_FRAMEBUFFER_UNDEFINED error.

That's a tough one, because the internal framebuffer classes look like everything is fine, e.g. each framebuffer has a unique positive ID assigned, which OpenGL returns on creation.

Searching a bit and speculating, it seems like there's some issue in the macOS OpenGL implementation that makes the framebuffer creation succeed, but the returned ID is still invalid and doesn't point to an existing framebuffer. From this StackOverflow post, this seems to happen if the framebuffer is created when no drawable surface is assigned to the context, e.g. no native window it can render to. The other possibility is that the OpenGL context creation function used by GStreamer might be NSOpenGLView, which is known to no longer work properly in macOS releases since around 10.9 (we're at 14.4 now).

So it might be worth a try to make sure that projectM is created only after the output window is present, as GStreamer probably creates the osxvideosink AKA the window after initializing projectM in the filter chain. That said, creating the projectM instance on the first actual draw call might work better. I won't have the time to test this before my vacation, but at least you have a starting point.

@hack-s
Copy link
Contributor

hack-s commented May 15, 2024

I have made the change @kblaschke suggested to move the projectM initialization into the render method on a branch in my fork init-projectm-on-render in case somebody with a mac has time to check it out.

@revmischa
Copy link
Contributor

I have made the change @kblaschke suggested to move the projectM initialization into the render method on a branch in my fork init-projectm-on-render in case somebody with a mac has time to check it out.

I tried init-projectm-on-render but got the same framebuffer issue

Process 56668 launched: '/opt/homebrew/bin/gst-launch-1.0' (arm64)
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Got context from element 'projectm0': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayCocoa\)\ gldisplaycocoa0";

** (gst-launch-1.0:56668): ERROR **: 20:12:46.383: OpenGL Error: GL_INVALID_FRAMEBUFFER_OPERATION - Incomplete framebuffer operation

Process 56668 stopped
* thread #13, queue = 'org.freedesktop.gstreamer.glwindow', stop reason = EXC_BREAKPOINT (code=1, subcode=0x1007742f4)
    frame #0: 0x00000001007742f4 libglib-2.0.0.dylib`_g_log_abort + 40
libglib-2.0.0.dylib`:
->  0x1007742f4 <+40>: brk    #0x1

libglib-2.0.0.dylib`g_log_structured:
    0x1007742f8 <+0>:  stp    x28, x27, [sp, #-0x60]!
    0x1007742fc <+4>:  stp    x26, x25, [sp, #0x10]
    0x100774300 <+8>:  stp    x24, x23, [sp, #0x20]
Target 0: (gst-launch-1.0) stopped.
(lldb) bt
* thread #13, queue = 'org.freedesktop.gstreamer.glwindow', stop reason = EXC_BREAKPOINT (code=1, subcode=0x1007742f4)
  * frame #0: 0x00000001007742f4 libglib-2.0.0.dylib`_g_log_abort + 40
    frame #1: 0x0000000100774688 libglib-2.0.0.dylib`g_log_structured_array + 264
    frame #2: 0x0000000100774140 libglib-2.0.0.dylib`g_log_default_handler + 204
    frame #3: 0x0000000100773d2c libglib-2.0.0.dylib`g_logv + 828
    frame #4: 0x0000000100773980 libglib-2.0.0.dylib`g_log + 28
    frame #5: 0x0000000100892aa0 libgstprojectm.dylib`gl_error_handler(context=0x000000014e606570, data=0x000000014d02ca30) at debug.c:38:9
    frame #6: 0x0000000100893d44 libgstprojectm.dylib`gst_projectm_render(glav=0x000000014d02ca30, audio=0x000000014c60e4f0, video=0x00000001706ba6b0) at plugin.c:316:3
    frame #7: 0x00000001008965f0 libgstprojectm.dylib`gst_gl_base_audio_visualizer_gl_thread_render_callback(params=0x00000001706ba5f8) at gstglbaseaudiovisualizer.c:297:38
    frame #8: 0x000000010448a668 libgstgl-1.0.0.dylib`_run_message_sync(message=0x00000001706ba570) at gstglwindow.c:638:5 [opt]
    frame #9: 0x000000010448ee88 libgstgl-1.0.0.dylib`__gst_gl_window_cocoa_send_message_async_block_invoke(.block_descriptor=0x0000600000dbeda0) at gstglwindow_cocoa.m:514:7 [opt]
    frame #10: 0x0000000182320750 libdispatch.dylib`_dispatch_call_block_and_release + 32
    frame #11: 0x00000001823223e8 libdispatch.dylib`_dispatch_client_callout + 20
    frame #12: 0x0000000182329a14 libdispatch.dylib`_dispatch_lane_serial_drain + 748
    frame #13: 0x000000018232a544 libdispatch.dylib`_dispatch_lane_invoke + 380
    frame #14: 0x00000001823352d0 libdispatch.dylib`_dispatch_root_queue_drain_deferred_wlh + 288
    frame #15: 0x0000000182334b44 libdispatch.dylib`_dispatch_workloop_worker_thread + 404
    frame #16: 0x00000001824cf00c libsystem_pthread.dylib`_pthread_wqthread + 288

@kblaschke
Copy link
Member

We could check whether GStreamer uses NSOpenGLView or the more modern API, and if this might be the issue. I'm currently on vacation and can't check up on this until mid-June, but if there isn't any progress then, I'll tune back in and see what I can find out.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants