PannerNode
Интерфейс
PannerNode
представляет положение источника звука и поведение его сигнала в пространстве. Это модуль AudioNode
для обработки звука, описывающий его положение (в правосторонней системе координат Декарта), его перемещение (с помощью вектора скорости распространения) и его направленности (при помощи конуса направления).PannerNode
всегда имеет только один вход и один выход: вход может быть моно или стерео, но выход всегда стерео (2 канала); нельзя получить эффекты панорамирования при отсутствии, как минимум двух аудиоканалов!Число входов | 1 |
---|---|
Число выходов | 1 |
Режим подсчёта каналов | "clamped-max" |
Количество каналов | 2 |
Представление канала | "speakers" |
Конструктор
PannerNode.PannerNode
(en-US)-
- Создаёт новый экземпляр
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
(en-US)- Это значение типа
double
, представляющее угол конуса (в градусах), внутри которого не будет уменьшения громкости. PannerNode.coneOuterAngle
(en-US)- Это значение типа
double
, представляющее угол конуса (в градусах), вне которого громкость звука будет уменьшена на постоянное значение, определяемое атрибутомconeOuterGain.
PannerNode.coneOuterGain
(en-US)- Это значение типа
double
, представляющее величину снижения уровня громкости вне конуса, определённого атрибутомconeOuterAngle
. Значение по умолчанию равно0
, то есть, вне конуса звук не будет слышен. PannerNode.distanceModel
(en-US)- Перечислимое значение, определяющее, какой алгоритм будет использован для уменьшения громкости источника звука при удалении его от слушателя.
PannerNode.maxDistance
(en-US)- Значение типа
double
, представляющее максимальное расстояние между источником звука и слушателем, после которого громкость звука далее не уменьшается. PannerNode.orientationX
(en-US)- Представляет горизонтальное положение вектора источника звука в правосторонней системе координат Декарта. В то время как данный
AudioParam
непосредственно изменить нельзя, его значение может быть изменено через его свойствоvalue
(en-US) . Значение по умолчанию равно 1. PannerNode.orientationY
(en-US)- Представляет вертикальное положение вектора источника звука в правосторонней системе координат Декарта. Значение по умолчанию равно 0. В то время как данный
AudioParam
непосредственно изменить нельзя, его значение может быть изменено через его свойствоvalue
(en-US). Значение по умолчанию равно 0. PannerNode.orientationZ
(en-US)- Представляет продольную (вперёд - назад) позицию вектора распространения звука от источника в правосторонней системе координат Декарта. Значение по умолчанию равно 0. В то время как данный
AudioParam
непосредственно изменить нельзя, его значение может быть изменено через его свойствоvalue
(en-US). Значение по умолчанию равно 0. PannerNode.panningModel
(en-US)- Перечислимое значение, определяющее какой алгоритм пространственной обработки используется для размещения источника звука в трёхмерном пространстве.
PannerNode.positionX
(en-US)- Представляет горизонтальное положение источника звука в правосторонней системе координат Декарта. Значение по умолчанию равно 0. В то время как данный
AudioParam
непосредственно изменить нельзя, его значение может быть изменено через его свойствоvalue
(en-US). Значение по умолчанию равно 0. PannerNode.positionY
(en-US)- Представляет вертикальное положение источника звука в правосторонней системе координат Декарта. Значение по умолчанию равно 0. В то время как данный
AudioParam
непосредственно изменить нельзя, его значение может быть изменено через его свойствоvalue
(en-US). Значение по умолчанию равно 0. PannerNode.positionZ
(en-US)- Представляет позицию источника звука вдоль оси Z (вперёд и назад) в правосторонней системе координат Декарта. Значение по умолчанию равно 0. В то время как данный
AudioParam
непосредственно изменить нельзя, его значение может быть изменено через его свойствоvalue
(en-US). Значение по умолчанию равно 0. PannerNode.refDistance
(en-US)- Значение типа
double
, представляющее справочное (опорное) расстояние для уменьшения громкости при удалении источника звука от слушателя. PannerNode.rolloffFactor
(en-US)- Значение типа
double
, представляющее как быстро уменьшается громкость при удалении источника звука от слушателя. Данное значение используется во всех моделях изменения громкости от расстояния.
Методы
Наследует методы от своего родителя,
AudioNode
.PannerNode.setPosition()
(en-US)- Определяет положение источника звука относительно слушателя (представлен объектом
AudioListener
(en-US), хранящимся в атрибутеAudioContext.listener
(en-US) ).
PannerNode.setOrientation()
(en-US)- Определяет направление воспроизведения источника звука.
PannerNode.setVelocity()
(en-US)- Это устаревший элемент API и его работа в дальнейшем не гарантируется.
Определяет вектор распространения звука от источника - как быстро он движется и в каком направлении. В предыдущей версии спецификации,PannerNode
имел скорость распространения, которую можно было выдать выше или ниже подключённого потокаAudioBufferSourceNode
(en-US). Эта функция не была чётко оговорена и имела ряд проблем, поэтому была удалена из спецификации.
Примеры
{{page("/ru/docs/Web/API/AudioContext.createPanner","Example")}}
Specifications
Specification | Status | Comment |
---|---|---|
Web Audio API Определение 'PannerNode' в этой спецификации. |
Рабочий черновик |
Browser compatibility
We're converting our compatibility data into a machine-readable JSON format.
This compatibility table still uses the old format,
because we haven't yet converted the data it contains.
Find out how you can help! (en-US)
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
Basic support | 10.0webkit (en-US) | (Да) | 25 (25) | Нет | 15.0webkit (en-US) 22 (unprefixed) |
6.0webkit (en-US) |
orientationX , orientationY , and orientationZ |
(Да) | ? | 50 (50) | Нет | ? | ? |
positionX , positionY , and positionZ |
(Да) | ? | 50 (50) | Нет | ? | ? |
Constructor | (Да) | ? | Нет | Нет | ? | Нет |
Feature | Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile | Chrome for Android |
---|---|---|---|---|---|---|---|
Basic support | ? | (Да) | 26.0 (26) | Нет | ? | ? | 33.0 |
orientationX , orientationY , and orientationZ |
? | ? | 50.0 (50) | Нет | ? | ? | ? |
positionX , positionY , and positionZ |
? | ? | 50.0 (50) | Нет | ? | ? | ? |
Constructor | Нет | ? | Нет | Нет | ? | Нет | (Да) |