BaseAudioContext
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.
* Einige Teile dieser Funktion werden möglicherweise unterschiedlich gut unterstützt.
Das Interface BaseAudioContext der Web Audio API dient als Basisdefinition für Graphen zur Online- und Offline-Audioverarbeitung, die durch AudioContext beziehungsweise OfflineAudioContext repräsentiert werden. Sie verwenden BaseAudioContext nicht direkt, sondern nutzen seine Funktionen über eines dieser beiden abgeleiteten Interfaces.
Ein BaseAudioContext kann Ziel von Ereignissen sein und implementiert daher das Interface EventTarget.
Instanzeigenschaften
BaseAudioContext.audioWorkletSchreibgeschützt Sicherer Kontext-
Gibt das Objekt
AudioWorkletzurück. Damit lassen sichAudioNode-Instanzen erstellen und verwalten, in denen JavaScript-Code, der das InterfaceAudioWorkletProcessorimplementiert, im Hintergrund zur Verarbeitung von Audiodaten ausgeführt wird. BaseAudioContext.currentTimeSchreibgeschützt-
Gibt einen Wert vom Typ
doublezurück, der eine stetig zunehmende Hardware-Zeit in Sekunden zur zeitlichen Planung angibt. Er beginnt bei0. BaseAudioContext.destinationSchreibgeschützt-
Gibt einen
AudioDestinationNodezurück, der das endgültige Ziel aller Audiodaten im Kontext darstellt. Er kann als das Gerät betrachtet werden, das die Audiodaten ausgibt. BaseAudioContext.listenerSchreibgeschützt-
Gibt das Objekt
AudioListenerzurück, das für die räumliche Darstellung in 3D verwendet wird. BaseAudioContext.renderQuantumSizeSchreibgeschützt-
Gibt eine Ganzzahl zurück, die die Größe eines Verarbeitungsblocks des Audiographen angibt, also die Anzahl der Audio-Sample-Frames, die bei jedem Verarbeitungsdurchlauf verarbeitet werden.
BaseAudioContext.sampleRateSchreibgeschützt-
Gibt einen Gleitkommawert zurück, der die von allen Knoten in diesem Kontext verwendete Abtastrate (in Samples pro Sekunde) angibt. Die Abtastrate eines
AudioContextkann nicht geändert werden. BaseAudioContext.stateSchreibgeschützt-
Gibt den aktuellen Zustand des
AudioContextzurück.
Instanzmethoden
Implementiert außerdem Methoden des Interfaces EventTarget.
BaseAudioContext.createAnalyser()-
Erstellt einen
AnalyserNode, mit dem sich zeit- und frequenzbezogene Audiodaten bereitstellen und beispielsweise Datenvisualisierungen erstellen lassen. BaseAudioContext.createBiquadFilter()-
Erstellt einen
BiquadFilterNode. Dieser stellt einen Filter zweiter Ordnung dar, der als einer von mehreren gängigen Filtertypen konfiguriert werden kann, etwa als Hochpass-, Tiefpass- oder Bandpassfilter. BaseAudioContext.createBuffer()-
Erstellt ein neues, leeres
AudioBuffer-Objekt, das anschließend mit Daten gefüllt und über einenAudioBufferSourceNodeabgespielt werden kann. BaseAudioContext.createBufferSource()-
Erstellt einen
AudioBufferSourceNode, mit dem Audiodaten in einemAudioBuffer-Objekt abgespielt und bearbeitet werden können.AudioBuffer-Objekte werden mitAudioContext.createBuffer()erstellt oder vonAudioContext.decodeAudioData()zurückgegeben, wenn eine Audiospur erfolgreich dekodiert wurde. BaseAudioContext.createConstantSource()-
Erstellt ein
ConstantSourceNode-Objekt. Diese Audioquelle gibt fortlaufend ein monaurales (einkanaliges) Tonsignal aus, dessen Samples alle denselben Wert haben. BaseAudioContext.createChannelMerger()-
Erstellt einen
ChannelMergerNode, mit dem Kanäle aus mehreren Audiostreams zu einem einzigen Audiostream zusammengeführt werden. BaseAudioContext.createChannelSplitter()-
Erstellt einen
ChannelSplitterNode, mit dem auf die einzelnen Kanäle eines Audiostreams zugegriffen werden kann, um sie getrennt zu verarbeiten. BaseAudioContext.createConvolver()-
Erstellt einen
ConvolverNode, mit dem sich Faltungseffekte auf Ihren Audiographen anwenden lassen, beispielsweise ein Halleffekt. BaseAudioContext.createDelay()-
Erstellt einen
DelayNode, mit dem das eingehende Audiosignal um eine bestimmte Zeit verzögert wird. Dieser Knoten eignet sich auch zum Erstellen von Rückkopplungsschleifen in einem Graphen der Web Audio API. BaseAudioContext.createDynamicsCompressor()-
Erstellt einen
DynamicsCompressorNode, mit dem sich ein Audiosignal dynamisch komprimieren lässt. BaseAudioContext.createGain()-
Erstellt einen
GainNode, mit dem sich die Gesamtlautstärke des Audiographen steuern lässt. BaseAudioContext.createIIRFilter()-
Erstellt einen
IIRFilterNode. Dieser stellt einen Filter zweiter Ordnung dar, der als einer von mehreren gängigen Filtertypen konfiguriert werden kann. BaseAudioContext.createOscillator()-
Erstellt einen
OscillatorNode, eine Quelle für eine periodische Wellenform. Er erzeugt im Wesentlichen einen Ton. BaseAudioContext.createPanner()-
Erstellt einen
PannerNode, mit dem ein eingehender Audiostream im dreidimensionalen Raum positioniert wird. BaseAudioContext.createPeriodicWave()-
Erstellt eine
PeriodicWave, mit der eine periodische Wellenform definiert wird, die zur Bestimmung der Ausgabe einesOscillatorNodeverwendet werden kann. BaseAudioContext.createScriptProcessor()-
Erstellt einen
ScriptProcessorNode, der zur direkten Audioverarbeitung mit JavaScript verwendet werden kann. BaseAudioContext.createStereoPanner()-
Erstellt einen
StereoPannerNode, mit dem sich eine Audioquelle im Stereopanorama positionieren lässt. BaseAudioContext.createWaveShaper()-
Erstellt einen
WaveShaperNode, mit dem nichtlineare Verzerrungseffekte umgesetzt werden. BaseAudioContext.decodeAudioData()-
Dekodiert asynchron Audiodateidaten, die in einem
ArrayBufferenthalten sind. In diesem Fall wird derArrayBufferüblicherweise aus dem AttributresponseeinerXMLHttpRequestgeladen, nachdemresponseTypeaufarraybuffergesetzt wurde. Diese Methode funktioniert nur mit vollständigen Dateien, nicht mit Fragmenten von Audiodateien.
Ereignisse
statechange-
Wird ausgelöst, wenn sich der Zustand des
AudioContextdurch den Aufruf einer der Methoden zur Zustandsänderung (AudioContext.suspend,AudioContext.resumeoderAudioContext.close) ändert.
Beispiele
const audioContext = new AudioContext();
const oscillatorNode = audioContext.createOscillator();
const gainNode = audioContext.createGain();
const finish = audioContext.destination;
Spezifikationen
| Spezifikation |
|---|
| Web Audio API> # BaseAudioContext> |