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 ConstantSourceNode-Interface ist Teil der Web Audio API und stellt eine Audioquelle dar, die auf AudioScheduledSourceNode basiert und als Ausgabe einen einzigen, unveränderlichen Wert liefert. Es ist daher nützlich, wenn Sie einen konstanten Wert von einer Audioquelle benötigen. Außerdem kann es ähnlich wie ein instanziierbares AudioParam verwendet werden: Sie können den Wert seines offset-Parameters automatisieren oder einen anderen Knoten damit verbinden. Weitere Informationen finden Sie unter Mehrere Parameter mit ConstantSourceNode steuern.

Ein ConstantSourceNode hat keine Eingänge und genau einen monauralen (einkanaligen) Ausgang. Der Wert der Ausgabe entspricht immer dem Wert des offset-Parameters.

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 können Sie ein Objekt angeben, das die Anfangswerte ihrer Eigenschaften 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, das den Wert festlegt, den diese Quelle kontinuierlich ausgibt. Der Standardwert ist 1.0.

Ereignisse

Erbt Ereignisse vom übergeordneten Interface AudioScheduledSourceNode.

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

ended

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

Instanzmethoden

Erbt Methoden vom übergeordneten Interface AudioScheduledSourceNode.

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

start()

Plant den Beginn der Tonwiedergabe zu einem genauen Zeitpunkt.

stop()

Plant das Ende der Tonwiedergabe zu einem genauen Zeitpunkt.

Beispiel

Im Artikel Mehrere Parameter mit ConstantSourceNode steuern wird ein ConstantSourceNode erstellt, damit ein einzelner Schieberegler die Verstärkung von zwei GainNode-Knoten ändern kann. Die drei Knoten 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);

Dieser Code erstellt zunächst die Gain-Knoten und setzt sowohl diese als auch den Lautstärkeregler, der ihre Werte anpasst, auf 0.5. Anschließend wird der ConstantSourceNode durch Aufruf von AudioContext.createConstantSource() erstellt und mit den Gain-Parametern der beiden Gain-Knoten verbunden. Danach wird die konstante Quelle durch Aufruf ihrer start()-Methode gestartet. Schließlich werden die beiden Gain-Knoten mit dem Audioausgabegerät verbunden (in der Regel Lautsprecher oder Kopfhörer).

Wenn sich nun der Wert von constantNode.offset ändert, wird die Verstärkung von gainNode2 und gainNode3 auf denselben Wert gesetzt.

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