ConstantSourceNode
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2021.
Das ConstantSourceNode
-Interface - Teil der Web Audio API - stellt eine Audioquelle dar (basierend auf AudioScheduledSourceNode
), deren Ausgabe einen einzigen unveränderlichen Wert hat. Dies ist nützlich in Fällen, in denen Sie einen konstanten Wert von einer Audioquelle benötigen. Außerdem kann es wie ein konstruierbares AudioParam
verwendet werden, indem der Wert seines offset
automatisiert oder ein anderer Knoten damit verbunden wird; siehe Controlling multiple parameters with ConstantSourceNode.
Ein ConstantSourceNode
hat keine Eingänge und genau einen monauralen (einkanaligen) Ausgang. Der Wert des Ausgangs ist immer derselbe wie der Wert des offset
-Parameters.
Anzahl der Eingänge | 0 |
---|---|
Anzahl der Ausgänge | 1 |
Konstruktor
ConstantSourceNode()
-
Erstellt und gibt eine neue
ConstantSourceNode
-Instanz zurück, wobei optional ein Objekt angegeben wird, das Anfangswerte für die Eigenschaften des Objekts festlegt. Alternativ können Sie dieBaseAudioContext.createConstantSource()
-Fabrikmethode verwenden; siehe Creating an AudioNode.
Instanzeigenschaften
Erbt Eigenschaften von seiner übergeordneten Schnittstelle, AudioScheduledSourceNode
, und fügt die folgenden Eigenschaften hinzu:
offset
-
Ein
AudioParam
, das den Wert angibt, den diese Quelle kontinuierlich ausgibt. Der Standardwert ist 1.0.
Ereignisse
Erbt Ereignisse von seiner übergeordneten Schnittstelle, AudioScheduledSourceNode
.
Hinweis: Die Implementierung dieser Ereignisse in einigen Browsern ist Teil der AudioScheduledSourceNode
-Schnittstelle.
ended
-
Wird ausgelöst, wann immer die
ConstantSourceNode
-Daten nicht mehr abgespielt werden.
Instanzmethoden
Erbt Methoden von seiner übergeordneten Schnittstelle, AudioScheduledSourceNode
.
Hinweis: Die Implementierung dieser Methoden in einigen Browsern ist Teil der AudioScheduledSourceNode
-Schnittstelle.
Beispiel
Im Artikel Controlling multiple parameters with ConstantSourceNode wird ein ConstantSourceNode
erstellt, um zu ermöglichen, dass ein Slider die Verstärkung von zwei GainNode
s ändert. Die drei Knoten sind wie folgt eingerichtet:
gainNode2 = context.createGain();
gainNode3 = context.createGain();
gainNode2.gain.value = gainNode3.gain.value = 0.5;
volumeSliderControl.value = gainNode2.gain.value;
constantNode = context.createConstantSource();
constantNode.connect(gainNode2.gain);
constantNode.connect(gainNode3.gain);
constantNode.start();
gainNode2.connect(context.destination);
gainNode3.connect(context.destination);
Dieser Code beginnt mit der Erstellung der Gain-Knoten und setzt sie und die Lautstärkeregelung, die ihren Wert anpasst, auf 0,5. Dann wird das ConstantSourceNode
durch Aufruf von AudioContext.createConstantSource()
erstellt, und die Gain-Parameter jedes der beiden Gain-Knoten werden mit dem ConstantSourceNode
verbunden. Nachdem die konstante Quelle durch Aufrufen ihrer start()
-Methode gestartet wurde, werden schließlich die beiden Gain-Knoten mit der Audioausgabe (typischerweise Lautsprecher oder Kopfhörer) verbunden.
Jetzt, wann immer sich der Wert von constantNode.offset
ändert, ändert sich die Verstärkung sowohl bei gainNode2
als auch gainNode3
zu diesem Wert.
Um dieses Beispiel in Aktion zu sehen und den Rest des Codes zu lesen, aus dem diese Schnipsel stammen, siehe Controlling multiple parameters with ConstantSourceNode.
Spezifikationen
Specification |
---|
Web Audio API # ConstantSourceNode |
Browser-Kompatibilität
BCD tables only load in the browser