SOURCE

console 命令行工具 X clear

                    
>
console
<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, shrink-to-fit=no" />
  <title>mixing bug?</title>
</head>
<body>
  <!-- 调试器 —— 错误显示弹框 -->
  <button onclick="ctx.resume(),start()">Start</button>
  <p id="log"></p>
  <script>
    var ctx = new AudioContext();
    var data = "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";
    
    function midiToHz(midi){
      return 440 * Math.pow(2, (midi - 69) / 12);
    }
    
    function delay(ms){
      return new Promise(function(ok){
        setTimeout(ok, ms);
      });
    }
    
    async function start(){
      var note1, note2;
      ctx.resume();
      log.innerText = `
User-Agent: ${navigator.userAgent}
Sample Rate: ${ctx.sampleRate}
`;
      for(var i = 24; i < 72; i++){
        note1 = ctx.createBufferSource();
        note2 = ctx.createBufferSource();
        note1.buffer = note2.buffer = data;
        note1.playbackRate.value = midiToHz(i)/midiToHz(60);
        note2.playbackRate.value = midiToHz(i+4)/midiToHz(60);
        note1.connect(ctx.destination);
        note2.connect(ctx.destination);
        note1.start(ctx.currentTime);
        note2.start(ctx.currentTime);
        await delay(500);
        note1.stop();
        note2.stop();
        note1.disconnect(ctx.destination);
        note2.disconnect(ctx.destination);
      }
    }
    
    /* Load piano sample from base64 */
    ctx.decodeAudioData(Uint8Array.from(
      Array.from(atob(data)).map((ch)=>ch.charCodeAt(0))
    ).buffer).then(function(ab){
      data = ab;
      console.log(ab)
    }, console.error)
  </script>
</body>
</html>