javascript - Tone.JS - 加法合成器
问题描述
我正在尝试使用和创建一个简单的加法合成Tone.JS
器WebAudioAPI
。
到目前为止,我已经建立了一个简单的合成器,它工作正常,我可以演奏任何我想要的音符。
我也可以自由更改参数ecc...
这是代码:
// synth declaration using Tone.JS
var synth = new Tone.Synth({
oscillator: {
type: 'fmsquare',
modulationType: 'sawtooth',
modulationIndex: 3,
harmonicity: 2.4
},
envelope: {
attack: 0.001,
decay: 0.1,
sustain: 5,
release: 0.1
}
}).toMaster()
//Possible added oscillator
var synthB = new Tone.Synth({
//Sample Data.......
}).toMaster()
// Selection of piano keyboard from my HTML file
notes = document.querySelectorAll(".hex");
// Play note function
notes.forEach(function(note) {
note.addEventListener("mouseover", function(event){
x = event.target.title;
synth.triggerAttackRelease(x, "8n");
//synthB.triggerAttackRelease(x, "8n");
});
});
我试图添加另一个Tone.Synth
,但我不知道如何“并行化”该过程。
查看文档,我发现了如何创建复音合成器,但它允许添加同一个合成器的多个实例以播放多个音符。
我想做的是用不同的合成器(每个都有它的波形)演奏相同的音符,获得一个加法合成器。
我试图简单地创建一个SynthB
然后调用synthB.triggerAttackRelease()
,它工作正常,但对我来说似乎并不“平行”。
有没有更好的方法?
解决方案
推荐阅读
- python - 如何检查井字游戏中的胜利?
- google-cloud-platform - 手动验证 Firebase JWT - 证书到期并找出使用哪一个
- ios - 在 Swift 中使用 reduce 改变结构
- python-3.x - 使用 python3 re 模块捕获所有函数调用
- python - 添加具有日期时间索引的小时差的列
- python - 如何使用 BeautifulSoup 访问 svg 中的元素?
- recurly - 重复验证错误“名称无效。”
- scala - 让 F[_] 在接受 IO 的同时实现 Monad trait
- react-native - 反应原生导航 v5 导航到空白屏幕
- javascript - React:ES2020 动态导入 useEffect 块渲染