AudioParam: linearRampToValueAtTime() Methode
Die Methode linearRampToValueAtTime()
der Schnittstelle AudioParam
plant eine schrittweise lineare Änderung des Wertes des AudioParam
. Die Änderung beginnt zur für das vorherige Ereignis angegebenen Zeit, folgt einer linearen Rampe zum neuen Wert, der im value
-Parameter angegeben ist, und erreicht den neuen Wert zu der im endTime
-Parameter angegebenen Zeit.
Syntax
linearRampToValueAtTime(value, endTime)
Parameter
Rückgabewert
Ein Verweis auf dieses AudioParam
-Objekt. In einigen Browsern geben ältere Implementierungen dieser Schnittstelle undefined
zurück.
Beispiele
In diesem Beispiel haben wir eine Medienquelle mit zwei Steuerungstasten (siehe das audio-param Repo für den Quellcode oder sehen Sie sich das Beispiel live an). Wenn diese Tasten gedrückt werden, wird linearRampToValueAtTime()
verwendet, um den Gain-Wert auf 1,0 hoch und auf 0 herunterzufahren. Dies ist ziemlich nützlich für Ein-/Ausblendeffekte, obwohl AudioParam.exponentialRampToValueAtTime()
oft als etwas natürlicher empfunden wird.
// create audio context
const audioCtx = new AudioContext();
// set basic variables for example
const myAudio = document.querySelector("audio");
const linearRampPlus = document.querySelector(".linear-ramp-plus");
const linearRampMinus = document.querySelector(".linear-ramp-minus");
// Create a MediaElementAudioSourceNode
// Feed the HTMLMediaElement into it
const source = audioCtx.createMediaElementSource(myAudio);
// Create a gain node and set its gain value to 0.5
const gainNode = audioCtx.createGain();
// connect the AudioBufferSourceNode to the gainNode
// and the gainNode to the destination
gainNode.gain.setValueAtTime(0, audioCtx.currentTime);
source.connect(gainNode);
gainNode.connect(audioCtx.destination);
// set buttons to do something onclick
linearRampPlus.onclick = () => {
gainNode.gain.linearRampToValueAtTime(1.0, audioCtx.currentTime + 2);
};
linearRampMinus.onclick = () => {
gainNode.gain.linearRampToValueAtTime(0, audioCtx.currentTime + 2);
};
Spezifikationen
Specification |
---|
Web Audio API # dom-audioparam-linearramptovalueattime |
Browser-Kompatibilität
BCD tables only load in the browser