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

Organic puresine preset produces no sound by default #590

Closed
BHSPitMonkey opened this issue Apr 10, 2014 · 6 comments
Closed

Organic puresine preset produces no sound by default #590

BHSPitMonkey opened this issue Apr 10, 2014 · 6 comments

Comments

@BHSPitMonkey
Copy link

The Organic puresine preset (data/presets/Organic/puresine.xpf) appears to produce no sound out-of-the-box. It seems that with the Organic plugin, the first oscillator's volume setting has a dominating effect on the overall instrument volume. In puresine.xpf, the volume for the first oscillator is set to zero (vol0="0"), so nothing is heard without changing this oscillator's volume first.

(Anecdote: If I turn the first oscillator's volume all the way up, it sounds exactly like I remember this preset sounding a few years ago.)

My take is this: either

  • the preset is correct and there is a bug in the Organic plugin, or
  • the plugin is correct and this particular value was not originally meant to be zero.
@diizy
Copy link
Contributor

diizy commented Apr 10, 2014

On 04/10/2014 04:38 AM, Stephen Eisenhauer wrote:

The Organic puresine preset (|data/presets/Organic/puresine.xpf|)
appears to produce no sound out-of-the-box. It seems that with the
Organic plugin, the first oscillator's volume setting has a dominating
effect on the overall instrument volume. In puresine.xpf, the volume
for the first oscillator is set to zero (|vol0="0"|), so nothing is
heard without changing this oscillator's volume first.

(Anecdote: If I turn the first oscillator's volume all the way up, it
sounds exactly like I remember this preset sounding a few years ago.)

My take is this: either

  • the preset is correct and there is a bug in the Organic plugin
  • the plugin is correct and this particular value was not originally
    meant to be zero

Probably it's #1. I don't think most of the presets have been touched in
a long time...

@softrabbit
Copy link
Member

IIRC those standard, shared oscillators can have a "slave" oscillator attached, and when mixing they mix the signal from that and then apply volume, and that's how Organic works.

So instead of v[0]*wave[0]+...+v[n]*wave[n] you get v[0]*(wave[0]+v[1]*(wave[1]+...v[n]*wave[n]))))))))

Fixing this in the oscillator class(es), if it's even possible, will most likely change the sound of at least TripleOsc, too.

@diizy
Copy link
Contributor

diizy commented Apr 10, 2014

On 04/10/2014 10:15 AM, Raine M. Ekman wrote:

IIRC those standard, shared oscillators can have a "slave" oscillator
attached, and when mixing they mix the signal from that and then apply
volume, and that's how Organic works.

So instead of |v[0]wave[0]+...+v[n]wave[n]| you get
|v[0]
(wave[0]+v[1]
(wave[1]+...v[n]*wave[n]))))))))|

Fixing this in the oscillator class(es), if it's even possible, will
most likely change the sound of at least TripleOsc, too.

I don't think it's a problem with the oscillator class, because even in
triple osc, you can have osc 2 audible while osc 1 is silent.

Mixing is a simple addition of each oscillator, and their volumes should
be independent of each other.

My guess is that Organic is simply using the osc class incorrectly...
I'll have to take a look at that later.

@softrabbit
Copy link
Member

Interesting, looks like both Organic and Triple have their oscillators chained together in a pretty much identical way. It was probably the chaining that in the past has lead me to think this behavior was intentional and not a bug.

Oscillator::updateMix does look OK, which would fit well with mixing working fine in Triple. Which means... what? That those oscillators created in organicInstrument::playNote get created with the wrong algorithm (probably AM) after all?

@diizy
Copy link
Contributor

diizy commented Apr 10, 2014

On 04/10/2014 02:39 PM, Raine M. Ekman wrote:

Interesting, looks like both Organic and Triple have their oscillators
chained together in a pretty much identical way. It was probably the
chaining that in the past has lead me to think this behavior was
intentional and not a bug.

|Oscillator::updateMix| does look OK, which would fit well with mixing
working fine in Triple. Which means... what? That those oscillators
created in |organicInstrument::playNote| get created with the wrong
algorithm (probably AM) after all?

Nope, that doesn't seem to be the problem either:

m_modulationAlgo( Oscillator::SignalMix ),

is how the modulation is initialized.

There's some kind of other screwy thing going on...

@diizy
Copy link
Contributor

diizy commented Apr 13, 2014

Fixed by #600

@diizy diizy closed this as completed Apr 13, 2014
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

No branches or pull requests

3 participants