BaseAudioContext

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.

La interfaz BaseAudioContext de la API de Audio Web actúa como una definición base para los gráficos de procesamiento de audio en línea y fuera de línea, como se representa mediante AudioContext y OfflineAudioContext respectivamente. No use BaseAudioContext directamente; use sus funciones a través de una de estas dos interfaces heredadas.

BaseAudioContext puede ser destino de eventos, por lo que implementa la interfaz EventTarget.

EventTarget BaseAudioContext

Propiedades de instancia

BaseAudioContext.audioWorklet Read only Contexto seguro

Devuelve el objeto AudioWorklet, que se puede usar para crear y administrar AudioNode en los que el código JavaScript que implementa la interfaz AudioWorkletProcessor se ejecuta en segundo plano para procesar datos de audio.

BaseAudioContext.currentTime Read only

Devuelve un double que representa un tiempo de hardware cada vez mayor en segundos utilizado para la programación. Comienza en 0.

BaseAudioContext.destination Read only

Devuelve un AudioDestinationNode que representa el destino final de todo el audio en el contexto. Se puede considerar como el dispositivo de reproducción de audio.

BaseAudioContext.listener Read only

Devuelve el objeto AudioListener, utilizado para la espacialización 3D.

BaseAudioContext.sampleRate Read only

Devuelve un float que representa la frecuencia de muestreo (en muestras por segundo) utilizada por todos los nodos en este contexto. La frecuencia de muestreo de un AudioContext no se puede cambiar.

BaseAudioContext.state Read only

Devuelve el estado actual de AudioContext.

Métodos de instancia

También implementa métodos de la interfaz EventTarget.

BaseAudioContext.createAnalyser()

Crea un AnalyserNode, que se puede usar para exponer datos de tiempo y frecuencia de audio y, por ejemplo, para crear visualizaciones de datos.

BaseAudioContext.createBiquadFilter()

Crea un BiquadFilterNode, que representa un filtro de segundo orden configurable como varios tipos de filtros comunes diferentes: paso alto, paso bajo, paso banda, etc.

BaseAudioContext.createBuffer()

Crea un objeto AudioBuffer nuevo y vacío, que luego se puede completar con datos y reproducir a través de un AudioBufferSourceNode.

BaseAudioContext.createBufferSource()

Crea un AudioBufferSourceNode, que se puede usar para reproducir y manipular datos de audio contenidos en un objeto AudioBuffer. Los AudioBuffer se crean usando AudioContext.createBuffer() o los devuelve AudioContext. decodeAudioData() cuando decodifica con éxito una pista de audio.

BaseAudioContext.createConstantSource()

Crea un objeto ConstantSourceNode, que es una fuente de audio que emite continuamente una señal de sonido monoaural (de un canal) cuyas muestras tienen el mismo valor.

BaseAudioContext.createChannelMerger()

Crea un ChannelMergerNode, que se usa para combinar canales de varias transmisiones de audio en una sola transmisión de audio.

BaseAudioContext.createChannelSplitter()

Crea un ChannelSplitterNode, que se utiliza para acceder a los canales individuales de una transmisión de audio y procesarlos por separado.

BaseAudioContext.createConvolver()

Crea un ConvolverNode, que se puede usar para aplicar efectos de convolución a su gráfico de audio, por ejemplo, un efecto de reverberación.

BaseAudioContext.createDelay()

Crea un DelayNode, que se usa para retrasar la señal de audio entrante en cierta cantidad. Este nodo también es útil para crear bucles de retroalimentación en un gráfico de la API de Audio Web.

BaseAudioContext.createDynamicsCompressor()

Crea un DynamicsCompressorNode, que se puede usar para aplicar compresión acústica a una señal de audio.

BaseAudioContext.createGain()

Crea un GainNode, que se puede usar para controlar el volumen general del gráfico de audio.

BaseAudioContext.createIIRFilter()

Crea un IIRFilterNode, que representa un filtro de segundo orden configurable como varios tipos de filtros comunes diferentes.

BaseAudioContext.createOscillator()

Crea un OscillatorNode, una fuente que representa una forma de onda periódica. Básicamente genera un tono.

BaseAudioContext.createPanner()

Crea un PannerNode, que se usa para espacializar una transmisión de audio entrante en un espacio 3D.

BaseAudioContext.createPeriodicWave()

Crea un PeriodicWave, que se usa para definir una forma de onda periódica que se puede usar para determinar la salida de un OscillatorNode.

BaseAudioContext.createScriptProcessor() Obsoleto

Crea un ScriptProcessorNode, que se puede usar para el procesamiento de audio directo a través de JavaScript.

BaseAudioContext.createStereoPanner()

Crea un StereoPannerNode, que se puede usar para aplicar panoramización estéreo a una fuente de audio.

BaseAudioContext.createWaveShaper()

Crea un WaveShaperNode, que se usa para implementar efectos de distorsión no lineal.

BaseAudioContext.decodeAudioData()

Decodifica de forma asíncrona los datos del archivo de audio contenidos en un ArrayBuffer. En este caso, ArrayBuffer generalmente se carga desde un atributo response de XMLHttpRequest después de establecer responseType en arraybuffer. Este método solo funciona en archivos completos, no en fragmentos de archivos de audio.

Eventos

statechange

Se activa cuando el estado de AudioContext cambia debido a la llamada de uno de los métodos de cambio de estado (AudioContext.suspend, AudioContext.resume, o { {domxref("AudioContext.close")}}).

Ejemplos

Declaración básica de contexto de audio:

js
const audioContext = new AudioContext();

Variante entre navegadores:

js
const AudioContext = window.AudioContext || window.webkitAudioContext;
const audioContext = new AudioContext();

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

Especificaciones

Specification
Web Audio API
# BaseAudioContext

Compatibilidad con navegadores

BCD tables only load in the browser

Véase también