Supersaw detune frequency delta

9 views
Skip to first unread message

dennis

unread,
Mar 30, 2024, 9:30:52 AM3/30/24
to pyo-discuss
Hi,

I'd like to know what is the maximum detune frequency regarding central frequency and if the relation is proportionnal (I guess yes). 
Regarding the balance parameter, it's indicated that "a value of 1 gives a mix of all oscillators with the central one lower than the sidebands". So, here again, what value gives all oscillators to the same amplitude, and what is the relation ?

I suggest to write this information in the doc, it would be very handful.

Thanks,


Dennis

Olivier Bélanger

unread,
Apr 9, 2024, 8:20:17 PM4/9/24
to pyo-d...@googlegroups.com
Hi Dennis,

I remember spending a lot of time tweaking the lookup tables for the "detune" and "balance" parameters of SuperSaw, and if I remember correctly, no they are not proportional... You can take a look at the tables here:


If you plot them in a single graph, you'll have a good look at the relationship between them!

Olivier


--
You received this message because you are subscribed to the Google Groups "pyo-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pyo-discuss...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/pyo-discuss/1b66832f-4c57-41b6-98b3-f8cfca851aa4n%40googlegroups.com.

dennis

unread,
Apr 10, 2024, 4:39:06 AM4/10/24
to pyo-discuss
Thanks Olivier,

I was precisely looking at those tables and was noting that it was effectively not proporitionnal. I wiil analyse that thoroughly.

Dennis

Alexandros Drymonitis

unread,
Apr 12, 2024, 10:44:50 AM4/12/24
to pyo-d...@googlegroups.com

SuperSaw()'s source code (the C code, not Python) has two 2D arrays, with 7x128 elements, where the detune and balance values are stored. If you give a value of 1, I guess you're getting the last value of the balance table, which has the same value for the first three oscillators which is 0.536732, the fourth has 0.444184, and the last three have 0.590832. These are the amplitude values. To get a balance value that will result in all oscillators having the same amplitude, you have to scan this 2D array and find if there is such a point.

In the source code, this table is found in pyo_home/src/objects/oscilmodule.c, in line 10718.

Olivier Bélanger

unread,
Apr 12, 2024, 10:46:08 AM4/12/24
to pyo-d...@googlegroups.com
Sorry Alexandros, your message was waiting for approval, don't know why...

Olivier


Reply all
Reply to author
Forward
0 new messages