Аудио¶
Объект АУДИО позволяет добавлять и проигрывать в проект аудио ресурсы, управлять воспроизведением, а также изменять громкость и выбирать аудиофайл.
Работа с объектом Аудио¶
Свойства объекта Аудио¶
Параметр |
Описание |
Примечание |
|---|---|---|
Позволяет выбрать файл с аудио необходимого формата. |
При создании объекта Аудио ресурс аудио не определен. Для того чтобы добавить ресурс аудио, необходимо выбрать в списке что-то из заранее добавленных ресурсов аудио или выбрать “Создать новый”, если необходимо использовать звуки, которые еще не были добавлены в ресурсы проекта. |
|
Позволяет установить громкость аудио ресурса. |
Максимальные значения для параметра: 1.000 - соответствует громкости звука, установленной на 100% |
|
Распределение звуковой волны в пространственном диапазоне звукового поля или, иначе говоря, распределение звука по стереоканалам (влево, вправо, центр). |
По умолчанию значение данного параметра установлено как 0.000, то есть звук одинаково распределяется между стереоканалами. Если вам необходимо “сместить” звук влево или вправо, можно изменить значение данного параметра. Минимальное и максимальное значения для параметра: -1.000 – звук полностью смещен влево 1.000 – звук полностью смещен вправо |
|
Позволяет выбрать режим проигрывания аудио ресурса. |
Возможные значения параметра при выборе режима проигрывания: один раз или повтор. |
|
При выборе данного параметра декодирование и отправка в оперативную память аудио файла для воспроизведения производится пакетами. |
Примечание
Декодирование – процесс восстановления исходной формы представления информации.
Аудиофайл, который добавлен в проект, изначально закодирован и состоит из пакетов данных. Прежде чем он будет воспроизведен, он будет декодирован и полностью загружен в оперативную память. Но декодированный файл весит в разы больше, чем закодированный – это значит, что аудиофайл размером 1Мб после декодирования займет в оперативной памяти гораздо больше места, чем 1 Мб. Этот момент может быть критичен, когда в проекте используются аудио большого размера, например, аудио формата .flac.
Однако, можно сделать так, чтобы декодирование и отправка в оперативную память для воспроизведения файла происходила пакетами, для это и необходима функция Декодирование на ходу. Благодаря этой функции есть возможность уменьшить использование оперативной памяти, не занимая ее большими аудиофайлами сразу.
В то же время важно помнить, что, освобождая таким образом оперативную память, вы в то же время загружаете центральный процессор для обработки такого процесса, поэтому необходимо правильно расставить приоритеты: важно ли вам освободить оперативную память или вы, наоборот, не хотите нагружать центральный процессор.
- параметр Ресурс аудио; audioResource¶
Параметр позволяет выбрать ресурс аудио для данного объекта.
Примечание
Можно присвоить как ресурс, так и id ресурса. Подробнее см. Ресурсы.
- параметр Громкость; volume¶
Позволяет установить громкость аудио ресурса. Максимальной громкости соответствует значение 1, беззвучному воспроизведению - значение 0. По умолчанию значение равно 1. Подробнее, см. действие Установить громкость (setVolume)
- параметр Панорамирование; pan¶
Параметр устанавливает распределение звука между стерео-каналами.
-1.000 - звук полностью смещен влево, 1.000 - звук полностью смещен вправо. По умолчанию равен 0.000.
- параметр Режим воспроизведения; playMode¶
Параметр имеет два значения: «один раз» и «повтор». По умолчанию выставлено значение «один раз». Подробнее, см. действие Установить режим проигрывания (setPlayMode)
- параметр Декодирование на ходу; liveDecoding¶
Параметр позволяет установить декодирование «на ходу». При выборе данного параметра декодирование и отправка в оперативную память аудио файла для воспроизведения производится пакетами, что позволяет значительно уменьшить ее расход.
Действия объекта Аудио¶
Действие |
Описание |
|---|---|
Позволяет установить новый аудио ресурс для проигрывания. |
|
Позволяет установить громкость воспроизведения, отличную от той, которая установлена в свойствах объектах Аудио. |
|
Позволяет изменить распределение звуковой волны в пространственном диапазоне звукового поля или, иначе говоря, распределение звука по стереоканалам (влево, вправо, центр). |
|
Позволяет установить новый режим проигрывания аудио ресурса: один раз или повтор. |
- действие Установить аудио ресурс; setAudioResource(resource)¶
Установить новый ресурс аудио (параметр Ресурс аудио (audioResource)).
- Параметры:
Ресурс аудио / audioResource – Новый ресурс аудио, который будет выставлен объекту.
Данный вызов равносилен присваиванию параметра Ресурс аудио (audioResource)
- действие Установить громкость; setVolume(volume)¶
Установить новую громкость проигрывания аудио ресурса, отличную от той, которая установлена в свойствах объектах Аудио (параметр Громкость (volume)).
- Параметры:
громкость / volume – Новый уровень громкости.
- действие Установить панорамирование; setPan(pan)¶
Установить значение панорамирования. Подробнее см. Панорамирование (pan)
- действие Установить режим проигрывания; setPlayMode(mode)¶
Установить новый режим проигрывания аудио ресурса: один раз или повтор (параметр Режим воспроизведения (playMode)).
События и действия объекта Аудио (управление воспроизведением)¶
Вводится в AudioReactor
Событие |
Описание |
|---|---|
Вызывается при запуске проигрывания аудио ресурса с самого начала. Например, вам необходимо вместе с аудио запустить анимацию у модели – это событие поможет создать такую логику работы. |
|
Вызывается при остановке проигрывания аудио ресурса пользователем. Например, если в выбранный момент вам необходимо сделать так, чтобы при остановке аудио пользователем поменялось какое-либо изображение – это событие поможет создать такую логику работы. |
|
Вызывается при постановке аудио на паузу. Например, если вам необходимо, чтобы при постановке аудио на паузу у модели останавливалась анимация – это событие поможет создать такую логику работы. |
|
Вызывается при снятии аудио с паузы. Например, вам необходимо, чтобы при снятии аудио с паузы у модели возобновлялась анимация – это событие поможет создать такую логику работы. |
|
Вызывается по окончании воспроизведения аудио. Например, если вам необходимо сделать в проекте так, чтобы по завершении проигрывания композиции появлялась надпись “конец”, то это событие поможет создать такую логику работы. |
Действие |
Описание |
|---|---|
Позволяет начать воспроизведение установленного аудио ресурса. Воспроизведение аудио всегда начинается с начала |
|
Позволяет остановить воспроизведение и перемотать установленный аудио ресурс в начало. |
|
Позволяет приостановить воспроизведение установленного аудио ресурса (поставить воспроизведение на паузу). |
|
Позволяет возобновить воспроизведение установленного аудио ресурса с того места, где он был приостановлен (снять паузу). |
- событие Запущен; onStart¶
Вызывается при запуске проигрывания аудио ресурса с самого начала. При вызове действия Возобновить (resume) данное событие не вызывается. Подробнее, см. действие Проиграть (play).
- событие Остановлен; onStop¶
Вызывается при остановке проигрывания аудио ресурса пользователем. Данное событие возбуждается только при вызове действия Остановить (stop) во время проигрывания аудио.
- событие Приостановлен; onPause¶
Вызывается при постановке аудио на паузу. Данное событие возбуждается только при вызове действия Приостановить (pause) во время проигрывания аудио.
- событие Возобновлён; onResume¶
Вызывается при снятии аудио с паузы. Данное событие возбуждается только при вызове действия Возобновить (resume) для приостановленного аудио.
- событие Завершён; onFinished¶
Вызывается по окончании воспроизведения аудио ресурса. При вызове действия Остановить (stop) данное событие не возникает.
- действие Проиграть; play(playMode = AudioReactor.PlayMode.ONCE)¶
Начать воспроизведение аудио ресурса с начала, независимо от текущего состояния аудио. При вызове приходит событие Запущен (onStart).
Если Режим проигрывания / playMode выставлен как Один раз / AudioReactor.PlayMode.ONCE, то после окончания проигрывания будет вызвано событие Завершён (onFinished). Если режим проигрывания выставлен как Повтор / AudioReactor.PlayMode.LOOP, то проигрывание никогда не закончится само, и, соответственно, событие вызвано не будет. Однако режим проигрывания может быть изменён явно при помощи действия Установить режим проигрывания (setPlayMode).
- Параметры:
Режим / playMode – Режим проигрывания: AudioReactor.PlayMode.ONCE - проиграть один раз, AudioReactor.PlayMode.LOOP - проигрывать в цикле.
Если в Студии выставлено значение Не менять, будет установлен режим, указанный в параметрах объекта.
Примечание
Вызов с playMode равным nil(если параметр не указан или nil указан явно) начнет воспроизведение с режимом проигрывания AudioReactor.PlayMode.ONCE или установленным до вызова вручную.
- действие Остановить; stop()¶
Остановить воспроизведение и перемотать аудио в начало. Если аудио не было запущено и находится в начальном состоянии, действие не сработает. При успешном вызове приходит событие Остановлен (onStop).
- действие Приостановить ; pause()¶
Поставить воспроизведение аудио на паузу. Если аудио не было запущено и находится в начальном состоянии, действие не сработает. При успешном вызове приходит событие Приостановлен (onPause).
Примечание
Даже если аудио уже стоит на паузе, повторный вызов действия Приостановить (pause) приведет к вызову события Приостановлен (onPause).
- действие Возобновить ; resume()¶
Продолжить воспроизведение аудио ресурса с момента паузы. Если аудио не было запущено и находится в начальном состоянии, действие не сработает. При успешном вызове приходит событие Возобновлён (onResume).
Примечание
Даже если аудио проигрывается в данный момент, вызов действия Возобновлён (onResume) приведет к вызову события Возобновлён (onResume).
Advanced¶
Вспомогательные методы |
Описание |
|---|---|
|
Возвращает local audio = reactorController:getReactorByName("Audio")
if audio:isPlaying() then
doSomething()
end
|