Ich modifiziere den DelayTime-Audioparameter eines DelayNode. Ich habe versucht, den Wert direkt Eigenschaft verwendet wird, wie in:Worin besteht im Web-Audio der Unterschied zwischen der Verwendung von .value (x) und setValueAtTime (x, context.currentTime)?
delayNode.delayTime.value = x
und auch - was ich dachte, war gleichwertig - die setValueAtTime Methode mit der aktuellen Zeit des Kontexts:
delayNode.delayTime.setValueAtTime(x, context.currentTime)
Werfen wir einen Blick auf die Web-Audio-Spezifikation here, ich lese das in der value
Abschnitt der Audio-Parameter:
Der Effekt der Einstellung dieses Attributs (.value) entspricht dem Aufruf von setValueAtTime() mit dem aktuellen currentTime des aktuellen AudioContext und dem angeforderten Wert .
Dennoch bemerkte ich, dass .value
direkt verursacht einen großen Audio-Glitch mit, während .setValueAtTime
viel weniger laut ist. Sie können durch Klicken auf die Schaltfläche diese in diesen beiden jsFiddles hören (es btw laut ist):
Meine Frage ist: Was ist der Unterschied besteht darin, die value
Attribut zwischen der Verwendung und mit .setValueAtTime
mit der aktuellen Zeit? Warum sind sie anders? Was verursacht den Fehler in einem und nicht in dem anderen?
Macht Sinn. Danke für die klare Erklärung und um mich auf die Korg Monotron Delay Einheit hinzuweisen. Das Ding sieht aus wie jede Menge Spaß :) Prost – alemangui