fractalgee
(Fractalgee)
November 4, 2022, 9:28am
21
2.1.6 crashes Rack 2.1.2 on this Mac Mini (M1, 16GB, MacOS 13.0 (Ventura)
Thread 10 Crashed:
0 ??? 0x0 ???
1 plugin.dylib 0x147ce556 ProjectMRenderer::renderLoop(mySettings, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) + 614
2 plugin.dylib 0x147cf07f void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, ProjectMRenderer::init(mySettings const&, int*, int*, int*, int*)::$_0> >(void*) + 223
3 libsystem_pthread.dylib 0x7ff81b677259 _pthread_start + 125
4 libsystem_pthread.dylib 0x7ff81b672c7b thread_start + 15
that is all it leaves behind, this is on adding it to an empty rack (embedded version)
Same for me. Crashes directly when added to a patch with just a few modules.
My Configuration is
Rack Pro 2.1.2
macOS Catalina (10.15.7)
iMac (5k, 27â Display) Intel Core i5
AMD Radeon R0 M395 Graphics Card
From the Crash Log
Process: Rack [893]
Path: /Applications/VCV Rack 2 Pro.app/Contents/MacOS/Rack
Identifier: com.vcvrack.rack
Version: 2.1.2 (2.1.2)
Code Type: X86-64 (Native)
Parent Process: ??? [1]
Responsible: Rack [893]
User ID: 501
Date/Time: 2022-11-04 10:33:52.373 +0100
OS Version: Mac OS X 10.15.7 (19H2)
Report Version: 12
Anonymous UUID: XXX
Time Awake Since Boot: 1000 seconds
System Integrity Protection: enabled
Crashed Thread: 11
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
VM Regions Near 0:
-->
Kernel Alloc Once 000000000a4b1000-000000000a4b3000 [ 8K] rw-/rwx SM=PRV
Thread 0:: Dispatch queue: com.apple.main-thread
0 libRack.dylib 0x000000010a4ed7d6 nvg__tesselateBezier + 150
1 libRack.dylib 0x000000010a4ed8f5 nvg__tesselateBezier + 437
2 libRack.dylib 0x000000010a4ed8f5 nvg__tesselateBezier + 437
3 libRack.dylib 0x000000010a4ed8f5 nvg__tesselateBezier + 437
4 libRack.dylib 0x000000010a4ed8f5 nvg__tesselateBezier + 437
5 libRack.dylib 0x000000010a4ed8f5 nvg__tesselateBezier + 437
6 libRack.dylib 0x000000010a4caf1c nvg__flattenPaths + 300
7 libRack.dylib 0x000000010a4cacca nvgFill + 106
8 libRack.dylib 0x000000010a5f8caf rack::window::svgDraw(NVGcontext*, NSVGimage*) + 1327
9 libRack.dylib 0x000000010a5f606d rack::widget::Widget::draw(rack::widget::Widget::DrawArgs const&) + 461
10 libRack.dylib 0x000000010a5f4930 rack::widget::FramebufferWidget::drawFramebuffer() + 192
11 libRack.dylib 0x000000010a5f4639 rack::widget::FramebufferWidget::render(rack::math::Vec, rack::math::Vec, rack::math::Rect) + 1001
12 libRack.dylib 0x000000010a5f40e1 rack::widget::FramebufferWidget::draw(rack::widget::Widget::DrawArgs const&) + 545
13 libRack.dylib 0x000000010a5f606d rack::widget::Widget::draw(rack::widget::Widget::DrawArgs const&) + 461
14 libRack.dylib 0x000000010a5f606d rack::widget::Widget::draw(rack::widget::Widget::DrawArgs const&) + 461
15 libRack.dylib 0x000000010a594061 rack::app::ModuleWidget::draw(rack::widget::Widget::DrawArgs const&) + 97
16 libRack.dylib 0x000000010a5f606d rack::widget::Widget::draw(rack::widget::Widget::DrawArgs const&) + 461
17 libRack.dylib 0x000000010a5f606d rack::widget::Widget::draw(rack::widget::Widget::DrawArgs const&) + 461
18 libRack.dylib 0x000000010a5a709b rack::app::RackWidget::draw(rack::widget::Widget::DrawArgs const&) + 59
19 libRack.dylib 0x000000010a5f606d rack::widget::Widget::draw(rack::widget::Widget::DrawArgs const&) + 461
20 libRack.dylib 0x000000010a5f66d9 rack::widget::ZoomWidget::draw(rack::widget::Widget::DrawArgs const&) + 105
21 libRack.dylib 0x000000010a5f606d rack::widget::Widget::draw(rack::widget::Widget::DrawArgs const&) + 461
22 libRack.dylib 0x000000010a5f606d rack::widget::Widget::draw(rack::widget::Widget::DrawArgs const&) + 461
23 libRack.dylib 0x000000010a5ef224 rack::ui::ScrollWidget::draw(rack::widget::Widget::DrawArgs const&) + 52
24 libRack.dylib 0x000000010a5f606d rack::widget::Widget::draw(rack::widget::Widget::DrawArgs const&) + 461
25 libRack.dylib 0x000000010a5fb20d rack::window::Window::step() + 1997
26 libRack.dylib 0x000000010a5faa28 rack::window::Window::run() + 40
27 com.vcvrack.rack 0x000000010a4a2fbe main + 3454
28 libdyld.dylib 0x00007fff6e915cc9 start + 1
Thread 1:
0 libsystem_pthread.dylib 0x00007fff6eb15b68 start_wqthread + 0
Thread 2:: AMCP Logging Spool
0 libsystem_kernel.dylib 0x00007fff6ea56e36 semaphore_wait_trap + 10
1 com.apple.audio.caulk 0x00007fff684e9b16 caulk::mach::semaphore::wait() + 16
2 com.apple.audio.caulk 0x00007fff684e99b2 caulk::semaphore::timed_wait(double) + 106
3 com.apple.audio.caulk 0x00007fff684e97c4 caulk::concurrent::details::worker_thread::run() + 30
4 com.apple.audio.caulk 0x00007fff684e91e4 void* caulk::thread_proxy<std::__1::tuple<caulk::thread::attributes, void (caulk::concurrent::details::worker_thread::*)(), std::__1::tuple<caulk::concurrent::details::worker_thread*> > >(void*) + 45
5 libsystem_pthread.dylib 0x00007fff6eb1a109 _pthread_start + 148
6 libsystem_pthread.dylib 0x00007fff6eb15b8b thread_start + 15
Thread 3:
0 libsystem_kernel.dylib 0x00007fff6ea56e36 semaphore_wait_trap + 10
1 com.apple.audio.caulk 0x00007fff684e9b16 caulk::mach::semaphore::wait() + 16
2 com.apple.audio.caulk 0x00007fff684e99b2 caulk::semaphore::timed_wait(double) + 106
3 com.apple.audio.caulk 0x00007fff684e97c4 caulk::concurrent::details::worker_thread::run() + 30
4 com.apple.audio.caulk 0x00007fff684e91e4 void* caulk::thread_proxy<std::__1::tuple<caulk::thread::attributes, void (caulk::concurrent::details::worker_thread::*)(), std::__1::tuple<caulk::concurrent::details::worker_thread*> > >(void*) + 45
5 libsystem_pthread.dylib 0x00007fff6eb1a109 _pthread_start + 148
6 libsystem_pthread.dylib 0x00007fff6eb15b8b thread_start + 15
Thread 4:
0 libsystem_pthread.dylib 0x00007fff6eb15b68 start_wqthread + 0
Thread 5:
0 libsystem_kernel.dylib 0x00007fff6ea56dfa mach_msg_trap + 10
1 libsystem_kernel.dylib 0x00007fff6ea57170 mach_msg + 60
2 com.apple.audio.midi.CoreMIDI 0x00007fff35896635 XServerMachPort::ReceiveMessage(int&, void*, int&) + 95
3 com.apple.audio.midi.CoreMIDI 0x00007fff358b3fee MIDIProcess::RunMIDIInThread() + 104
4 com.apple.audio.midi.CoreMIDI 0x00007fff358b2d5e XThread::RunHelper(void*) + 10
5 com.apple.audio.midi.CoreMIDI 0x00007fff35896331 CAPThread::Entry(CAPThread*) + 77
6 libsystem_pthread.dylib 0x00007fff6eb1a109 _pthread_start + 148
7 libsystem_pthread.dylib 0x00007fff6eb15b8b thread_start + 15
Thread 6:
0 libsystem_pthread.dylib 0x00007fff6eb15b68 start_wqthread + 0
Thread 7:: com.apple.NSEventThread
0 libsystem_kernel.dylib 0x00007fff6ea56dfa mach_msg_trap + 10
1 libsystem_kernel.dylib 0x00007fff6ea57170 mach_msg + 60
2 com.apple.CoreFoundation 0x00007fff34a3eef5 __CFRunLoopServiceMachPort + 247
3 com.apple.CoreFoundation 0x00007fff34a3d9c2 __CFRunLoopRun + 1319
4 com.apple.CoreFoundation 0x00007fff34a3ce3e CFRunLoopRunSpecific + 462
5 com.apple.AppKit 0x00007fff31e50954 _NSEventThread + 132
6 libsystem_pthread.dylib 0x00007fff6eb1a109 _pthread_start + 148
7 libsystem_pthread.dylib 0x00007fff6eb15b8b thread_start + 15
Thread 8:: com.apple.audio.IOThread.client
0 libsystem_kernel.dylib 0x00007fff6ea56dfa mach_msg_trap + 10
1 libsystem_kernel.dylib 0x00007fff6ea57170 mach_msg + 60
2 com.apple.audio.CoreAudio 0x00007fff34120c75 HALB_MachPort::SendSimpleMessageWithSimpleReply(unsigned int, unsigned int, int, int&, bool, unsigned int) + 111
3 com.apple.audio.CoreAudio 0x00007fff3401cf18 invocation function for block in HALC_ProxyIOContext::HALC_ProxyIOContext(unsigned int, unsigned int) + 2677
4 com.apple.audio.CoreAudio 0x00007fff34150c22 HALB_IOThread::Entry(void*) + 72
5 libsystem_pthread.dylib 0x00007fff6eb1a109 _pthread_start + 148
6 libsystem_pthread.dylib 0x00007fff6eb15b8b thread_start + 15
Thread 9:
0 libsystem_kernel.dylib 0x00007fff6ea59882 __psynch_cvwait + 10
1 libsystem_pthread.dylib 0x00007fff6eb1a425 _pthread_cond_wait + 698
2 libc++.1.dylib 0x00007fff6bbe8592 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18
3 libRack.dylib 0x000000010a5e3902 rack::engine::Engine_fallbackRun(rack::engine::Engine*) + 226
4 libRack.dylib 0x000000010a5e456c void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (*)(rack::engine::Engine*), rack::engine::Engine*> >(void*) + 44
5 libsystem_pthread.dylib 0x00007fff6eb1a109 _pthread_start + 148
6 libsystem_pthread.dylib 0x00007fff6eb15b8b thread_start + 15
Thread 10:
0 libsystem_pthread.dylib 0x00007fff6eb15b68 start_wqthread + 0
Thread 11 Crashed:
0 ??? 000000000000000000 0 + 0
1 plugin.dylib 0x00000000127c8556 ProjectMRenderer::renderLoop(mySettings, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) + 614
2 plugin.dylib 0x00000000127c907f void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, ProjectMRenderer::init(mySettings const&, int*, int*, int*, int*)::$_0> >(void*) + 223
3 libsystem_pthread.dylib 0x00007fff6eb1a109 _pthread_start + 148
4 libsystem_pthread.dylib 0x00007fff6eb15b8b thread_start + 15
Thread 11 crashed with X86 Thread State (64-bit):
rax: 0x000000010acdda38 rbx: 0x00007fac8f200000 rcx: 0x00000000000002f8 rdx: 0x000000000000041a
rdi: 0x0000000000000000 rsi: 0x0000000000000000 rbp: 0x0000700008b2ee90 rsp: 0x0000700008b2ee18
r8: 0x0000000000001908 r9: 0x0000000000001400 r10: 0x0000000000000003 r11: 0x0000000000000007
r12: 0x000000000030b4c0 r13: 0x0000000000000000 r14: 0x00007fac87d77b70 r15: 0x00007fac87d77b90
rip: 0x0000000000000000 rfl: 0x0000000000000246 cr2: 0x00007fff6bc3cd42
Logical CPU: 0
Error Code: 0x020000b8
Trap Number: 133
Hope this helps
Just to be sure, the 2.1.5 version was working for you ?
Jup. Worked without any issues, both versions (module and external window)
I have uploaded a different version to my Google drive. Can you test that one please (@aetrion-music , @fractalgee )?
1 Like
I tried the .zip file from the Google Drive that has a newer time stamp than the windows .zip.
Unfortunately Rack still crashes immediately as the module is loaded (opening a patch with it or adding it to an empty patch).
Thank you for testing. The problem is that Mac doesnât like the latest versions of projectM , the library that I am using. So that means I have to go back in time to get the version that was working on Mac. But that version doesnât have the api call built in that I need for being able to change beat sensitivity with a knob. I have a workaround available, so that is what I have to implement. Expect a new version to test today or tomorrow.
1 Like
@aetrion-music and other mac users, I have uploaded a new mac version on my google drive:
https://drive.google.com/drive/folders/1D0fXubpRCp_rHsIQbyyp0xLH5JdCukbj
Hopefully this one fixes the issue.
fractalgee
(Fractalgee)
November 5, 2022, 6:56am
29
afraid it still crashes on add (either) with the same stack:
Thread 12 Crashed:
0 ??? 0x0 ???
1 plugin.dylib 0x121bfea6 ProjectMRenderer::renderLoop(mySettings, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) + 614
2 plugin.dylib 0x121c09d9 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, ProjectMRenderer::init(mySettings const&, int*, int*, int*, int*)::$_0> >(void*) + 233
3 libsystem_pthread.dylib 0x7ff808ce7259 _pthread_start + 125
4 libsystem_pthread.dylib 0x7ff808ce2c7b thread_start + 15
A new version for Mac is again available. This has been tested on 1 Mac and confirmed to be working. I hope this also works for you. The previous versions crashed because of a functionality that was used that apparently has a bug on Mac platform. Fingers crossed this one works better for you guys too. Please let me know the results.
2 Likes
Huzaah! RPJVisualizer v2.1.6 from LowFatMilk - Google Drive loads on my Mac now and the module can actually be added to a patch and actually displays something and doesnât blow up Rack. Hoorahh and well done! That closes RPJ Visualizer 2.1.0 has an update loop and doesn't load ¡ Issue #72 ¡ kockie69/RPJ ¡ GitHub
1 Like
I still have issues open from people having issues with resizing on Linux (myself included on my new Linux box). On Mac users have reported crashes when resizing and on some Linux configurations messy screens have been reported. My proposal for now, I am going to disable this functionality on Mac and keep it in on Windows and Linux. Any thoughts from my users/the community?
3 Likes
Yes. Better having reduced functionality but working than not having it at all.
2 Likes
Ok, tomorrow I will send the new version of LFM to the VCV team. Not only more controls to play with but also 10.000 new presets.
Have fun and stay tuned.
Robert
4 Likes
DaveVenom
(Dave Benham)
November 14, 2022, 10:41pm
35
For a future release - is there any way to have LFM cycle through a set of my favorite presets instead of the entire collection?
robert.kock
(Robert Kock)
November 14, 2022, 11:03pm
36
Yes, that is what I want to build for the next release. You can also do it manualy, by going into the res/projectm_presets folder and only leave your favourites in.
Any requirements welcome for preset management.
Version 2.1.6 of LFM has just been made available in the library
What is Fixed?
Resizing on Linux should now work on all platforms
Better support for Mac
Some presets were not rendering
What was Added?
Hardcut functionality added by adding a knob and cv (see manual for details)
Beat sensitivity is now a knob and has cv
We now have triggering for both previous and next preset
The gradient can be set, which will result in lighter (or darker) preset display
Added 10000 new presets (some of them are really cool!)
8 Likes
Hey Robert!
I tested out the new version on Mac, works great. Love the new presets!
Question: Is there a way to âexposeâ the preset selection so that we can store our favorites as module presets in VCV directly?
I somehow assumed this worked already only to find out the visualization doesnât change when changing VCV module presets (had like 10 of my favs picked out of 1000s I looked through )
Or are you planning on adding a folder structure / favoriting soon anyway like you mentioned above?
I have already a test version ready thet implements the favourite list. This test version works as follows:
There is a button that will bring you in either default mode (full preset list) or favourite mode (list with your selected presets). When you are in default mode, you can press a plus button, that will add presets to your favourite list. When you are in favourite mode, you can press the minus button that will remove presets from your favourite list.
The challengie I still have is that the library I use (projectm) canât deal properly with multiple lists. So pressing next, will play the next preset from the complete list. I have options to fix this, but it is still something I have to do.
At the moment I am also working on another request, to remove the frames around the window version and to keep on top all the time. That is now in test.
4 Likes
DaveVenom
(Dave Benham)
November 18, 2022, 4:43pm
40
The option for a personal favorites list sounds great. Could you also implement an independent module favorites list that gets stored with the module instantiation in a particular patch?
Or perhaps simpler, but just as effective would be to allow for named favorite lists that would be stored globally.
I would like to be able to have a different set of presets to cycle through for each patch. I might even want two instances of LFM within the same patch, each with its own favorite list that it cycles through. Either of the suggestions above would allow for this.
1 Like