Dan Stowell
Dan Stowell

Reputation: 4758

SuperCollider FreqScope: change the frequency resolution

For some reason setting a non-default value for the width argument of FreqScope only makes the window bigger, the width of the displayed frequencies remaining unchanged. Could someone help me out? I'm using SC 3.5.3 on Windows 7. Thanks in advance!

PS. Just updated to 3.6.1, the problem remains unsolved. Might be some issue with buffer size but since FreqScope.new allocates a buffer automatically I don't know how to change that...if that even is the problem.

(PPS this question is asked on behalf of someone else)

Upvotes: 1

Views: 532

Answers (2)

Chad Cassady
Chad Cassady

Reputation: 43

I'm on SC 3.10.2, and it looks like this is supprted language-side now with a bufsize argument: http://doc.sccode.org/Classes/Stethoscope.html

I'm using the bufsize arg like this: s.scope(bufsize: 128)

(The default bufsize is too large to catch quick percussive events that fall out of phase. It's super visually obvious when beatboxing, so that's how I found this question.)

Upvotes: 0

Dan Stowell
Dan Stowell

Reputation: 4758

Yes, the constructor args are just about how to size the actual window, they're not about the frequency analysis. The FFT analysis is pretty much hardcoded as 2048 bins.

If you look at the source code of PlusFreqScope there's a method called initFreqScope where it sets bufSize = 2048. You may be able to edit that and recompile, but you probably can't change it on the fly because the number is used in a lot of the class's "preparation" such as creating synths etc.

Upvotes: 1

Related Questions