Advertisement
BrU32

Untitled

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