Tone.MembraneSynth

↳ EXTENDS Tone.Instrument

Tone.MembraneSynth makes kick and tom sounds using a single oscillator with an amplitude envelope and frequency ramp. A Tone.OmniOscillator is routed through a Tone.AmplitudeEnvelope to the output. The drum quality of the sound comes from the frequency envelope applied during during Tone.MembraneSynth.triggerAttack(note). The frequency envelope starts at note * .octaves and ramps to note over the duration of .pitchDecay.

CONSTRUCTOR

new Tone.MembraneSynth ( [
options
] )
options

the options available for the synth see defaults below

type: Object
optional

DEFAULTS

{
pitchDecay : 0.05 ,
octaves : 10 ,
oscillator :
{
type : sine
}
,
envelope :
{
attack : 0.001 ,
decay : 0.4 ,
sustain : 0.01 ,
release : 1.4 ,
attackCurve : exponential
}
}

EXAMPLE

var synth = new Tone.MembraneSynth().toMaster();
synth.triggerAttackRelease("C2", "8n");

Members

.envelope

Tone.AmplitudeEnvelope #

The amplitude envelope.

</>

.octaves

Positive #

The number of octaves the pitch envelope ramps.

</>

.oscillator

Tone.OmniOscillator #

The oscillator.

</>

.pitchDecay

Time #

The amount of time the frequency envelope takes.

</>
inherited from Tone.AudioNode

.context

Tone.Context READONLY #

Get the audio context belonging to this instance.

</>
inherited from Tone.Instrument

.volume

Decibels #

The volume of the output in decibels.

EXAMPLE

source.volume.value = -6;
</>

Methods

.dispose ( )

#
↪ returns Tone.MembraneSynth

this

Clean up.

</>

.triggerAttack ( )

#
note

the note

time

the time, if not given is now

type: Time
default: now
velocity

velocity defaults to 1

type: number
default: 1
↪ returns Tone.MembraneSynth

this

Trigger the note at the given time with the given velocity.

EXAMPLE

kick.triggerAttack(60);
</>

.triggerRelease ( )

#
time

the time the note will release

type: Time
default: now
↪ returns Tone.MembraneSynth

this

Trigger the release portion of the note.

</>
inherited from Tone.AudioNode

.connect ( )

#
outputNum

optionally which output to connect from

type: number
default: 0
inputNum

optionally which input to connect to

type: number
default: 0
↪ returns Tone.AudioNode

this

connect the output of a ToneNode to an AudioParam, AudioNode, or ToneNode

</>
inherited from Tone.AudioNode

.disconnect ( )

#
output

Either the output index to disconnect if the output is an array, or the node to disconnect from.

↪ returns Tone.AudioNode

this

disconnect the output

</>
inherited from Tone.AudioNode

.toMaster ( )

#
↪ returns Tone.AudioNode

this

Connect ‘this’ to the master output. Shorthand for this.connect(Tone.Master)

EXAMPLE

//connect an oscillator to the master output
var osc = new Tone.Oscillator().toMaster();
</>
inherited from Tone.Instrument

.triggerAttackRelease ( )

#
note

The note to trigger.

duration

How long the note should be held for before triggering the release. This value must be greater than 0.

type: Time
time

When the note should be triggered.

type: Time
default: now
velocity

The velocity the note should be triggered at.

default: 1
↪ returns Tone.Instrument

this

Trigger the attack and then the release after the duration.

EXAMPLE

//trigger "C4" for the duration of an 8th note
synth.triggerAttackRelease("C4", "8n");
</>
docs generated Sep 15 2019