---
title: PannerNode
slug: Web/API/PannerNode
translation_of: Web/API/PannerNode
---
{{ APIRef("Web Audio API") }}
Интерфейс PannerNode
представляет положение источника звука и поведение его сигнала в пространстве. Это модуль {{domxref("AudioNode")}} для обработки звука, описывающий его положение (в правосторонней системе координат Декарта), его перемещение (с помощью вектора скорости распространения) и его направленности (при помощи конуса направления).
PannerNode
всегда имеет только один вход и один выход: вход может быть моно или стерео, но выход всегда стерео (2 канала); нельзя получить эффекты панорамирования при отсутствии, как минимум двух аудиоканалов!
Число входов |
1 |
Число выходов |
1 |
Режим подсчета каналов |
"clamped-max" |
Количество каналов |
2 |
Представление канала |
"speakers" |
Конструктор
- {{domxref("PannerNode.PannerNode")}}
-
- Создает новый экземпляр
PannerNode.
Свойства
Наследует свойства от своего родителя, {{domxref("AudioNode")}}.
Значения направления и положения устанавливаются и получаются различными вариантами синтаксиса, поскольку они хранятся в виде значений {{domxref("AudioParam")}}. Получение значения осуществляется через обращение, например так, PannerNode.positionX
. Установка того же свойства делается так, PannerNode.positionX.value
. This is why these values are not marked read only, which is how they appear in the WebIDL.
- {{domxref("PannerNode.coneInnerAngle")}}
- Это значение типа
double
, представляющее угол конуса (в градусах), внутри которого не будет уменьшения громкости.
- {{domxref("PannerNode.coneOuterAngle")}}
- Это значение типа
double
, представляющее угол конуса (в градусах), вне которого громкость звука будет уменьшена на постоянное значение, определяемое атрибутом coneOuterGain.
- {{domxref("PannerNode.coneOuterGain")}}
- Это значение типа
double
, представляющее величину снижения уровня громкости вне конуса, определенного атрибутом coneOuterAngle
. Значение по умолчанию равно 0
, то есть, вне конуса звук не будет слышен.
- {{domxref("PannerNode.distanceModel")}}
- Перечислимое значение, определяющее, какой алгоритм будет использован для уменьшения громкости источника звука при удалении его от слушателя.
- {{domxref("PannerNode.maxDistance")}}
- Значение типа
double
, представляющее максимальное расстояние между источником звука и слушателем, после которого громкость звука далее не уменьшается.
- {{domxref("PannerNode.orientationX")}}
- Представляет горизонтальное положение вектора источника звука в правосторонней системе координат Декарта. В то время как данный {{domxref("AudioParam")}} непосредственно изменить нельзя, его значение может быть изменено через его свойство {{domxref("AudioParam.value", "value")}} . Значение по умолчанию равно 1.
- {{domxref("PannerNode.orientationY")}}
- Представляет вертикальное положение вектора источника звука в правосторонней системе координат Декарта. Значение по умолчанию равно 0. В то время как данный {{domxref("AudioParam")}} непосредственно изменить нельзя, его значение может быть изменено через его свойство {{domxref("AudioParam.value", "value")}}. Значение по умолчанию равно 0.
- {{domxref("PannerNode.orientationZ")}}
- Представляет продольную (вперед - назад) позицию вектора распространения звука от источника в правосторонней системе координат Декарта. Значение по умолчанию равно 0. В то время как данный {{domxref("AudioParam")}} непосредственно изменить нельзя, его значение может быть изменено через его свойство {{domxref("AudioParam.value", "value")}}. Значение по умолчанию равно 0.
- {{domxref("PannerNode.panningModel")}}
- Перечислимое значение, определяющее какой алгоритм пространственной обработки используется для размещения источника звука в трехмерном пространстве.
- {{domxref("PannerNode.positionX")}}
- Представляет горизонтальное положение источника звука в правосторонней системе координат Декарта. Значение по умолчанию равно 0. В то время как данный {{domxref("AudioParam")}} непосредственно изменить нельзя, его значение может быть изменено через его свойство {{domxref("AudioParam.value", "value")}}. Значение по умолчанию равно 0.
- {{domxref("PannerNode.positionY")}}
- Представляет вертикальное положение источника звука в правосторонней системе координат Декарта. Значение по умолчанию равно 0. В то время как данный {{domxref("AudioParam")}} непосредственно изменить нельзя, его значение может быть изменено через его свойство {{domxref("AudioParam.value", "value")}}. Значение по умолчанию равно 0.
- {{domxref("PannerNode.positionZ")}}
- Представляет позицию источника звука вдоль оси Z (вперед и назад) в правосторонней системе координат Декарта. Значение по умолчанию равно 0. В то время как данный {{domxref("AudioParam")}} непосредственно изменить нельзя, его значение может быть изменено через его свойство {{domxref("AudioParam.value", "value")}}. Значение по умолчанию равно 0.
- {{domxref("PannerNode.refDistance")}}
- Значение типа
double
, представляющее справочное (опорное) расстояние для уменьшения громкости при удалении источника звука от слушателя.
- {{domxref("PannerNode.rolloffFactor")}}
- Значение типа
double
, представляющее как быстро уменьшается громкость при удалении источника звука от слушателя. Данное значение используется во всех моделях изменения громкости от расстояния.
Методы
Наследует методы от своего родителя, {{domxref("AudioNode")}}.
- {{domxref("PannerNode.setPosition()")}}
- Определяет положение источника звука относительно слушателя (представлен объектом {{domxref("AudioListener")}}, хранящимся в атрибуте {{domxref("AudioContext.listener")}} ).
- {{domxref("PannerNode.setOrientation()")}}
- Определяет направление воспроизведения источника звука.
- {{domxref("PannerNode.setVelocity()")}} {{obsolete_inline}}
- Это устаревший элемент API и его работа в дальнейшем не гарантируется.
Определяет вектор распространения звука от источника - как быстро он движется и в каком направлении. В предыдущей версии спецификации, {{domxref("PannerNode")}} имел скорость распространения, которую можно было выдать выше или ниже подключенного потока {{domxref("AudioBufferSourceNode")}}. Эта функция не была четко оговорена и имела ряд проблем, поэтому была удалена из спецификации.
Примеры
{{page("/ru/docs/Web/API/AudioContext.createPanner","Example")}}
Specifications
Specification |
Status |
Comment |
{{SpecName('Web Audio API', '#the-pannernode-interface', 'PannerNode')}} |
{{Spec2('Web Audio API')}} |
|
Browser compatibility
{{CompatibilityTable}}
Feature |
Chrome |
Edge |
Firefox (Gecko) |
Internet Explorer |
Opera |
Safari (WebKit) |
Basic support |
{{CompatChrome(10.0)}}{{property_prefix("webkit")}} |
{{CompatVersionUnknown}} |
{{CompatGeckoDesktop(25)}} |
{{CompatNo}} |
15.0{{property_prefix("webkit")}}
22 (unprefixed) |
6.0{{property_prefix("webkit")}} |
orientationX , orientationY , and orientationZ |
{{CompatVersionUnknown}} |
{{CompatUnknown}} |
{{CompatGeckoDesktop(50)}} |
{{CompatNo}} |
{{CompatUnknown}} |
{{CompatUnknown}} |
positionX , positionY , and positionZ |
{{CompatVersionUnknown}} |
{{CompatUnknown}} |
{{CompatGeckoDesktop(50)}} |
{{CompatNo}} |
{{CompatUnknown}} |
{{CompatUnknown}} |
Constructor |
{{CompatVersionUnknown}} |
{{CompatUnknown}} |
{{CompatNo}} |
{{CompatNo}} |
{{CompatUnknown}} |
{{CompatNo}} |
Feature |
Android |
Edge |
Firefox Mobile (Gecko) |
IE Mobile |
Opera Mobile |
Safari Mobile |
Chrome for Android |
Basic support |
{{CompatUnknown}} |
{{CompatVersionUnknown}} |
{{CompatGeckoMobile(26)}} |
{{CompatNo}} |
{{CompatUnknown}} |
{{CompatUnknown}} |
33.0 |
orientationX , orientationY , and orientationZ |
{{CompatUnknown}} |
{{CompatUnknown}} |
{{CompatGeckoMobile(50)}} |
{{CompatNo}} |
{{CompatUnknown}} |
{{CompatUnknown}} |
{{CompatUnknown}} |
positionX , positionY , and positionZ |
{{CompatUnknown}} |
{{CompatUnknown}} |
{{CompatGeckoMobile(50)}} |
{{CompatNo}} |
{{CompatUnknown}} |
{{CompatUnknown}} |
{{CompatUnknown}} |
Constructor |
{{CompatNo}} |
{{CompatUnknown}} |
{{CompatNo}} |
{{CompatNo}} |
{{CompatUnknown}} |
{{CompatNo}} |
{{CompatVersionUnknown}} |
Смотрите также