Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

ConstantSourceNode

Baseline
Weitgehend verfügbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit April 2021 browserübergreifend verfügbar.

Das Interface ConstantSourceNode ist Teil der Web Audio API und stellt eine Audioquelle dar, die auf AudioScheduledSourceNode basiert und als Ausgabe einen einzelnen, unveränderlichen Wert liefert. Es eignet sich daher für Fälle, in denen Sie einen konstanten Wert von einer Audioquelle benötigen. Außerdem kann es wie ein konstruierbarer AudioParam verwendet werden, indem Sie den Wert seines offset automatisieren oder einen anderen Node damit verbinden. Siehe Mehrere Parameter mit ConstantSourceNode steuern.

Ein ConstantSourceNode hat keine Eingänge und genau einen monauralen Ausgang (einen Kanal). Der Wert des Ausgangs entspricht immer dem Wert des Parameters offset.

EventTarget AudioNode AudioScheduledSourceNode ConstantSourceNode
Anzahl der Eingänge 0
Anzahl der Ausgänge 1

Konstruktor

ConstantSourceNode()

Erstellt eine neue ConstantSourceNode-Instanz und gibt sie zurück. Optional kann ein Objekt angegeben werden, das Anfangswerte für die Eigenschaften der Instanz festlegt. Alternativ können Sie die Factory-Methode BaseAudioContext.createConstantSource() verwenden. Siehe Einen AudioNode erstellen.

Instanzeigenschaften

Erbt Eigenschaften vom übergeordneten Interface AudioScheduledSourceNode und ergänzt die folgende Eigenschaft:

offset Schreibgeschützt

Ein AudioParam, der den Wert angibt, den diese Quelle kontinuierlich ausgibt. Der Standardwert ist 1,0.

Instanzmethoden

Erbt Methoden vom übergeordneten Interface AudioScheduledSourceNode.

Hinweis: In einigen Browsern sind diese Methoden als Teil des Interfaces AudioScheduledSourceNode implementiert.

start()

Plant den Beginn der Tonwiedergabe zu einem genauen Zeitpunkt.

stop()

Plant das Ende der Tonwiedergabe zu einem genauen Zeitpunkt.

Ereignisse

Erbt Ereignisse vom übergeordneten Interface AudioScheduledSourceNode.

Hinweis: In einigen Browsern sind diese Ereignisse als Teil des Interfaces AudioScheduledSourceNode implementiert.

ended

Wird ausgelöst, wenn die Wiedergabe der Daten des ConstantSourceNode beendet ist.

Beispiel

Im Artikel Mehrere Parameter mit ConstantSourceNode steuern wird ein ConstantSourceNode erstellt, damit ein Schieberegler den Gain von zwei GainNode-Instanzen ändern kann. Die drei Nodes werden folgendermaßen eingerichtet:

js
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);

Der Code erstellt zunächst die Gain-Nodes und setzt sowohl sie als auch den Lautstärkeregler, der ihre Werte anpasst, auf 0,5. Anschließend wird der ConstantSourceNode durch Aufrufen von AudioContext.createConstantSource() erstellt. Die Gain-Parameter der beiden Gain-Nodes werden mit dem ConstantSourceNode verbunden. Danach wird die konstante Quelle durch Aufrufen ihrer Methode start() gestartet. Schließlich werden die beiden Gain-Nodes mit dem Audioausgang verbunden (üblicherweise Lautsprecher oder Kopfhörer).

Wenn sich nun der Wert von constantNode.offset ändert, nehmen die Gain-Werte von gainNode2 und gainNode3 denselben Wert an.

Wenn Sie das Beispiel in Aktion sehen und den übrigen Code lesen möchten, aus dem diese Ausschnitte stammen, lesen Sie Mehrere Parameter mit ConstantSourceNode steuern.

Spezifikationen

Spezifikation
Web Audio API
# ConstantSourceNode

Browser-Kompatibilität

Siehe auch