簡體   English   中英

有沒有辦法限制單合成器一次只播放一個音符?

[英]Is there a way to limit monosynth to only play one note at a time?

我目前正忙於一項任務(使用 P5.JS),其中涉及使用網絡攝像頭作為用戶輸入來觸發聲音。 這通過在相機輸入上創建一個網格並使用顏色差異來檢測特定網格塊中是否存在移動來工作。 如果有運動,則網格塊被“激活”,這會在屏幕上觸發一些視覺效果。 我已經將每個網格塊鏈接到一個單合成音符,當網格塊被激活時,相應的單合成音符就會播放。 但是,當我運行它時,我會聽到沙啞且令人不快的聲音,我認為這是因為 monosynth 試圖同時播放許多不同的音符。 有沒有辦法可以限制它一次只演奏一個音符?

https://p5js.org/reference/#/p5.MonoSynth

在上面的鏈接中,我看到.play方法 function 有一個“持續時間”參數。 有沒有辦法讓我在允許它播放另一個音符之前等待該持續時間完成? 或者可能是一種方法 function 檢查 Monosynth 當前是否正在播放某些東西,然后在使用.play方法之前在if語句中使用它。

任何意見,將不勝感激。

PS:出於抄襲的原因,我不能在線分享我的任何代碼。

即使您盡可能快地點擊播放按鈕,文檔頁面上的 MonoSynth 示例不會出現“刺耳和令人不快的聲音”。

由於單聲道合成器實際上是一個振盪器和一個包絡,因此它不可能同時播放多個聲音(並開始削波)。

由於我們看不到您的代碼,因此我不得不依靠我的水晶球來猜測:您是否可能在開始演奏音符時實例化一個的單音合成器,而不是告訴單個單音合成器改變音高? 這樣就可以解釋了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM