Sample: beat - DBC-Works/live-tone GitHub Wiki
Sample: beat
Tone.Transport.bpm.value = 136
const delay = new Tone.FeedbackDelay('8n', 0.5).toDestination()
const synth = new Tone.FMSynth().connect(delay).toDestination()
synth.volume.value = -4
const topIt = LiveTone.Array.getElementFromShuffled(
LiveTone.Scale.SpanishScale.notes('D', 3, 3)
)
LiveTone.registerPlaying(
new Tone.Loop((time) => {
synth.triggerAttackRelease(topIt.next().value, `32n`, time)
}, '16n').start(0)
)
const bass = new Tone.MonoSynth({
envelope: {
attack: 0,
release: 1,
},
}).toDestination()
const bottomIt = LiveTone.Array.getElementRandomly(
LiveTone.Scale.Lydian.notes('G', 1)
)
LiveTone.registerPlaying(
new Tone.Loop((time) => {
bass.triggerAttackRelease(bottomIt.next().value, `16n`, time)
}, '8n').start(0)
)
const hh = new Tone.NoiseSynth().connect(delay).toDestination()
hh.volume.value = -20
LiveTone.registerPlaying(
new Tone.Loop((time) => {
hh.triggerAttackRelease(`32n`, time)
}, '16n').start(0)
)
const kick = new Tone.MonoSynth({
oscillator: { type: 'fatsawtooth' },
envelope: {
atack: 0,
decay: 0,
release: 0.2,
},
}).toDestination()
kick.volume.value = 20
LiveTone.registerPlaying(
new Tone.Loop((time) => {
kick.triggerAttackRelease('C0', `32n`, time)
}, '4n').start(0)
)
Tone.Transport.start()