<button type="button" onclick="august()">August</button>
<button type="button" onclick="september()">September</button>
<button type="button" onclick="october()">October</button>
window.AudioContext = window.AudioContext || window.webkitAudioContext;
var audioContext = new AudioContext();
var delay = audioContext.createDelay();
var leftDelay = audioContext.createDelay();
var rightDelay = audioContext.createDelay();
var feedback = audioContext.createGain();
var merger = audioContext.createChannelMerger(2);
function october() {
    play(0, 58, 0.2); //Day 1
    play(0.2, 113, 0.2); //Day 2
    play(0.4, 128, 0.2); // Day 3
    play(0.6, 110, 0.2); // Day 4
    play(0.8, 139, 0.2); // Day 5
    play(1.0, 139, 0.2); // Day 6
    play(1.2, 106, 0.2); // Day 7
    play(1.4, 69, 0.2); // Day 8
    play(1.6, 78, 0.2); // Day 9
    play(1.8, 81, 0.2); // Day 10
    play(2.0, 75, 0.2); // Day 11
    play(2.2, 98, 0.2); // Day 12
    play(2.4, 114, 0.2); // Day 13
    play(2.6, 97, 0.2); // Day 14
    play(2.8, 74, 0.2); // Day 15
    play(3.0, 90, 0.2); // Day 16
    play(3.2, 92, 0.2); // Day 17
    play(3.4, 79, 0.2); // Day 18
    play(3.6, 130, 0.2); // Day 19
    play(3.8, 95, 0.2); // Day 20
    play(4.0, 98, 0.2); // Day 21
    play(4.2, 87, 0.2); // Day 22
    play(4.4, 89, 0.2); // Day 23
    play(4.6, 185, 0.2); // Day 24
    play(4.8, 123, 0.2); // Day 25
    play(5.0, 137, 0.2); // Day 26
    play(5.2, 131, 0.2); // Day 27
    play(5.4, 91, 0.2); // Day 28
};
function september() {
play(0, 57, 0.2); //Day 1
play(0.2, 74, 0.2); //Day 2
play(0.4, 79, 0.2); // Day 3
play(0.6, 76, 0.2); // Day 4
play(0.8,81, 0.2); // Day 5
play(1.2, 88, 0.2); // Day 6
play(1.4, 75, 0.2); // Day 7
play(1.6, 89, 0.2); // Day 8
play(1.8, 79, 0.2); // Day 9
play(2.0, 98, 0.2); // Day 10
play(2.2, 144, 0.2); // Day 11
play(2.4, 73, 0.2); // Day 12
play(2.6, 124, 0.2); // Day 13
play(2.8, 121, 0.2); // Day 14
play(3.0, 128, 0.2); // Day 15
play(3.2, 96, 0.2); // Day 16
play(3.4, 77, 0.2); // Day 17
play(3.6, 71, 0.2); // Day 18
play(3.8, 61, 0.2); // Day 18
play(4.0, 121, 0.2); // Day 19
play(4.2, 81, 0.2); // Day 20
play(4.4, 74, 0.2); // Day 21
play(4.6, 76, 0.2); // Day 22
play(4.8, 80, 0.2); // Day 23
play(5.0, 173, 0.2); // Day 24
play(5.2, 248, 0.2); // Day 25
play(5.4, 93, 0.2); // Day 26
play(5.8, 66, 0.2); // Day 27
play(6.0, 126, 0.2); // Day 28
play(5.2, 162, 0.2); // Day 29
play(5.4, 131, 0.2); // Day 30
}
function august() {
play(0, 57, 0.2); //Day 1
play(0.2, 48, 0.2); //Day 2
play(0.4, 33, 0.2); // Day 3
play(0.6, 42, 0.2); // Day 4
play(0.8, 53, 0.2); // Day 5
play(1.2, 52, 0.2); // Day 6
play(1.4, 54, 0.2); // Day 7
play(1.6, 54, 0.2); // Day 8
play(1.8, 51, 0.2); // Day 9
play(2.0, 57, 0.2); // Day 10
play(2.2, 53, 0.2); // Day 11
play(2.4, 53, 0.2); // Day 12
play(2.6, 59, 0.2); // Day 13
play(2.8, 48, 0.2); // Day 14
play(3.0, 51, 0.2); // Day 15
play(3.2, 47, 0.2); // Day 16
play(3.4, 48, 0.2); // Day 17
play(3.6, 53, 0.2); // Day 18
play(3.8, 57, 0.2); // Day 19
play(4.0, 64, 0.2); // Day 20
play(4.2, 71, 0.2); // Day 21
play(4.4, 76, 0.2); // Day 22
play(4.6, 71, 0.2); // Day 23
play(4.8, 71, 0.2); // Day 24
play(5.0, 76, 0.2); // Day 25
play(5.2, 75, 0.2); // Day 26
play(5.4, 63, 0.2); // Day 27
play(5.8, 64, 0.2); // Day 28
play(6.0, 69, 0.2); // Day 29
play(5.2, 61, 0.2); // Day 30
play(5.4, 54, 0.2); // Day 31
}
function play(delay, pitch, duration) {
  var startTime = audioContext.currentTime + delay;
  var endTime = startTime + duration;
  var oscillator = audioContext.createOscillator();
  var oscillator2 = audioContext.createOscillator();
  //var oscillator3 = audioContext.createOscillator();
  var gain = audioContext.createGain();
  var oscGain1 = audioContext.createGain();
  var oscGain2 = audioContext.createGain();
  //var oscGain3 = audioContext.createGain();
  leftDelay.delayTime.value = 0.4;
  rightDelay.delayTime.value = 0.4;
  leftDelay.connect(rightDelay);
  leftDelay.connect(merger, 0, 0);
  rightDelay.connect(merger, 0, 1);
  merger.connect(gain);
  oscillator.connect(oscGain1);
  oscillator2.connect(oscGain2);
 // oscillator3.connect(oscGain3);
  oscGain1.connect(feedback);
  oscGain2.connect(feedback);
  //oscGain3.connect(feedback);
  feedback.connect(leftDelay);
  rightDelay.connect(feedback);
  feedback.gain.value = 0.1;
  leftDelay.connect(rightDelay);
  gain.connect(audioContext.destination);
  gain.gain.value = 0.2;
  oscGain1.gain.value = 0.1;
  oscGain2.gain.value = 0.2;
  //oscGain3.gain.value = 0.1;
  oscillator.start(startTime);
  oscillator2.start(startTime);
  //oscillator3.start(startTime)
  oscillator.stop(endTime);
  oscillator2.stop(endTime);
  //oscillator3.stop(endTime)
  oscillator.frequency.value = pitch * 10;
  oscillator2.frequency.value = pitch * 2;
  //oscillator3.frequency.value = pitch * 100;
}

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.