self.touchGainNodes[i].connect(self.masterGainNode);
}
self.masterGainNode.connect(self.audioCtx.destination);
+
+ self.delay = self.audioCtx.createDelay(maxDelayTime=5);
+ self.delay.delayTime.value = 0.5;
+
+ self.feedback = self.audioCtx.createGain();
+ self.feedback.gain.value = 0.8;
+
+ self.filter = self.audioCtx.createBiquadFilter();
+ self.filter.frequency.value = 1000;
+
+ self.delay.connect(self.feedback);
+ self.feedback.connect(self.filter);
+ self.filter.connect(self.delay);
+
+ self.masterGainNode.connect(self.delay);
}
self.initMIDI = function() {
self.masterGainNode.gain.value = fraction * fraction;
});
+ $('#delay').on('change', function() {
+ var value = this.value;
+ if (value == 0) {
+ self.delay.disconnect();
+ } else {
+ self.delay.delayTime.value = value;
+ self.delay.connect(self.audioCtx.destination);
+ }
+ });
+
+ $('#feedback').on('change', function() {
+ self.feedback.gain.value = this.value;
+ });
+
+ $('#filter').on('change', function() {
+ self.filter.frequency.value = this.value;
+ });
+
$('.touch-gain').on('change', function() {
var fraction = parseInt(this.value) / parseInt(127);
var touchIdx = parseInt($(this).parent().data('touch'));