Importing audio samples (импорт звуковых образцов)
Поддерживаемые форматы аудио
Godot предоставляет 3 основных варианта импорта ваших аудиоданных: WAV, Ogg Vorbis и MP3.
Каждый формат имеет свои преимущества:
WAV files use raw data or light compression (IMA-ADPCM or QOA). Currently they can only be imported in raw format, but Godot allows compression after import. They are lightweight to play back on the CPU (hundreds of simultaneous voices in this format are fine). The downside is that they take up a lot of disk space.
Файлы Ogg Vorbis используют более сильное сжатие, что приводит к гораздо меньшему размеру файла, но требует значительно большей вычислительной мощности для воспроизведения.
Файлы MP3 используют лучшее сжатие, чем WAV с IMA-ADPCM или QOA, но худшее, чем Ogg Vorbis. Это означает, что файл MP3 с качеством, примерно равным Ogg Vorbis, будет значительно больше. С другой стороны, воспроизведение MP3 требует меньшей загрузки процессора по сравнению с Ogg Vorbis.
Примечание
Если вы скомпилировали редактор Godot из исходного кода с отключенными определенными модулями, некоторые форматы могут быть недоступны.
Ниже представлена сравнительная таблица, показывающая размер файла продолжительностью 1 секунду аудио в каждом формате:
Формат |
1 секунда звука |
|---|---|
WAV 24-bit, 96 kHz, стерео |
576 KB |
WAV 16-bit, 44 kHz, моно |
88 KB |
WAV IMA-ADPCM, 44 kHz, моно |
22 KB |
WAV QOA, 44 kHz, моно |
17 KB |
MP3 192 Kb/s, стерео |
24 килобайта |
Ogg Vorbis 128 Kb/s, стерео |
16 KB |
Ogg Vorbis 96 Kb/s, стерео |
12 KB |
Обратите внимание, что значения для MP3 и Ogg Vorbis могут различаться в зависимости от типа кодирования. В приведённых выше данных для простоты используется кодирование CBR, но большинство файлов Ogg Vorbis и MP3, доступных в интернете, закодированы с помощью VBR, что более эффективно. При кодировании с VBR эффективный размер аудиофайла зависит от сложности исходного аудио.
Совет
Рассмотрите возможность использования WAV для коротких и повторяющихся звуковых эффектов, а Ogg Vorbis — для музыки, речи и продолжительных звуковых эффектов. Формат MP3 полезен для мобильных и веб-проектов с ограниченными ресурсами процессора, особенно при одновременном воспроизведении нескольких сжатых звуков (например, продолжительных фоновых звуков).
Importing audio samples (импорт звуковых образцов)
После выбора WAV-файла во вкладке Файловая система, во вкладке Импорт доступно несколько опций:
Параметры импорта во вкладке «Импорт» после выбора WAV-файла во вкладке «Файловая система»
Набор опций, доступных после выбора файла Ogg Vorbis или MP3, отличается:
Параметры импорта находятся во вкладке «Импорт» после выбора MP3-файла во вкладке «Файловая система». Для файлов Ogg Vorbis параметры идентичны.
После импорта звука его можно воспроизвести с помощью узлов AudioStreamPlayer, AudioStreamPlayer2D или AudioStreamPlayer3D. Подробнее см. в разделе Аудиопотоки.
Параметры импорта (WAV)
Force > 8 Bit (Сила > 8 бит)
Если эта опция включена, импортируемый аудиофайл принудительно использует 8-битное квантование, если исходный файл имеет разрядность 16 бит или выше.
Обычно не рекомендуется включать этот формат, так как 8-битное квантование значительно снижает качество звука. Если вам нужны файлы меньшего размера, рассмотрите возможность использования аудиоформатов Ogg Vorbis или MP3.
Force > Mono (Сила > Моно)
Если эта опция включена, импортируемый звук принудительно преобразуется в моно, если исходный файл — стерео. Это уменьшает размер файла на 50% за счёт объединения двух каналов в один.
Force > Max Rate (Сила > Максимальная скорость)
Если установлено значение больше «0», частота дискретизации звука принудительно снижается до значения, меньшего или равного указанному здесь значению.
Это может заметно уменьшить размер файла для определенных звуков, не влияя на качество, в зависимости от фактического содержания звука. Изучайте Лучшие практики для получения дополнительной информации.
Edit > Trim (Редактировать > Обрезать)
Исходный аудиофайл может содержать длительные паузы в начале и/или в конце. Эти паузы вставляются цифровыми звуковыми рабочими станциями DAWs при сохранении в формате аудиосигнала, что приводит к неоправданному увеличению размера файла и задержке при воспроизведении.
Включение параметра Trim автоматически обрезает начало и конец аудиосигнала, если его уровень ниже -50 дБ после нормализации (см. Edit > Normalize ниже). Во время обрезки также используется период нарастания/затухания в 500 сэмплов, чтобы избежать слышимых щелчков.
Edit > Normalize (Редактировать > Нормализовать)
Если эта функция включена, громкость звука будет нормализована так, чтобы её пиковая громкость была равна 0 дБ. Если функция включена, звук станет громче в зависимости от его исходной пиковой громкости.
Edit > Loop Mode (Редактировать > Режим цикла)
В отличие от Ogg Vorbis и MP3, файлы WAV могут содержать метаданные, указывающие на цикличность воспроизведения (помимо точек цикла). По умолчанию Godot будет следовать этим метаданным, но вы можете выбрать определённый режим цикла:
Disabled: Не зацикливать аудио, даже если метаданные указывают на то, что файл следует воспроизводить циклически.
Forward: Стандартное зацикливание звука.
Ping-Pong: Воспроизведение аудио вперёд до конца, затем воспроизведение назад и повтор. Это похоже на зеркальный повтор текстуры, но для звука.
Backward: Воспроизведение аудио "задом наперёд" (в обратном направлении) с возвратом к концу после завершения воспроизведения.
При выборе одного из режимов цикла Forward, Ping-Pong или Backward можно также определить точки цикла, чтобы создать только определённую часть звукового цикла. Loop Begin задаётся в сэмплах после начала аудиофайла. Loop End также задаётся в сэмплах после начала аудиофайла, но будет использовать конец аудиофайла, если задано значение -1.
Предупреждение
В AudioStreamPlayer, сигнал finished не будет выдаваться для цикличного воспроизведения звука при достижении конца аудиофайла, поскольку воспроизведение звука будет продолжаться бесконечно.
Сжатие > Режим
Для файлов WAV можно выбрать один из трёх режимов сжатия: Disabled (по умолчанию), RAM (Ima-ADPCM) или QOA (Quite OK Audio). RAM (Ima-ADPCM) немного уменьшает размер файла и потребление памяти, но при этом заметно ухудшается качество. QOA (Quite OK Audio) уменьшает размер файла немного сильнее, чем RAM (Ima-ADPCM), а ухудшение качества гораздо менее заметно, но при этом увеличивается загрузка процессора (всё равно значительно ниже, чем у MP3).
Форматы Ogg Vorbis и MP3 не так сильно снижают качество и могут обеспечить более значительное уменьшение размера файла, но при этом увеличивают нагрузку на процессор во время воспроизведения. Эта повышенная нагрузка на процессор обычно не является проблемой (особенно для MP3), если только вы не воспроизводите десятки сжатых аудиофайлов одновременно на мобильных устройствах или веб-платформах.
Параметры импорта (Ogg Vorbis и MP3)
Цикл
Если эта опция включена, воспроизведение звука начнется с начала после завершения воспроизведения по достижении конца аудио.
Предупреждение
В AudioStreamPlayer, сигнал finished не будет выдаваться для цикличного воспроизведения звука при достижении конца аудиофайла, поскольку воспроизведение звука будет продолжаться бесконечно.
Loop Offset (Смещение петли)
Смещение цикла определяет, с какой точки аудио начнётся циклическое воспроизведение после окончания воспроизведения. Это можно использовать для циклического воспроизведения только части аудиофайла, что полезно для некоторых фоновых звуков или музыки. Значение указывается в секундах относительно начала аудио, поэтому при значении 0 зацикливается весь аудиофайл.
Действует только если включен Loop.
Более удобный редактор для Loop Offset представлен в диалоговом окне Расширенные настройки импорта, поскольку он позволяет предварительно просматривать изменения без необходимости повторного импорта аудио.
BPM
Частота ударов в минуту (Beats Per Minute) аудиодорожки. Она должна соответствовать показателю BPM, использованному при создании трека. Это актуально только для музыки, в которой используются интерактивные функции, а не звуковые эффекты.
Более удобный редактор для BPM представлен в диалоговом окне Расширенные настройки импорта, поскольку он позволяет предварительно просматривать изменения без необходимости повторного импорта аудио.
Beat Count (Количество ударов)
Количество тактов звуковой дорожки. Это актуально только для музыки, которая использует интерактивные функции, а не звуковые эффекты.
Более удобный редактор для Beat Count представлен в диалоговом окне Advanced import settings, поскольку он позволяет предварительно просматривать изменения без необходимости повторного импорта аудио.
Bar Beats (Барные биты)
Количество тактов в пределах одного такта аудиодорожки. Это актуально только для музыки, в которой используются интерактивные функции, а не звуковые эффекты.
Более удобный редактор для Bar Beats представлен в диалоговом окне Расширенные настройки импорта, поскольку он позволяет предварительно просматривать изменения без необходимости повторного импорта аудио.
Расширенные настройки импорта (Ogg Vorbis и MP3)
Если дважды щелкнуть файл Ogg Vorbis или MP3 в доке «Файловая система» (или выбрать Advanced… во вкладке «Импорт»), появится диалоговое окно:
Расширенное диалоговое окно при двойном щелчке по файлу Ogg Vorbis или MP3 во вкладке FileSystem
В этом диалоговом окне можно изменить точку зацикливания аудио с предпросмотром в реальном времени, а также BPM, количество тактов и тактовые доли. Эти три параметра в настоящее время не используются, но будут использоваться в будущем для интерактивной поддержки музыки (что позволит плавно переходить между различными музыкальными треками).
Примечание
В отличие от файлов WAV, Ogg Vorbis и MP3 поддерживают только точку начала цикла, но не точку его окончания. Зацикливание также может быть только стандартным прямым, а не пинг-понговым или обратным.
Лучшие практики
Используйте соответствующие настройки качества
Хотя сохранение исходного аудио в идеальном качестве важно при редактировании, сохранение такого же качества в экспортированном проекте необязательно. Для WAV-файлов Godot предлагает несколько вариантов импорта, позволяющих уменьшить размер конечного файла без изменения исходного файла на диске.
Чтобы уменьшить использование памяти и размер файла, выберите подходящую квантизацию, частоту дискретизации и количество каналов для вашего аудио:
Нет никаких слышимых преимуществ от использования 24-битного звука, особенно в играх, где несколько звуков часто воспроизводятся одновременно (что затрудняет восприятие отдельных звуков).
Если вы не замедляете звук во время исполнения, использование частоты дискретизации выше 48 кГц не даёт заметного преимущества. Если вы хотите сохранить исходный файл с более высокой частотой дискретизации для редактирования, используйте параметр импорта Force > Max Rate, чтобы ограничить частоту дискретизации импортируемого звука (доступно только для файлов WAV).
Многие звуковые эффекты, как правило, можно преобразовать в моно, а не в стерео. Если вы хотите сохранить исходный стереофайл для редактирования, используйте функцию импорта Force > Mono, чтобы преобразовать импортированный звук в моно (доступно только для файлов WAV).
Голоса, как правило, можно преобразовать в моно, но также можно снизить частоту дискретизации до 22 кГц без заметной потери качества (если только голос не очень высокий). Это связано с тем, что частота большинства человеческих голосов никогда не превышает 11 кГц.
Используйте аудиоэффекты в реальном времени для уменьшения размера файла
Godot имеет обширную bus-систему со встроенными эффектами. Это избавляет мастеров SFX от необходимости добавлять реверберацию к звуковым эффектам, значительно уменьшая их размер и обеспечивая правильную обрезку.
Как вы можете видеть выше, при добавлении реверберации размер файла звуковых эффектов становится намного больше.
См. также
Аудиосэмплы можно загружать и сохранять во время выполнения с помощью runtime file loading and saving, в том числе из экспортированного проекта.