PannerNode

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.

Интерфейс PannerNode представляет положение источника звука и поведение его сигнала в пространстве. Это модуль AudioNode для обработки звука, описывающий его положение (в правосторонней системе координат Декарта), его перемещение (с помощью вектора скорости распространения) и его направленности (при помощи конуса направления).

PannerNode всегда имеет только один вход и один выход: вход может быть моно или стерео, но выход всегда стерео (2 канала); нельзя получить эффекты панорамирования при отсутствии, как минимум двух аудиоканалов!

PannerNode задаёт положение в пространстве, скорость распространения и направленность данного сигнала.

Число входов 1
Число выходов 1
Режим подсчёта каналов "clamped-max"
Количество каналов 2
Представление канала "speakers"

Конструктор

PannerNode.PannerNode

Создаёт новый экземпляр PannerNode.

Свойства

Наследует свойства от своего родителя*, AudioNode*.

Значения направления и положения устанавливаются и получаются различными вариантами синтаксиса, поскольку они хранятся в виде значений AudioParam. Получение значения осуществляется через обращение, например так, PannerNode.positionX. Установка того же свойства делается так, PannerNode.positionX.value. This is why these values are not marked read only, which is how they appear in the WebIDL.

PannerNode.coneInnerAngle

Это значение типа double, представляющее угол конуса (в градусах), внутри которого не будет уменьшения громкости.

PannerNode.coneOuterAngle

Это значение типа double, представляющее угол конуса (в градусах), вне которого громкость звука будет уменьшена на постоянное значение, определяемое атрибутом coneOuterGain.

PannerNode.coneOuterGain

Это значение типа double, представляющее величину снижения уровня громкости вне конуса, определённого атрибутом coneOuterAngle. Значение по умолчанию равно 0, то есть, вне конуса звук не будет слышен.

PannerNode.distanceModel

Перечислимое значение, определяющее, какой алгоритм будет использован для уменьшения громкости источника звука при удалении его от слушателя.

PannerNode.maxDistance

Значение типа double, представляющее максимальное расстояние между источником звука и слушателем, после которого громкость звука далее не уменьшается.

PannerNode.orientationX

Представляет горизонтальное положение вектора источника звука в правосторонней системе координат Декарта. В то время как данный AudioParam непосредственно изменить нельзя, его значение может быть изменено через его свойство value . Значение по умолчанию равно 1.

PannerNode.orientationY

Представляет вертикальное положение вектора источника звука в правосторонней системе координат Декарта. Значение по умолчанию равно 0. В то время как данный AudioParam непосредственно изменить нельзя, его значение может быть изменено через его свойство value. Значение по умолчанию равно 0.

PannerNode.orientationZ

Представляет продольную (вперёд - назад) позицию вектора распространения звука от источника в правосторонней системе координат Декарта. Значение по умолчанию равно 0. В то время как данный AudioParam непосредственно изменить нельзя, его значение может быть изменено через его свойство value. Значение по умолчанию равно 0.

PannerNode.panningModel

Перечислимое значение, определяющее какой алгоритм пространственной обработки используется для размещения источника звука в трёхмерном пространстве.

PannerNode.positionX

Представляет горизонтальное положение источника звука в правосторонней системе координат Декарта. Значение по умолчанию равно 0. В то время как данный AudioParam непосредственно изменить нельзя, его значение может быть изменено через его свойство value. Значение по умолчанию равно 0.

PannerNode.positionY

Представляет вертикальное положение источника звука в правосторонней системе координат Декарта. Значение по умолчанию равно 0. В то время как данный AudioParam непосредственно изменить нельзя, его значение может быть изменено через его свойство value. Значение по умолчанию равно 0.

PannerNode.positionZ

Представляет позицию источника звука вдоль оси Z (вперёд и назад) в правосторонней системе координат Декарта. Значение по умолчанию равно 0. В то время как данный AudioParam непосредственно изменить нельзя, его значение может быть изменено через его свойство value. Значение по умолчанию равно 0.

PannerNode.refDistance

Значение типа double, представляющее справочное (опорное) расстояние для уменьшения громкости при удалении источника звука от слушателя.

PannerNode.rolloffFactor

Значение типа double, представляющее как быстро уменьшается громкость при удалении источника звука от слушателя. Данное значение используется во всех моделях изменения громкости от расстояния.

Методы

Наследует методы от своего родителя*, AudioNode*.

PannerNode.setPosition()

Определяет положение источника звука относительно слушателя (представлен объектом AudioListener, хранящимся в атрибуте AudioContext.listener ).

PannerNode.setOrientation()

Определяет направление воспроизведения источника звука.

PannerNode.setVelocity()

Это устаревший элемент API и его работа в дальнейшем не гарантируется. Определяет вектор распространения звука от источника - как быстро он движется и в каком направлении. В предыдущей версии спецификации, PannerNode имел скорость распространения, которую можно было выдать выше или ниже подключённого потока AudioBufferSourceNode. Эта функция не была чётко оговорена и имела ряд проблем, поэтому была удалена из спецификации.

Спецификации

Specification
Web Audio API
# PannerNode

Совместимость с браузерами

BCD tables only load in the browser

Смотрите также