What's new

[SOLVED] VSL Synchron Player problems on M1 Ultra

I can tell from my own experience that this is not only bound to Mac, I run a fast i7-12700K Windows 11 pc with 64GB RAM, all software on really fast SSD's and run into the same issues as what I read here. An 11 minute piece for not even a very large orchestra, with 10 instances of Synchron player hosted in VE Pro, won"t play back properly once the score is more crowded. I reduced the thread count in VE Pro to 1 per instance, and the Synchron player setting from 4 (default) to 2 per instance and still not perfect.
I changed the instruments to the older VI libraries and suddenly all playback issues were gone. I had some contact about it with VSL, but the solution they gave me didn't help. Still figuring out how to solve it.
 
Please keep us posted, and remember to lodge bug reports with Apple too.
Does anyone know what the bug is, concretely? I could be missing something, but the API's not very big, was made "mandatory" over three years ago, and is used XPC by Apple themselves... so it seems surprising it would still be buggy... not impossible, alas, just surprising!

And to be clear: I'm asking out of interest, not to snipe at VSL. In fact, re-reading the thread now, @azeteg's earlier post is much clearer than a lot of other developer postings on this topic (in other forums.)


(A technical question on non-AU formats in case anyone knows: why can't an e.g. Cubase plugin apply workgroups to its own threads, even if Cubase doesn't yet, and even without an API? Isn't the plugin free to call the HAL API to get the audio device's workgroup ID and add its own threads? It seems aesthetically strange to do that when Cubase doesn't, but I would have thought that reducing the number of "undeclared" realtime threads would still be helpful.)
 
@Ben I have installed the beta and it resolves the issue I was having (Buckbeak’s Flight tutorial would produce a system overload no matter what settings I used). Buckbeak’s Flight now play’s happily at even the smallest buffers (32 samples and small process buffer).
As a matter of curiosity what was the issue with Ultra’s?
 
@Ben I have installed the beta and it resolves the issue I was having (Buckbeak’s Flight tutorial would produce a system overload no matter what settings I used). Buckbeak’s Flight now play’s happily at even the smallest buffers (32 samples and small process buffer).
As a matter of curiosity what was the issue with Ultra’s?
Not only Ultras, but all variants, including Windows will see a significant performance boost. But it is most noticeable with an Ultra.
If I'm not mistaken and understood the internal communication correctly there was an inperformant lock (internal thread synchronisation mechanism) that caused stalling. After refactoring this and other parts of the internal engine the CPU is being better utilized.
 
Hi @Ben, @azeteg I am testing the new beta build and... WOW!
I am playing back my original project with 18 instruments playing together, Studio One buffer size set to 16 and dropout protection set to minimum: zero audio crackling, Duality Strings instruments don't exceed 40% CPU usage.
I will keep testing with different projects and using Logic also.
What a wonderful work VSL, thank you!:emoji_clap:
 
Hi @Ben, @azeteg I am testing the new beta build and... WOW!
I am playing back my original project with 18 instruments playing together, Studio One buffer size set to 16 and dropout protection set to minimum: zero audio crackling, Duality Strings instruments don't exceed 40% CPU usage.
I will keep testing with different projects and using Logic also.
What a wonderful work VSL, thank you!:emoji_clap:
Curious to hear how Logic performance shakes out...

Any mention of roughly how soon the update might be available?
 
I think the OP's performance issue looks more like it's related to contention than scheduling
there was an inperformant lock (internal thread synchronisation mechanism) that caused stalling.
I admit to feeling slightly smug. :) [Of course I'm joking... ok, mostly joking. For anyone who hasn't done it: precisely diagnosing these issues can be a total pain in the, um, buffers. It's a lot more work than forming an opinion based on some charts. So it may feel good when those opinions pan out, but nowhere near as good as VSL openly responding to users' reports, investigating and 🤞 fixing it.]
 
The Logic version of my project plays without audio crackling with buffer size set to 32, buffer range set to small and threads to automatic.
I tried adding velocity xfade ramps to all of the 18 instruments playing at the same time, to see how it is handled, and I had to increase Studio One buffer size to 128 and Logic one to 64 to avoid crackling, but it's kind of expected behavior I suppose.
With those settings, the instruments which is using the more CPU (Duality Strings in my case) shows peaks of 50% in Studio One, whether in Logic they keep reaching 100%.
As a side note: all of the Synchron Player instruments in my project are using the Surround-to-stereo classic mixer preset, so they are using multiple mics at the same time.
 
Report on Apple M1 Max 64 GB on 14.2.1. Amazing improvement!! Wow.

I just tried in Studio One 6.5.1. Whereas previously I could only get to 3000~3500 voices (across all Synchron Player instances) before I would start hearing cracks and pops, with this beta version I can play the full orchestra (34 AU plugins) at 128 bytes and high protection in Studio One, with all instances on surround to stereo mix setup, I reach at 8000+ voices with the total S1 CPU at 370% (S1's performance monitor showing peaks of 50%~55%) and no cracks or pops and red peaks inside the Synchron Player CPU monitor. Really happy. Thank you VSL!
 
Hi @Ben I am having trouble with MIDI CC automations in the new beta build: it seems they are no longer working.
I am using a pre-existing project with automation lanes already set up and mapped to various Synchron Player (AU) MIDI CCs. When they move, the corresponding Synchron Player faders move too, but have no effects.
Please take a look at this video: I am moving Vel.XF but the dynamics of the note don't change. This thing happens in both Studio One and Logic.
Moreover in Studio One if I try adding new automation lanes, they are ignored, not appearing in the Studio One MIDI editor (as shown in the last part of the video).
The same thing happens when creating a brand new project and inserting a Synchron Player instrument.
 
Last edited:
Hi @Ben I am having trouble with MIDI CC automations in the new beta build: it seems they are no longer working.
I am using a pre-existing project with automation lanes already set up and mapped to various Synchron Player (AU) MIDI CCs. When they move, the corresponding Synchron Player faders move too, but have no effects.
Please take a look at this video: I am moving Vel.XF but the dynamics of the note don't change. This thing happens in both Studio One and Logic.
Moreover in Studio One if I try adding new automation lanes, they are ignored, not appearing in the Studio One MIDI editor (as shown in the last part of the video).
The same thing happens when creating a brand new project and inserting a Synchron Player instrument.
Thanks, I'll forward your report
 
Hi @Ben I am having trouble with MIDI CC automations in the new beta build: it seems they are no longer working.
I am using a pre-existing project with automation lanes already set up and mapped to various Synchron Player (AU) MIDI CCs. When they move, the corresponding Synchron Player faders move too, but have no effects.
Please take a look at this video: I am moving Vel.XF but the dynamics of the note don't change. This thing happens in both Studio One and Logic.
Moreover in Studio One if I try adding new automation lanes, they are ignored, not appearing in the Studio One MIDI editor (as shown in the last part of the video).
The same thing happens when creating a brand new project and inserting a Synchron Player instrument.
Confirming what you are seeing: CC11 and CC20 work as expected, but CC1 does not. CC1 data is only used at attack, and despite moving the fader up and down it does not impact the dynamic layer.
 
Confirming what you are seeing: CC11 and CC20 work as expected, but CC1 does not. CC1 data is only used at attack, and despite moving the fader up and down it does not impact the dynamic layer.
I’ve fixed this regression - which occurred through a very large refactor in the codebase to get around this Ultra problem. We’ll provide an official update any day now.

Thanks a lot for your feedback here - it really helps!
 
Hi @Ben and @azeteg I have tried your last beta build and I confirm it resolved perfectly the regression about CC automations!
Is the M1 Ultra fix expected to come on other VSL software as well?
 
Top Bottom