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

View in English Always switch to English

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.

Das BaseAudioContext-Interface der Web Audio API dient als Basisdefinition für Online- und Offline-Audioverarbeitungsgraphen, die jeweils durch AudioContext und OfflineAudioContext dargestellt werden. Sie würden BaseAudioContext nicht direkt verwenden – Sie würden seine Funktionen über eines dieser beiden geerbten Schnittstellen nutzen.

Ein BaseAudioContext kann Ziel von Ereignissen sein, daher implementiert es das EventTarget-Interface.

EventTarget BaseAudioContext

Instanz-Eigenschaften

BaseAudioContext.audioWorklet Schreibgeschützt Sicherer Kontext

Gibt das AudioWorklet-Objekt zurück, das verwendet werden kann, um AudioNodes zu erstellen und zu verwalten, in denen JavaScript-Code, der das AudioWorkletProcessor-Interface implementiert, im Hintergrund zur Verarbeitung von Audiodaten ausgeführt wird.

BaseAudioContext.currentTime Schreibgeschützt

Gibt ein Double zurück, das eine sich ständig erhöhende Hardware-Zeit in Sekunden darstellt, die zur Planung verwendet wird. Sie beginnt bei 0.

BaseAudioContext.destination Schreibgeschützt

Gibt ein AudioDestinationNode zurück, das die endgültige Bestimmung aller Audios im Kontext darstellt. Es kann als das Audio-Rendering-Gerät betrachtet werden.

BaseAudioContext.listener Schreibgeschützt

Gibt das AudioListener-Objekt zurück, das für die 3D-Räumlichkeit verwendet wird.

BaseAudioContext.sampleRate Schreibgeschützt

Gibt ein Float zurück, das die Abtastrate (in Samples pro Sekunde) darstellt, die von allen Knoten in diesem Kontext verwendet wird. Die Abtastrate eines AudioContext kann nicht geändert werden.

BaseAudioContext.state Schreibgeschützt

Gibt den aktuellen Zustand des AudioContext zurück.

Instanz-Methoden

Implementiert auch Methoden aus dem Interface EventTarget.

BaseAudioContext.createAnalyser()

Erstellt ein AnalyserNode, das verwendet werden kann, um Audiozeit- und Frequenzdaten offenzulegen und beispielsweise Datenvisualisierungen zu erstellen.

BaseAudioContext.createBiquadFilter()

Erstellt ein BiquadFilterNode, das einen zweiten Ordnungsfilter darstellt, der als verschiedene gängige Filtertypen konfigurierbar ist: Hochpass, Tiefpass, Bandpass, usw.

BaseAudioContext.createBuffer()

Erstellt ein neues, leeres AudioBuffer-Objekt, das dann mit Daten gefüllt und über ein AudioBufferSourceNode abgespielt werden kann.

BaseAudioContext.createBufferSource()

Erstellt ein AudioBufferSourceNode, das verwendet werden kann, um Audiodaten zu spielen und zu manipulieren, die in einem AudioBuffer-Objekt enthalten sind. AudioBuffers werden mit AudioContext.createBuffer() erstellt oder durch AudioContext.decodeAudioData() zurückgegeben, wenn es eine Audiospur erfolgreich dekodiert.

BaseAudioContext.createConstantSource()

Erstellt ein ConstantSourceNode-Objekt, das eine Audioquelle ist, die kontinuierlich ein monaurales (einkanaliges) Tonsignal ausgibt, dessen Samples alle denselben Wert haben.

BaseAudioContext.createChannelMerger()

Erstellt ein ChannelMergerNode, das verwendet wird, um Kanäle aus mehreren Audioströmen zu einem einzigen Audiostrom zu kombinieren.

BaseAudioContext.createChannelSplitter()

Erstellt ein ChannelSplitterNode, das verwendet wird, um die einzelnen Kanäle eines Audiostroms zuzugreifen und sie separat zu verarbeiten.

BaseAudioContext.createConvolver()

Erstellt ein ConvolverNode, das verwendet werden kann, um Faltungseffekte auf Ihr Audio-Graphen anzuwenden, beispielsweise einen Halleffekt.

BaseAudioContext.createDelay()

Erstellt ein DelayNode, das verwendet wird, um das eingehende Audiosignal um eine bestimmte Zeit zu verzögern. Dieser Node ist auch nützlich, um Rückkopplungsschleifen in einem Web Audio API-Graphen zu erstellen.

BaseAudioContext.createDynamicsCompressor()

Erstellt ein DynamicsCompressorNode, das verwendet werden kann, um akustische Kompression auf ein Audiosignal anzuwenden.

BaseAudioContext.createGain()

Erstellt ein GainNode, das verwendet werden kann, um die Gesamtlautstärke des Audio-Graphen zu steuern.

BaseAudioContext.createIIRFilter()

Erstellt ein IIRFilterNode, das einen zweiten Ordnungsfilter darstellt, der als verschiedene gängige Filtertypen konfigurierbar ist.

BaseAudioContext.createOscillator()

Erstellt ein OscillatorNode, eine Quelle, die eine periodische Wellenform darstellt. Es erzeugt im Wesentlichen einen Ton.

BaseAudioContext.createPanner()

Erstellt ein PannerNode, das verwendet wird, um einen eingehenden Audiostrom im 3D-Raum zu räumlich zu gestalten.

BaseAudioContext.createPeriodicWave()

Erstellt ein PeriodicWave, das verwendet wird, um eine periodische Wellenform zu definieren, die zur Bestimmung der Ausgabe eines OscillatorNode verwendet werden kann.

BaseAudioContext.createScriptProcessor()

Erstellt ein ScriptProcessorNode, das für die direkte Audiobearbeitung über JavaScript verwendet werden kann.

BaseAudioContext.createStereoPanner()

Erstellt ein StereoPannerNode, das verwendet werden kann, um Stereo-Panning auf eine Audioquelle anzuwenden.

BaseAudioContext.createWaveShaper()

Erstellt ein WaveShaperNode, das verwendet wird, um nichtlineare Verzerrungseffekte zu implementieren.

BaseAudioContext.decodeAudioData()

Dekodiert asynchron Audiodatendateien, die in einem ArrayBuffer enthalten sind. In diesem Fall wird der ArrayBuffer normalerweise von einem XMLHttpRequest-response-Attribut geladen, nachdem der responseType auf arraybuffer gesetzt wurde. Diese Methode funktioniert nur mit vollständigen Dateien, nicht mit Fragmenten von Audiodateien.

Ereignisse

statechange

Wird ausgelöst, wenn sich der Zustand des AudioContext aufgrund des Aufrufs einer der Zustandsänderungsmethoden (AudioContext.suspend, AudioContext.resume oder AudioContext.close) ändert.

Beispiele

js
const audioContext = new AudioContext();

const oscillatorNode = audioContext.createOscillator();
const gainNode = audioContext.createGain();
const finish = audioContext.destination;

Spezifikationen

Spezifikation
Web Audio API
# BaseAudioContext

Browser-Kompatibilität

Siehe auch