# js.html.audio

.. |
AnalyserNode | The `AnalyserNode` interface represents a node able to provide real-time frequency and time-domain analysis information. It is an `AudioNode` that passes the audio stream unchanged from the input to the output, but allows you to take the generated data, process it, and create audio visualizations.

AudioBuffer

Objects of these types are designed to hold small audio snippets, typically less than 45 s. For longer sounds, objects implementing the `MediaElementAudioSourceNode` are more suitable. The buffer contains data in the following format: non-interleaved IEEE754 32-bit linear PCM with a nominal range between `-1` and `+1`, that is, 32bits floating point buffer, with each samples between -1.0 and 1.0. If the `AudioBuffer` has multiple channels, they are stored in separate buffer.

AudioBufferSourceNode | The `AudioBufferSourceNode` interface represents an audio source consisting of in-memory audio data, stored in an `AudioBuffer`. It is an `AudioNode` that acts as an audio source`.`
AudioContext | An `AudioContext` can be a target of events, therefore it implements the `EventTarget` interface.
AudioDestinationNode | `AudioDestinationNode` has no output (as it is the output, no more `AudioNode` can be linked after it in the audio graph) and one input. The amount of channels in the input must be between `0` and the `maxChannelCount` value or an exception is raised.
AudioListener | It is important to note that there is only one listener per context and that it isn't an `AudioNode`.
AudioNode | The `AudioNode` interface is a generic interface for representing an audio processing module like an audio source (e.g. an HTML `audio` or `video` element, an `OscillatorNode`, etc.), the audio destination, intermediate processing module (e.g. a filter like `BiquadFilterNode` or `ConvolverNode`), or volume control (like `GainNode`).
AudioParam | There are two kinds of `AudioParam`, a-rate and k-rate parameters:
AudioProcessingEvent | The Web Audio API `AudioProcessingEvent` represents events that occur when a `ScriptProcessorNode` input buffer is ready to be processed.
BiquadFilterNode | The `BiquadFilterNode` interface represents a simple low-order filter, and is created using the `AudioContext.createBiquadFilter()` method. It is an `AudioNode` that can represent different kinds of filters, tone control devices, and graphic equalizers.
BiquadFilterType |
ChannelCountMode |
ChannelInterpretation |
ChannelMergerNode |
ChannelSplitterNode |
ConvolverNode | The `ConvolverNode` interface is an `AudioNode` that performs a Linear Convolution on a given `AudioBuffer`, often used to achieve a reverb effect. A `ConvolverNode` always has exactly one input and one output.
DelayNode | Documentation DelayNode by Mozilla Contributors, licensed under CC-BY-SA 2.5.
DistanceModelType |
DynamicsCompressorNode | Inherits properties from its parent, `AudioNode`.
GainNode | The gain is a unitless value, changing with time, that is multiplied to each corresponding sample of all input channels. If modified, the new gain is applied using a de-zippering algorithm in order to prevent unaesthetic 'clicks' from appearing in the resulting audio.
MediaElementAudioSourceNode | A `MediaElementSourceNode` has no inputs and exactly one output, and is created using the `AudioContext.createMediaElementSource` method. The amount of channels in the output equals the number of channels of the audio referenced by the `HTMLMediaElement` used in the creation of the node, or is 1 if the `HTMLMediaElement` has no audio.
MediaStreamAudioDestinationNode | Inherits properties from its parent, `AudioNode`.
MediaStreamAudioSourceNode | A `MediaElementSourceNode` has no inputs and exactly one output, and is created using the `AudioContext.createMediaStreamSource` method. The amount of channels in the output equals the number of channels in `AudioMediaStreamTrack`. If there is no valid media stream, then the number of output channels will be one silent channel.
OfflineAudioCompletionEvent | The Web Audio API `OfflineAudioCompletionEvent` interface represents events that occur when the processing of an `OfflineAudioContext` is terminated. The `complete` event implements this interface.
OfflineAudioContext | The `OfflineAudioContext` interface is an `AudioContext` interface representing an audio-processing graph built from linked together `AudioNode`s. In contrast with a standard `AudioContext`, an `OfflineAudioContext` doesn't render the audio to the device hardware; instead, it generates it, as fast as it can, and outputs the result to an `AudioBuffer`.
OscillatorNode | The `OscillatorNode` interface represents a periodic waveform, like a sine wave. It is an `AudioNode` audio-processing module that causes a given frequency of sine wave to be created — in effect, a constant tone.
OscillatorType |
OverSampleType |
PannerNode | A `PannerNode` always has exactly one input and one output: the input can be mono or stereo but the output is always stereo (2 channels); you can't have panning effects without at least two audio channels!
PanningModelType |
PeriodicWave | `PeriodicWave` has no inputs or outputs; it is used to create custom oscillators via `OscillatorNode.setPeriodicWave`. The `PeriodicWave` itself is created/returned by `AudioContext.createPeriodicWave`.
ScriptProcessorNode | Documentation ScriptProcessorNode by Mozilla Contributors, licensed under CC-BY-SA 2.5.
StereoPannerNode | The `pan` property takes a unitless value between `-1` (full left pan) and `1` (full right pan). This interface was introduced as a much simpler way to apply a simple panning effect than having to use a full `PannerNode`.
WaveShaperNode | A `WaveShaperNode` always has exactly one input and one output.