Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Flute synth (incl. gated version) #3365

Open
wants to merge 1 commit into
base: dev
Choose a base branch
from

Conversation

level-xx
Copy link
Contributor

Hi there,

Here comes new waveguide flute I have picked somewhere in Supercollider space. Hope you like it!

Cheers, Ben

@rbnpi
Copy link
Contributor

rbnpi commented Jan 3, 2024

Tried this on my Mac. I found that the range is more restricted at the top end than you suggest. I could only get it in tune up to note :d5 (midi 74) rather than :b5 as suggested. It still produced a tone at the top end but very flat.
Also, I would consider having a higher nouse_sustain: level than 0.
It can be quite tricky to control longer notes (if you want them) has both "normal" systain/release times have to be adjusted AND noise_sustain or the note literally runs out of puff! (Of course you can get round this using the gated version)
I think the synth has merits for experimental purposes, but could be confusing to use unless you experiment quite a lot.

@level-xx
Copy link
Contributor Author

level-xx commented Jan 3, 2024

Hi, thanks for testing!

Tried this on my Mac. I found that the range is more restricted at the top end than you suggest. I could only get it in tune up to note :d5 (midi 74) rather than :b5 as suggested. It still produced a tone at the top end but very flat. Also, I would consider having a higher nouse_sustain: level than 0. It can be quite tricky to control longer notes (if you want them) has both "normal" systain/release times have to be adjusted AND noise_sustain or the note literally runs out of puff! (Of course you can get round this using the gated version) I think the synth has merits for experimental purposes, but could be confusing to use unless you experiment quite a lot.

First, the simple thing: Of course, I can set noise_sustain to something more reasonable, or even try to tie it to the sustain value. If that is the final decision, I update the PR, np.

But as you say, there are some aspects to this synth worth observing:

  • The sound is created by feedback. I have not made any tests, but I assume it will be heavier on the processor than a synth with a conventional oscillator.
  • This may lead to the synth performing differently on different hardware. I could not test the synth on other platforms than Ubuntu on Intel, but according to your writing I assume that we have an effect of a synth working differently between our 2 platforms. It would be interesting to see what the synth does on a Raspi. Maybe nothing ;)
  • The ifeedbk1 / ifeedbk2 values are totally heuristic and determined on one particular system.
  • With the limits not easily to be determined the synth may go over the top and cause SC to crash, leaving a mute SP.

On the other hand, the synth brings a new sound to SP. I don't think there is anything much like it yet. And there may be other synths already built into SP that one can bring to produce horrible noises or maybe even break SC.

I am really not very passionate about it. Your suggestion of keeping it as an experimental synth may be the right thing to do. If that was the case, I'd love to make it public someway. Maybe just put it in etc/synthdefs/designs/supercollider/experimental along with a patch for synthinfo.rb? Another option might be just including it and flagging it in someway, adverting users that it may create unexpected results. In this case I'll check it on a Raspi before altering the PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants