ToneTest

piano, wind, and more

by Wangshu Sun

HTML

<script src="https://tonejs.github.io/CDN/r6/Tone.js"></script>

JavaScript

var freeverb = new Tone.Freeverb().toMaster();
freeverb.dampening.value = 2000;
freeverb.roomSize.value = 0.9;
freeverb.wet.value = 1;

// note part
var synth1 = new Tone.SimpleSynth( {
	oscillator : {
  	type : "sine"
  },
  envelope : {
  	attack : 0.02,
    decay : 0.8,
    sustain : 0.7,
    release : 2
  }
}).connect(freeverb);

// wind part
var synth2 = new Tone.SimpleSynth( {
	portamento: 0,
  oscillator : {
  	type : "sine"
  },
  envelope : {
  	attack : 2,
    decay : 1,
    sustain : 0.2,
    release : 2
  }
}).connect(freeverb);

var voice = Tone.SimpleSynth;
voice.portamento = 0.2;
//voice.oscillator._oscillator._type = "sine";

var synth3 = new Tone.PolySynth (8, 
voice
).toMaster();

console.log(synth3);

var collections = ["C4","D4","E4","F4","G4","A4","B4","C5", "D5","E5","F5","G5","A5","B5","C6"];

for (var i = 0; i < 8; i++) {
	//synth1.triggerAttackRelease(collections[i], "4n", i * 1);
  //synth2.triggerAttackRelease(collections[i], "4n", i * 1);
  synth3.triggerAttackRelease([collections[i],collections[i+2], collections[i+4]], "4n", i * 1);
}