Support

If you have a problem or need to report a bug please email : support@dsprobotics.com

There are 3 sections to this support area:

DOWNLOADS: access to product manuals, support files and drivers

HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects

USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here

NEW REGISTRATIONS - please contact us if you wish to register on the forum

Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright

Could this blue selector crack the sound ?

DSP related issues, mathematics, processing and techniques

Could this blue selector crack the sound ?

Postby Tepeix » Fri Jul 01, 2022 4:22 pm

Hi,
I read sometime that using a selector to bypass blue code could interrupt or do noise on the sound due to recompilation of the code.

But here's a modified selector.
When a code is bypassed, it will first reduce the level with a zip, then bypass the code when the level reach zero.

(In this example using some delay, i have also to make the input of the delay slowly increase when it is selected,
or it will record an hard clip, also there's nothing to erase the memory when the delay is bypassed)

Trying it in flowstone and LMMS i don't hear any click or interruption of the sound.
But will it be the case with more code involved and maybe more recompilation to do ???
Does it really have to recompile complex think or is it just some bypass on some part of the code ?
Attachments
selector blue zipped level.fsm
(41.44 KiB) Downloaded 569 times
Tepeix
 
Posts: 361
Joined: Sat Oct 16, 2021 3:11 pm

Re: Could this blue selector crack the sound ?

Postby Spogg » Sat Jul 02, 2022 9:12 am

That works really well in this example!

I suspect that it will depend on the complexity of the schematic, as you say, since a change of stream routing anywhere will always cause a recompilation of the whole schematic I believe.

I think the best way to avoid clicks is to use multiplier prims as gates whereby the gate line is slugged with a de-zipper. Of course you won’t get any reduction of CPU with that method. I’ve heard clicks on many plugins when some selections are changed, so it’s probably acceptable unless the routing change is something you might want to automate in a song while it’s playing.
User avatar
Spogg
 
Posts: 3358
Joined: Thu Nov 20, 2014 4:24 pm
Location: Birmingham, England

Re: Could this blue selector crack the sound ?

Postby Tepeix » Thu Jul 07, 2022 1:44 pm

I try some test with the analyzer prim..

But i'm not sure what to think about it !)...

In Flowstone the analyzer always show 2 same code when we switch.
It will use the same variable number.
Seams an indication that the code is a memory that is switched and not recompiled, but not a proof at all,
and it's not the same in a vst..

As a vst in LMMS, i have to play some note before i could read some code change.
But the code is not complete. It seams that it point somewhere in a different place when the code is switched.
... So i don't know what to think... ;)
Attachments
CodeSwitchAnalyser.png
CodeSwitchAnalyser.png (215.94 KiB) Viewed 9512 times
Tepeix
 
Posts: 361
Joined: Sat Oct 16, 2021 3:11 pm

Re: Could this blue selector crack the sound ?

Postby Spogg » Fri Jul 08, 2022 7:44 am

Sorry but I can’t really help with this since I’m not a coder and we don’t have access to the actual FS source code anyway. My limited understanding of “recompile” would be to create a completely new block of code in memory based on changes to the signal routing in the VST plugin. That re-writing would always cause stream interruptions I suspect.

When we talk about this kind of stuff it makes me really appreciate the complexity of what’s actually going on behind the scenes!
User avatar
Spogg
 
Posts: 3358
Joined: Thu Nov 20, 2014 4:24 pm
Location: Birmingham, England

Re: Could this blue selector crack the sound ?

Postby Tepeix » Sun Jul 10, 2022 2:13 pm

Yes it's very difficult to know.
I will maybe do test later with bigger code.

What surprise me the most is the instruction "mov eax,[eax]"
What could do this ??)
In the end there's also a push ebx. But ebx is not used..
A lot of mystery !)

Reading some other topic of the forum i also notice that the stage 0 if it exist will be executed each time the code is reactivated.
Tepeix
 
Posts: 361
Joined: Sat Oct 16, 2021 3:11 pm


Return to DSP

Who is online

Users browsing this forum: No registered users and 27 guests