javascript - 将振荡器正确连接到音频流以创建图形 javascript
问题描述
我想将振荡器输出连接到画布 draw() 函数以创建示波器,但我无法正确理解如何正确连接音频流的逻辑。我想将振荡器用作源并将其与分析器连接,createMediaStreamSource(oscillator) 导致参数不受支持,并且像脚本一样连接现在它什么也没做。:
// create Oscilloscope ***OSCILLOSCOPE***
var analyser = audioCtx.createAnalyser();
var canvas = document.getElementById('scope');
var canvasCtx = canvas.getContext("2d");
var WIDTH = canvas.width;
var HEIGHT = canvas.height;
// setup scope buffer
analyser.fftSize = 2048;
var bufferLength = analyser.frequencyBinCount;
var dataArray = new Uint8Array(bufferLength);
// connect audiosource
oscillator.connect(analyser);
analyser.connect(audioCtx.destination);
这是整个想法的一个小提琴: https ://codepen.io/silconsystem/pen/xMMwgJ
我希望你们中的一个人能把我引向正确的方向,谢谢你的时间提前
干杯,抢
解决方案
我修复了它,我只需要在 startOsc() 函数中创建振荡器时调用与分析器的连接。当我回家时,我会为那些感兴趣的人更新小提琴。
推荐阅读
- javascript - how to call a service using ajax javascript?
- visual-studio - Visual Studio 2019 尝试加载文件夹时出错
- javascript - 使用多维数组创建动态表并将数据存储在状态中
- apache-spark-sql - Spark SQL vs Hive vs Presto SQL 在 Parquet 文件上进行分析
- javascript - Javascript - 如何知道 devtools 中 Js 路径的确切长度
- javascript - 阻止 div 在桌子上重叠
- oracle-apex - 如何从 Oracle APEX 页面调用 Jira Rest API
- mysql - Mysql 从表中选择顶部项目然后删除并打印
- web - urllib.request 模块发出的请求和浏览器发出的请求一样吗?
- python - Python蜘蛛在文件上写空行时显示数据框的行元素