Advertisement
BrU32

Untitled

Mar 11th, 2017
233
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.46 KB | None | 0 0
  1. <body>
  2. <canvas class="visualizer";id="canvas";width="2940" height="2900"></canvas>
  3. </body>
  4. <script>
  5. var context = new AudioContext();
  6. var analyser = context.createAnalyser();
  7. var WIDTH = 3300;
  8. var HEIGHT = 3300;
  9. var osc = context.createOscillator();
  10. osc.frequency.value = 9.1;
  11. function makeConnection() {
  12. osc.connect(analyser);
  13. }
  14. function playSound() {
  15. analyser.connect(context.destination);
  16. osc.start(0);
  17. osc.stop(30);
  18. //osc.disconnect();
  19. }
  20. makeConnection();
  21. playSound();
  22. var canvas = document.querySelector('.visualizer');
  23. var canvas = canvas.getContext("2d");
  24. analyser.fftSize = 2048;
  25. var bufferLength = analyser.frequencyBinCount/2;
  26. var dataArray = new Uint8Array(bufferLength);
  27. analyser.getByteTimeDomainData(dataArray);
  28. if(dataArray==0){
  29. alert('test')
  30. }
  31. console.log(dataArray);
  32. function draw() {
  33. drawVisual = requestAnimationFrame(draw);
  34. analyser.getByteTimeDomainData(dataArray);
  35. canvas.lineWidth = '1';
  36. canvas.strokeStyle = 'rgb(3,26,92)';
  37. canvas.beginPath();
  38. var sliceWidth = WIDTH * 1.0 / 3300;
  39. var x = 0;
  40.  
  41. for(var i = 0; i < bufferLength; i++) {
  42.  
  43. var v = dataArray[i] / 128.0;
  44. var y = v * HEIGHT/2;
  45.  
  46. if(i === 0) {
  47. canvas.moveTo(x, y);
  48. }
  49. if(i!==0){
  50. canvas.lineTo(x, y);
  51. }
  52.  
  53. x = sliceWidth+x;
  54. };
  55.  
  56. canvas.lineTo(canvas.width, canvas.height);
  57. canvas.stroke();
  58. };
  59.  
  60. draw();
  61. </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement