This page was translated from English by the community.Learn more and join the MDN Web Docs community.
AudioNode
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since июль 2015 г..
* Some parts of this feature may have varying levels of support.
AudioNode это общий интерфейс для описания модулей обработки аудио таких как источники звука (например HTML элементы<audio> или<video>), генераторы звука (напримерOscillatorNode и т.п.), приёмники звука для модулей производящих обработку звука (напримерBiquadFilterNode илиConvolverNode), или регуляторы громкости (напримерGainNode).

AudioNode имеет входы и выходы, каждый с заданным количествомканалов.AudioNode без входов в с одним или несколькими выходами называютсяисточниками (source node). Результаты обработки передаются от одного AudioNode к другому, при этом каждый узел считывает только свой вход, производит обработку и представляет результат на свой выход, или просто пропускает аудио через себя (напримерAnalyserNode где результат представляется отдельно).
Разные узлы могут быть связаны вграф обработки. Граф помещается вAudioContext. ОдинAudioNode может принадлежать только одномуAudioContext. В общем, узлы наследуют свойства и методы AudioNode, но они могут также и определять собственный функционал.Смотрите описания конкретных узлов на страницах этих узлов перечисленных на главной страницеWeb Audio API.
Примечание:AnAudioNode can be target of events, therefore it implements theEventTarget interface.
In this article
Свойства
AudioNode.contextТолько для чтенияВозвращает связанный
AudioContext, это объект, представляющий граф, в котором находится данный узел.AudioNode.numberOfInputsТолько для чтенияВозвращает количество входов узла. Узлы определённые как источники имеют
numberOfInputsравное 0.AudioNode.numberOfOutputsТолько для чтенияВозвращает количество выходов узла. Узлы назначения — такие как
AudioDestinationNode— имеют количество выходов равное 0.AudioNode.channelCountЭто целое число, используемое для определения того, сколько каналов используются дляup-mixing and down-mixing с любыми входами узла. Его использование точнее определяется значением
AudioNode.channelCountMode.AudioNode.channelCountModeЭто перечисление описывающее путь согласования каналов между входом и выходом.
AudioNode.channelInterpretationЭто перечисление описывающее каналы.Эта интерпретация описывает как будет происходитьup-mixing and down-mixing.Возможные значения
"speakers"or"discrete".
Методы
Так же реализует методы из интерфейсаEventTarget.
AudioNode.connect(AudioNode)Позволяет нам подключить один выход данного узла на один вход другого узла.
AudioNode.connect(AudioParam)Позволяет нам подключить один выход данного узла на параметрический вход другого.
AudioNode.disconnect()Позволяет нам отключить текущий узел от другого, уже подключённого узла.
Примеры
Этот простой фрагмент кода показывает создание некоторых аудио узлов, и как можно использовать свойства и методы AudioNode. Вы можете найти примеры такого использования на любом из примеров, на страницеWeb Audio API (напримерViolent Theremin.)
var AudioContext = window.AudioContext || window.webkitAudioContext;var audioCtx = new AudioContext();var oscillator = audioCtx.createOscillator();var gainNode = audioCtx.createGain();oscillator.connect(gainNode);gainNode.connect(audioCtx.destination);oscillator.context;oscillator.numberOfInputs;oscillator.numberOfOutputs;oscillator.channelCount;Спецификации
| Specification |
|---|
| Web Audio API> # AudioNode> |