Статья является попыткой разобраться, можно ли передавать опыт обратной разработки в звуковом дизайне средствами выразительности русского языка.
Как-то раз, читая музыкальные форумы, я наткнулся на тему с обсуждением саунд дизайна в фильме Обливион. Людей интересовал процесс создания звуков дронов. Так как ответов по существу, спустя несколько недель, в той теме так и не появилось, а в официальном видео была одна вода, я решил попробовать найти ответ самостоятельно, применив методы обратной разработки.
В качестве референса была выбрана первая сцена с участием дрона (на 12-й минуте фильма), с которой можно ознакомиться на Ютюбе. После нескольких часов работы я смог получить следующий результат:
Весь цикл разработки можно поделить на следующие этапы:
Первым делом, с помощью ffmpeg я вырезал из фильма 30-секундную референсную сцену и сохранил её в виде аудио файла, который импортировал в основной хост для удобного A/B сравнения в процессе работы. Затем, используя SoX, сделал крупноформатные (2000x2000 пикселей) спектрограммы каждого аудио канала. Несмотря на то, что большую часть работы со спектром я провожу в Adobe Audition, где есть свой спектральный редактор, спектрограммы SoX позволяют быстро получить представление о звуковой картине в целом и о наполнении каждого из 6 каналов 5.1 звука.

Спектрограмма оригинального 5.1 звука сцены в Adobe Audition
Так как выбранный мной эпизод довольно статичен, основные звуки находятся в центральном канале, что подтверждает и спектрограмма. Это значительно облегчает дальнейшую работу. С помощью ffmpeg экспортирую центральный канал и открываю его в аудио редакторе.

Волновой и спектральный режимы отображения звука центрального канала
Как правило, режим просмотра формы волны помогает при анализе простых звуков, а основная информация, которую мы можем с его помощью получить — в какой момент появляются звуки, какова их амплитуда и продолжительность. В случае же с комплексными сценами, в которых присутствуют фоновые шумы и многослойные элементы, можно смело переключаться в спектральный режим.
В двух словах о разнице между волновым и спектральным режимами: в волновом режиме звук представлен в двухмерном пространстве XY, где Х — ось времени, а Y — амплитуда колебания волны в дБ. Спектральный режим позволяет видеть звук в трёхмерном пространстве XYZ, где X — время, Y — диапазон частот в Hz, а Z — интенсивность (громкость) сигнала, которая задаётся цветом, по принципу: чем громче звук — тем ярче цвет.
Разберём первые 6 секунд сцены. Так выглядит её спектр:

После внимательного прослушивания сцены и исследования спектрограммы можно выделить следующие звуковые элементы:

Разбиваем их на логические группы:

Получаем следующий список:
Это наша звуковая карта. Напомню, что карта != территория. В данном случае это моё субъективное видение звукового наполнения сцены. У другого человека карта и группы могут получиться иными. И в этом нет ничего плохого, важно понимать, что от того, насколько правдоподобно и детально мы прорисуем карту, будут зависеть наши дальнейшие действия и конечный результат.
Итак, карта. Лай собаки и барабанная дробь не имеют отношения к дрону, поэтому сразу перейдём к пункту 3.

Спектрограмма звука активации дрона
По спектрограмме видно, что начало этого звука умещается в диапазоне от 5000 до 10000 Гц и потом линейно переходит в диапазон от 6000 до 12000 Гц. Это значит, что мы можем синтезировать статичный звук, со спектром, как в начале звука активации, а потом, с помощью автоматизации, плавно изменить высоту тона, до состояния в конце звука активации. Само звучание этого элемента имеет тональные характеристики и в спектре, среди шума, просматриваются отдельные полоски гармоник. Можно предположить, что изначально это был богатый гармониками сигнал (например, пилообразная волна), который обработали полосно-пропускающим фильтром (с полосой пропускания 5000-10000 Гц). Попробуем повторить этот процесс.
Синтезетор U-HE Zebra известен среди музыкантов и саунд дизайнеров не только своим наводящим тоску внешним видом, но и очень гибкой модульной организацией, а так же большим количеством уникальных эффектов, которые позволяют создавать звуки практически любой сложности. Известный саунд дизайнер Howard Scarr использовал Зебру для создания звуков к «Inception», «The Dark Knight», «The Dark Knight Rises» и многим другим фильмам.

Синтезетор U-HE Zebra. Пресет звука активации дрона
Логика пресета на скриншоте выше проста: к осциллятору OSC1, генерирующему пилообразную волну, применяются эффект Wrap (для обогащения спектра дополнительным гармониками и шумом) и Bandworks (полосный фильтр, который удаляет из спектра всё, кроме диапазона 5000-10000 Гц). Высота тона OSC1 (Tune) изменяется во времени с помощью огибающей MSEG1. В конце цепочки обрезной фильтр (VCF1) срезает частоты выше 10000 Гц, с которыми не справился Bandworks, а так же слегка уплотняет звук резонансом (Res) и сатурацией (Drive). Весь процесс звукообразования можно представить в виде цепочки модулей:
OSC1 -> Wrap -> Bandworks >>> MSEG1 >>> VCF1 -> Res -> Drive >>> Envelope 1
Последний модуль в списке — это т.н. ADSR-огибающая, которая в нашем случае управляет и��менением общей громкости.
В результате этой операции получаем:

Сравнение спектра исходного (A) и синтезированного (B) звуков активации
Скачать MP3 пример с Google Drive
Плеер
Синтез сервомеханизмов — это отдельная тема и я не буду подробно рассматривать её в этой статье, так как в оригинальной сцене для озвучки этих элементов скорее всего применялись записанные сэмплы. Скажу только, что звук работы любого механизма состоит из трёх фаз: включение, работа, выключение. Звук работы представляет из себя зацикленный короткий фрагмент, который повторяется до тех пор, пока не наступает фаза выключения. Повторение зацикленного фрагмента с частотой выше 20 раз в секунду выводит эту (несущую) частоту (колебаний) в слышимую человеком область. То что мы слышим в такой ситуации называется дроном. К дронам, например, относятся звуки работающих вентиляторов, двигателей машин и станков, дрелей, электробритв, жужжание насекомых и т.д… Дроны (как впрочем и любые другие звуки) бывают музыкальными (когда можно определить высоту основного тона, то есть тональность) и атональными (тональность определить сложно или невозможно). В случае с летающим дроном в нашей сцене, мы имеем дело с работающим двигателем в момент разгона, то есть это атональный дрон, несущая частота которого постепенно повышается. На скриншоте с группами этот звук отмечен цифрой 8, а синтезируется он по тому же принципу, что и предыдущий элемент. В спектрограмме выбираем место, где хорошо просматриваются все гармоники, записываем их частоты в этой точке времени и воссоздаём с помощью одного или нескольких осцилляторов синтезатора. После чего автоматизируем изменение высоты тона, имитируя разгон. Поскольку в нашей сцене звук двигателя не играет существенной роли, я не стал воспроизводить его во всех деталях, а быстро накидал пресет для Зебры, чтобы продемонстрировать саму идею:

Пресет звука двигателя

Спектрограмма синтезированного звука двигателя
Скачать MP3 пример с Google Drive
Плеер
Идем дальше. Тембр сирены выделяется из звуковой палитры дрона в первую очередь наличием характера. Он не похож на остальные холодные электронные пищалки и гуделки. Это звук, который однозначно сулит приближающиеся неприятности тому, кто его слышит, он как бы намекает, что что-то, кажется, пошло не так (и это будет катастрофа).

Спектрограмма сирены из фильма
Это богатый гармониками звук, в гармониках просматривается лёгкая вибрация с нефиксированной частотой, что характерно для звуков живой природы. Сирена напоминает крик человека или животного и по тембру похожа на что-то среднее между звуками А, У, Ы, что подтверждает версию о том, что это живой звук. Сначала я подумал, что звукорежиссёры, работавшие над фильмом, наверняка читали Филипа Дика и, возможно, решили использовать в качестве источника этого звука блеяние овцы — своего рода, пасхальное яйцо. Но поискав овец на freesound.org, я пришёл к выводу, что голоса у них слишком высокие и поэтому нужно искать животное покрупнее, но с похожими голосовыми характеристиками. Первый же сэмпл мычащей коровы оказался тем, что я искал.
Применив к этому мычанию эффекты time stretch, distortion и слегка подправив высоту тона, получаем следующее:
Скачать MP3 пример с Google Drive
Плеер
Добавляем низкочастотный сигнал (6) и реверберацию:
Скачать MP3 пример с Google Drive
Плеер
Сравним спектр сирены из фильма и финальную версию нашей коровы:

Все три элемента 5a, 5b и 6 — интервалы, сыгранные одним или тремя похожими инструментами, в тембре которых, прослеживаются признаки, характерные для FM-синтеза. Звук так же напоминает сигналы DTMF. Эти моменты определяются без анализа спектрограмм, просто на слух, как и сами интервалы: для 5a это тритон вверх, для 5b — квинта вниз, для 6 — кварта вверх. Далее, поэкспериментировав с FM осциллятором в Зебре, довольно быстро получаем похожий звук.

Скачать MP3 пример с Google Drive
Плеер
Осциллятор OSC1 генерирует синусоиду, которая задаёт основной тон. OSC2 и FM-осциллятор FMO1 находятся в диссонансе друг с другом и с OSC1 (то есть их частоты не кратны частоте тона OSC1), что в результате даёт этот напряжённый звук, чем-то похожий на сирену или милицейскую крякалку.
Фоновые шумы относятся, наверно, к самой недооцениваемой большинством людей информационной составляющей звуковой картины. Впрочем, то же верно и для фона во всех остальных сферах жизни. В своё время, появление такого жанра как пейзаж, стало революцией в живописи, шаблон обывателя рвался при виде картин, где не было осн��вного действующего персонажа. Сегодня все знают как выглядит Мона Лиза, но далеко не все могут вспомнить, что изображено за её спиной, сидит ли она у открытого окна или, может быть, стоит в чистом поле. И тем не менее, если фон убрать совсем, это сразу бросается в глаза. Та же история и со звуковым фоном. Если его нет, сцена теряет реализм, атмосферу и смысловую нагрузку. Звуковые события происходят в… «нигде». Поэтому, чтобы оживить звук нашей сцены, я подобрал на freesound.org подходящий для неё эмоциональный фон.
Финальная версия со всеми свистелками и гуделками:
Скачать MP3 пример с Google Drive
Плеер
Когда я задумал эту статью, я планировал описать процесс создание всех звуков, которые есть в финальной версии. Но судя по количеству воды, которую я тут развёл, даже до этого абзаца, скорее всего, добрались немногие. Привет! Спасибо, что дочитали до конца.
FM-синтез (Википедия)
DTMF (Википедия)
ADSR-огибающая (Википедия)
Сэмпл коровы
Сэмпл окружающей среды
Сэмплы сервомеханизмов из финальной версии [1], [2]
Howard Scarr
U-HE Zebra
Как-то раз, читая музыкальные форумы, я наткнулся на тему с обсуждением саунд дизайна в фильме Обливион. Людей интересовал процесс создания звуков дронов. Так как ответов по существу, спустя несколько недель, в той теме так и не появилось, а в официальном видео была одна вода, я решил попробовать найти ответ самостоятельно, применив методы обратной разработки.
В качестве референса была выбрана первая сцена с участием дрона (на 12-й минуте фильма), с которой можно ознакомиться на Ютюбе. После нескольких часов работы я смог получить следующий результат:
Подготовка
Весь цикл разработки можно поделить на следующие этапы:
- Поиск любой дополнительной информации по теме
- видео из студий, занимавшихся озвучко�� фильма
- интервью с создателями
- обсуждения на специализированных форумах (вдруг кто-то уже во всём разобрался и мы изобретаем велосипед)
- технические статьи на смежные темы
- Анализ оригинала
- визуальный анализ формы волны, спектрограммы и т.п.
- составление списка всех используемых в сцене звуков
- описание каждого звука в технических терминах (тембр, спектр, тип синтеза, слои, артикуляция)
- составление списка ассоциаций для каждого звука (предметы, эмоции)
- группировка родственных звуков (чтобы избежать повторных действий)
- Выбор подходящих инструментов
- спектральный анализатор
- аудио редактор
- синтезатор
- Синтез
- собственно синтез
- дополнительное звуковое оформление
Анализ оригинала
Первым делом, с помощью ffmpeg я вырезал из фильма 30-секундную референсную сцену и сохранил её в виде аудио файла, который импортировал в основной хост для удобного A/B сравнения в процессе работы. Затем, используя SoX, сделал крупноформатные (2000x2000 пикселей) спектрограммы каждого аудио канала. Несмотря на то, что большую часть работы со спектром я провожу в Adobe Audition, где есть свой спектральный редактор, спектрограммы SoX позволяют быстро получить представление о звуковой картине в целом и о наполнении каждого из 6 каналов 5.1 звука.

Спектрограмма оригинального 5.1 звука сцены в Adobe Audition
Так как выбранный мной эпизод довольно статичен, основные звуки находятся в центральном канале, что подтверждает и спектрограмма. Это значительно облегчает дальнейшую работу. С помощью ffmpeg экспортирую центральный канал и открываю его в аудио редакторе.

Волновой и спектральный режимы отображения звука центрального канала
Как правило, режим просмотра формы волны помогает при анализе простых звуков, а основная информация, которую мы можем с его помощью получить — в какой момент появляются звуки, какова их амплитуда и продолжительность. В случае же с комплексными сценами, в которых присутствуют фоновые шумы и многослойные элементы, можно смело переключаться в спектральный режим.
В двух словах о разнице между волновым и спектральным режимами: в волновом режиме звук представлен в двухмерном пространстве XY, где Х — ось времени, а Y — амплитуда колебания волны в дБ. Спектральный режим позволяет видеть звук в трёхмерном пространстве XYZ, где X — время, Y — диапазон частот в Hz, а Z — интенсивность (громкость) сигнала, которая задаётся цветом, по принципу: чем громче звук — тем ярче цвет.
Разберём первые 6 секунд сцены. Так выглядит её спектр:

После внимательного прослушивания сцены и исследования спектрограммы можно выделить следующие звуковые элементы:

Разбиваем их на логические группы:

Получаем следующий список:
- Лай собаки
- Барабанная дробь
- Высокочастотный звук активации дрона
- Звук работы сервомеханизма
a. Высокочастотный шум (дополнение к 5a)
b. Высокочастотный шум (дополнение к 5b)
c. Звук фиксации сервомеханизма (дополнение к 7) - Сигнал
a. «Вопрос»
b. «Ответ» - Низкочастотный сигнал (дополнение к 7)
- Сирена
- Звук работы двигателя
- Фоновый широкополосный шум (звуки окружающей среды, ветер, песок и т.п.)
Это наша звуковая карта. Напомню, что карта != территория. В данном случае это моё субъективное видение звукового наполнения сцены. У другого человека карта и группы могут получиться иными. И в этом нет ничего плохого, важно понимать, что от того, насколько правдоподобно и детально мы прорисуем карту, будут зависеть наши дальнейшие действия и конечный результат.
Итак, карта. Лай собаки и барабанная дробь не имеют отношения к дрону, поэтому сразу перейдём к пункту 3.

Спектрограмма звука активации дрона
По спектрограмме видно, что начало этого звука умещается в диапазоне от 5000 до 10000 Гц и потом линейно переходит в диапазон от 6000 до 12000 Гц. Это значит, что мы можем синтезировать статичный звук, со спектром, как в начале звука активации, а потом, с помощью автоматизации, плавно изменить высоту тона, до состояния в конце звука активации. Само звучание этого элемента имеет тональные характеристики и в спектре, среди шума, просматриваются отдельные полоски гармоник. Можно предположить, что изначально это был богатый гармониками сигнал (например, пилообразная волна), который обработали полосно-пропускающим фильтром (с полосой пропускания 5000-10000 Гц). Попробуем повторить этот процесс.
Синтез
Синтезетор U-HE Zebra известен среди музыкантов и саунд дизайнеров не только своим наводящим тоску внешним видом, но и очень гибкой модульной организацией, а так же большим количеством уникальных эффектов, которые позволяют создавать звуки практически любой сложности. Известный саунд дизайнер Howard Scarr использовал Зебру для создания звуков к «Inception», «The Dark Knight», «The Dark Knight Rises» и многим другим фильмам.

Синтезетор U-HE Zebra. Пресет звука активации дрона
Логика пресета на скриншоте выше проста: к осциллятору OSC1, генерирующему пилообразную волну, применяются эффект Wrap (для обогащения спектра дополнительным гармониками и шумом) и Bandworks (полосный фильтр, который удаляет из спектра всё, кроме диапазона 5000-10000 Гц). Высота тона OSC1 (Tune) изменяется во времени с помощью огибающей MSEG1. В конце цепочки обрезной фильтр (VCF1) срезает частоты выше 10000 Гц, с которыми не справился Bandworks, а так же слегка уплотняет звук резонансом (Res) и сатурацией (Drive). Весь процесс звукообразования можно представить в виде цепочки модулей:
OSC1 -> Wrap -> Bandworks >>> MSEG1 >>> VCF1 -> Res -> Drive >>> Envelope 1
Последний модуль в списке — это т.н. ADSR-огибающая, которая в нашем случае управляет и��менением общей громкости.
В результате этой операции получаем:

Сравнение спектра исходного (A) и синтезированного (B) звуков активации
Скачать MP3 пример с Google Drive
Плеер
Синтез механизмов
Синтез сервомеханизмов — это отдельная тема и я не буду подробно рассматривать её в этой статье, так как в оригинальной сцене для озвучки этих элементов скорее всего применялись записанные сэмплы. Скажу только, что звук работы любого механизма состоит из трёх фаз: включение, работа, выключение. Звук работы представляет из себя зацикленный короткий фрагмент, который повторяется до тех пор, пока не наступает фаза выключения. Повторение зацикленного фрагмента с частотой выше 20 раз в секунду выводит эту (несущую) частоту (колебаний) в слышимую человеком область. То что мы слышим в такой ситуации называется дроном. К дронам, например, относятся звуки работающих вентиляторов, двигателей машин и станков, дрелей, электробритв, жужжание насекомых и т.д… Дроны (как впрочем и любые другие звуки) бывают музыкальными (когда можно определить высоту основного тона, то есть тональность) и атональными (тональность определить сложно или невозможно). В случае с летающим дроном в нашей сцене, мы имеем дело с работающим двигателем в момент разгона, то есть это атональный дрон, несущая частота которого постепенно повышается. На скриншоте с группами этот звук отмечен цифрой 8, а синтезируется он по тому же принципу, что и предыдущий элемент. В спектрограмме выбираем место, где хорошо просматриваются все гармоники, записываем их частоты в этой точке времени и воссоздаём с помощью одного или нескольких осцилляторов синтезатора. После чего автоматизируем изменение высоты тона, имитируя разгон. Поскольку в нашей сцене звук двигателя не играет существенной роли, я не стал воспроизводить его во всех деталях, а быстро накидал пресет для Зебры, чтобы продемонстрировать саму идею:

Пресет звука двигателя

Спектрограмма синтезированного звука двигателя
Скачать MP3 пример с Google Drive
Плеер
Синтез сирены
Идем дальше. Тембр сирены выделяется из звуковой палитры дрона в первую очередь наличием характера. Он не похож на остальные холодные электронные пищалки и гуделки. Это звук, который однозначно сулит приближающиеся неприятности тому, кто его слышит, он как бы намекает, что что-то, кажется, пошло не так (и это будет катастрофа).

Спектрограмма сирены из фильма
Это богатый гармониками звук, в гармониках просматривается лёгкая вибрация с нефиксированной частотой, что характерно для звуков живой природы. Сирена напоминает крик человека или животного и по тембру похожа на что-то среднее между звуками А, У, Ы, что подтверждает версию о том, что это живой звук. Сначала я подумал, что звукорежиссёры, работавшие над фильмом, наверняка читали Филипа Дика и, возможно, решили использовать в качестве источника этого звука блеяние овцы — своего рода, пасхальное яйцо. Но поискав овец на freesound.org, я пришёл к выводу, что голоса у них слишком высокие и поэтому нужно искать животное покрупнее, но с похожими голосовыми характеристиками. Первый же сэмпл мычащей коровы оказался тем, что я искал.
Применив к этому мычанию эффекты time stretch, distortion и слегка подправив высоту тона, получаем следующее:
Скачать MP3 пример с Google Drive
Плеер
Добавляем низкочастотный сигнал (6) и реверберацию:
Скачать MP3 пример с Google Drive
Плеер
Сравним спектр сирены из фильма и финальную версию нашей коровы:

Синтез сигналов
Все три элемента 5a, 5b и 6 — интервалы, сыгранные одним или тремя похожими инструментами, в тембре которых, прослеживаются признаки, характерные для FM-синтеза. Звук так же напоминает сигналы DTMF. Эти моменты определяются без анализа спектрограмм, просто на слух, как и сами интервалы: для 5a это тритон вверх, для 5b — квинта вниз, для 6 — кварта вверх. Далее, поэкспериментировав с FM осциллятором в Зебре, довольно быстро получаем похожий звук.

Скачать MP3 пример с Google Drive
Плеер
Осциллятор OSC1 генерирует синусоиду, которая задаёт основной тон. OSC2 и FM-осциллятор FMO1 находятся в диссонансе друг с другом и с OSC1 (то есть их частоты не кратны частоте тона OSC1), что в результате даёт этот напряжённый звук, чем-то похожий на сирену или милицейскую крякалку.
Фон
Фоновые шумы относятся, наверно, к самой недооцениваемой большинством людей информационной составляющей звуковой картины. Впрочем, то же верно и для фона во всех остальных сферах жизни. В своё время, появление такого жанра как пейзаж, стало революцией в живописи, шаблон обывателя рвался при виде картин, где не было осн��вного действующего персонажа. Сегодня все знают как выглядит Мона Лиза, но далеко не все могут вспомнить, что изображено за её спиной, сидит ли она у открытого окна или, может быть, стоит в чистом поле. И тем не менее, если фон убрать совсем, это сразу бросается в глаза. Та же история и со звуковым фоном. Если его нет, сцена теряет реализм, атмосферу и смысловую нагрузку. Звуковые события происходят в… «нигде». Поэтому, чтобы оживить звук нашей сцены, я подобрал на freesound.org подходящий для неё эмоциональный фон.
Финальная версия со всеми свистелками и гуделками:
Скачать MP3 пример с Google Drive
Плеер
В заключение
Когда я задумал эту статью, я планировал описать процесс создание всех звуков, которые есть в финальной версии. Но судя по количеству воды, которую я тут развёл, даже до этого абзаца, скорее всего, добрались немногие. Привет! Спасибо, что дочитали до конца.
Ссылки
FM-синтез (Википедия)
DTMF (Википедия)
ADSR-огибающая (Википедия)
Сэмпл коровы
Сэмпл окружающей среды
Сэмплы сервомеханизмов из финальной версии [1], [2]
Howard Scarr
U-HE Zebra
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Нужен ли на Хабре встроенный плеер аудио файлов?
80%Да, это было бы удобно684
3.39%Нет, я люблю открывать всё в новых вкладках браузера29
2.46%А я люблю скачивать файлы на диск и открывать их своим любимым плеером!21
7.37%Надо было на ютюб всё заливать и не париться…63
6.78%Меня зовут Андрей, я глубоко оскорблён названием этой темы58
Проголосовали 855 пользователей. Воздержались 119 пользователей.
