Создаёт непозиционный (глобальный) аудиообъект.
Для этого используется Web Audio API.
// create an AudioListener and add it to the camera
const listener = new v3d.AudioListener();
camera.add(listener);
// create a global audio source
const sound = new v3d.Audio(listener);
// load a sound and set it as the Audio object's buffer
const audioLoader = new v3d.AudioLoader();
audioLoader.load('sounds/ambient.ogg', function(buffer) {
sound.setBuffer(buffer);
sound.setLoop(true);
sound.setVolume(0.5);
sound.play();
});
listener — (необходимый) экземпляр AudioListener.
Должно ли воспроизведение начинаться автоматически. По умолчанию false.
AudioContext слушателя listener, заданного в конструкторе.
Изменение высоты тона, измеряется в центах. +/- 100 - это полутон. +/- 1200 - октава. По умолчанию 0.
Представляет собой массив BiquadFilterNodes. Может использоваться для применения различных фильтров низкого порядка для создания более сложных звуковых эффектов. Фильтры устанавливаются через Audio.setFilter или Audio.setFilters.
Узел GainNode, созданный с помощью AudioContext.createGain().
Можно ли управлять воспроизведением с помощью методов play(), pause() и т.д.. По умолчанию true.
Воспроизводится ли аудио в данный момент.
Ссылка на listener object данного аудио.
Скорость воспроизведения. По умолчанию 1.
Смещение до времени в аудиобуфере, когда должно начаться воспроизведение. Аналогично параметру offset в AudioBufferSourceNode.start(). По умолчанию 0.
Переопределяет длительность аудио. Аналогично параметру duration в AudioBufferSourceNode.start(). По умолчанию undefined для воспроизведения всего буфера.
Нода AudioBufferSourceNode созданная с помощью AudioContext.createBufferSource().
Тип источника звука. По умолчанию это строка 'empty'.
Строка, обозначающая тип, установленная на 'Audio'.
Подключение к Audio.source. Это используется внутри при инициализации и при установке/удалении фильтров.
Отключить от Audio.source. Используется внутренне при установке/удалении фильтров.
Возвращает первый элемент массива filters.
Возвращает массив filters.
Возвращает значение параметра source.loop (должно ли воспроизведение зацикливаться).
Возвращает gainNode.
Возвращает значение параметра playbackRate.
Возвращает текущую громкость.
Если hasPlaybackControl равно true, начинается воспроизведение.
Если hasPlaybackControl равно true, приостанавливает воспроизведение.
Вызывается автоматически по окончании воспроизведения.
Устанавливает audioBuffer в source , и 'buffer' в sourceType.
Если autoplay, также запускается воспроизведение.
Применяет один BiquadFilterNode к аудио.
value - массивы фильтров.
Применяет массив BiquadFilterNodes к аудио.
Устанавилвает source.loop в value (должно ли воспроизведение зацикливаться).
Устанавилвает source.loopStart в value.
Устанавилвает source.loopEnd в value.
Применяет данный объект типа HTMLMediaElement в качестве источника этого аудио.
Также устанавливает hasPlaybackControl в false.
Применяет данный объект типа MediaStream в качестве источника данного аудио.
Также устанавливает hasPlaybackControl в false.
Устанавливает source в audioBuffer и устанавливает sourceType в 'audioNode'.
Также устанавливает hasPlaybackControl в false.
Если hasPlaybackControl включен, установите playbackRate в value.
Установите громкость.
Если hasPlaybackControl включен, останавливает воспроизведение.
О том как получить исходный код этого модуля читайте тут.