Класс: Phaser.SoundManager
Конструктор
new SoundManager(game)
Диспетчер звука отвечает за воспроизведение аудио с помощью устаревшего тега HTML Audio или Web Audio, если браузер его поддерживает.
Примечание: В Firefox 25+ на Linux, если у вас отключен media.gstreamer в about:config, то он не может воспроизводить файлы mp3 или m4a.
Тип аудиофайла и кодировка этих файлов чрезвычайно важны. Не все браузеры могут воспроизводить все аудиоформаты.
Хорошее руководство о том, что поддерживается, находится здесь: http://hpr.dogphilosophy.net/test/
Если вы перезагружаете игру Phaser на странице, которая никогда не обновляется должным образом (например, в проекте AngularJS), то у вас быстро закончатся
узлы AudioContext. Если это так, создайте глобальную переменную под названием PhaserGlobal в объекте window перед созданием игры. Активный
AudioContext будет сохранен в window.PhaserGlobal.audioContext при уничтожении игры Phaser и будет повторно использован при ее запуске.
Предупреждение для мобильных устройств: Некоторые мобильные устройства (определенные версии iPad 2 и iPad Mini) не могут воспроизводить аудио 48000 Гц.
Когда они пытаются воспроизвести аудио, оно становится очень искаженным и шипит, в конечном итоге выводя из строя звуковую систему.
Решение состоит в использовании более низкой частоты кодирования, такой как 44100 Гц. Иногда аудиоконтекст будет
создан с sampleRate 48000. Если это произойдет и аудио будет искажено, вам следует пересоздать контекст.
Параметры
| Имя | Тип | Описание |
|---|---|---|
game | Phaser.Game | Ссылка на текущий экземпляр игры. |
- Исходный код: sound/SoundManager.js (Строка 26)
Открытые свойства
- Значение по умолчанию
- 32
- Исходный код: sound/SoundManager.js (Строка 96)
- Значение по умолчанию
- true
- Исходный код: sound/SoundManager.js (Строка 84)
- Исходный код: sound/SoundManager.js (Строка 60)
- Исходный код: sound/SoundManager.js (Строка 31)
- Исходный код: sound/SoundManager.js (Строка 765)
- Значение по умолчанию
- true
- Исходный код: sound/SoundManager.js (Строка 105)
- Исходный код: sound/SoundManager.js (Строка 78)
- Исходный код: sound/SoundManager.js (Строка 48)
- Исходный код: sound/SoundManager.js (Строка 36)
- Исходный код: sound/SoundManager.js (Строка 54)
- Исходный код: sound/SoundManager.js (Строка 42)
- Исходный код: sound/SoundManager.js (Строка 90)
- Исходный код: sound/SoundManager.js (Строка 72)
- Исходный код: sound/SoundManager.js (Строка 66)
- Исходный код: sound/SoundManager.js (Строка 805)
channels : number
Количество аудиоканалов для использования при воспроизведении.
connectToMaster : boolean
Используется в сочетании с Sound.externalNode, это позволяет вам остановить подключение узла Sound к главному узлу усиления SoundManager.
context :AudioContext
AudioContext, используемый для воспроизведения.
game : Phaser.Game
Локальная ссылка на игру.
mute : boolean
Получает или устанавливает состояние отключения звука SoundManager. Это влияет на все звуки в игре.
muteOnPause : boolean
Установите значение true, чтобы отключить звук при приостановке игры Phaser (например, при потере фокуса),
или установите значение false, чтобы звук продолжал воспроизводиться, независимо от состояния приостановки игры. Возможно, вам потребуется
сделать это, если вы хотите управлять отключением звука с помощью внешних кнопок DOM или подобных элементов.
noAudio : boolean
Истина, если аудио отключено через PhaserGlobal (полезно, если вам нужно использовать стороннюю библиотеку аудио) или устройство не поддерживает аудио.
onMute : Phaser.Signal
Этот сигнал отправляется, когда SoundManager глобально отключен, либо напрямую через код игры, либо в результате приостановки игры.
onSoundDecode : Phaser.Signal
Событие, отправляемое при декодировании звука (обычно только для файлов mp3)
onUnMute : Phaser.Signal
Этот сигнал отправляется, когда SoundManager глобально включен, либо напрямую через код игры, либо в результате возобновления игры после приостановки.
onVolumeChange : Phaser.Signal
Этот сигнал отправляется всякий раз, когда изменяется глобальный уровень громкости. Новая громкость передается в качестве единственного параметра вашему обра́тному вызову.
touchLocked : boolean
true, если аудиосистема в данный момент заблокирована в ожидании события касания.
[readonly] usingAudioTag : boolean
True, если SoundManager и устройство используют тег Audio вместо Web Audio.
[readonly] usingWebAudio : boolean
True, если SoundManager и устройство используют Web Audio.
volume : number
Получает или устанавливает глобальную громкость SoundManager, значение от 0 до 1. Указанное значение ограничивается диапазоном от 0 до 1.
Открытые методы
- Исходный код: sound/SoundManager.js (Строка 540)
- Исходный код: sound/SoundManager.js (Строка 564)
- Внутренний:
- Этот член является внутренним (защищенным) и может быть изменен или удален в будущем.
- Исходный код: sound/SoundManager.js (Строка 169)
- Исходный код: sound/SoundManager.js (Строка 406)
- Исходный код: sound/SoundManager.js (Строка 722)
- Исходный код: sound/SoundManager.js (Строка 362)
- Исходный код: sound/SoundManager.js (Строка 631)
- Исходный код: sound/SoundManager.js (Строка 579)
- Исходный код: sound/SoundManager.js (Строка 604)
- Исходный код: sound/SoundManager.js (Строка 384)
add(key, volume, loop, connect) → {Phaser.Sound}
Добавляет новый звук в SoundManager.
Параметры
| Имя | Тип | Аргумент | По умолчанию | Описание |
|---|---|---|---|---|
key | string | Ключ ресурса для звука. | ||
volume | number | <optional> | 1 | Значение громкости по умолчанию. |
loop | boolean | <optional> | false | Циклический воспроизведение звука. |
connect | boolean | <optional> | true | Управление подключением созданного объекта звука к главному узлу усиления SoundManager при выполнении под WebAudio. |
Возвращает
Новый экземпляр звука.
addSprite(key) → {Phaser.AudioSprite}
Добавляет новый AudioSprite в SoundManager.
Параметры
| Имя | Тип | Описание |
|---|---|---|
key | string | Ключ ресурса для звука. |
Возвращает
Новый экземпляр AudioSprite.
<internal> boot()
Инициализирует менеджер звука.
decode(key, sound)
Декодирует звук по его ключу ресурса.
Параметры
| Имя | Тип | Аргумент | Описание |
|---|---|---|---|
key | string | Ключ ресурса декодируемого звука. | |
sound | Phaser.Sound | <optional> | Его буфер будет установлен на декодированные данные. |
destroy()
Останавливает все звуки в игре, затем уничтожает их и, наконец, очищает любые обратные вызовы.
pauseAll()
Приостанавливает все звуки в игре.
play(key, volume, loop) → {Phaser.Sound}
Добавляет новый звук в SoundManager и начинает его воспроизведение.
Параметры
| Имя | Тип | Аргумент | По умолчанию | Описание |
|---|---|---|---|---|
key | string | Ключ ресурса для звука. | ||
volume | number | <optional> | 1 | Значение громкости по умолчанию. |
loop | boolean | <optional> | false | Циклическое воспроизведение звука. |
Возвращает
Новый экземпляр звука.
remove(sound) → {boolean}
Удаляет звук из SoundManager. Удаляемый звук уничтожается перед удалением.
Параметры
| Имя | Тип | Описание |
|---|---|---|
sound | Phaser.Sound | Объект звука для удаления. |
Возвращает
True, если звук был успешно удален, иначе false.
removeByKey(key) → {number}
Удаляет все звуки из SoundManager, у которых ключ ресурса соответствует заданному значению.
Удаленные звуки уничтожаются перед удалением.
Параметры
| Имя | Тип | Описание |
|---|---|---|
key | string | Ключ для соответствия при удалении объектов звука. |
Возвращает
Количество соответствующих объектов звука, которые были удалены.
resumeAll()
Возобновляет все звуки в игре.
setDecodedCallback(files, callback, callbackContext)
Этот метод позволяет вам предоставить SoundManager список файлов звуков или ключей и обратный вызов.
После завершения декодирования всех файлов звука вызывается обратный вызов.
Время декодирования зависит от используемого кодека и размера файла.
Если все предоставленные файлы уже декодированы, обратный вызов срабатывает немедленно.
Параметры
- Исходный код: sound/SoundManager.js (Строка 443)
- Исходный код: sound/SoundManager.js (Строка 270)
- Исходный код: sound/SoundManager.js (Строка 340)
- Исходный код: sound/SoundManager.js (Строка 296)
- Внутреннее:
- Этот член является внутренним (защищенным) и может быть изменен или удален в будущем.
- Исходный код: sound/SoundManager.js (Строка 493)
| Имя | Тип | Описание |
|---|---|---|
files | строка | массив | Массив, содержащий либо объекты Phaser.Sound, либо их строковые ключи, как указано в Phaser.Cache. |
callback | функция | Обратный вызов, который будет вызван после завершения декодирования всех файлов. |
callbackContext | Объект | Контекст, в котором будет выполнен обратный вызов. |
setTouchLock()
Устанавливает обратный вызов Input Manager для сенсорного ввода в SoundManager.unlock.
Необходим для разблокировки аудиоустройств в iOS. В основном используется внутри модуля.
stopAll()
Останавливает все звуки в игре.
unlock() → {boolean}
Включает звук, обычно после первого касания.
Возвращаемое значение
True, если обратный вызов должен быть удален, иначе false.
<internal> update()
Обновляет каждый звук в игре, проверяет разблокировку звука на мобильных устройствах и отслеживает список декодирования.
© 2016 Richard Davey, Photon Storm Ltd.
Licensed under the MIT License.
http://phaser.io/docs/2.6.2/Phaser.SoundManager.html