Вокодер

Вокодер (англ. Vocoder) — устройство для шифрования, преобразования и синтеза речи, относящееся к категории методов кодирования речи. Вокодер анализирует и синтезирует речевой сигнал человека для задач сжатия аудиоданных, мультиплексирования, шифрования речи или преобразования голоса[1]. Термин «вокодер» образован как портмоне от слов «voice encoder» (кодер голоса).

Вокодер был изобретён Гомером Дадли (англ. Homer Dudley) в 1938 году в лабораториях Bell Labs в качестве средства синтеза человеческой речи. Позднее эта разработка перерастала в «канальный вокодер», который применялся как речевой кодек в телекоммуникациях для экономии полосы пропускания при передаче голоса.

Шифрование управляющих сигналов позволяет проводить защищённую передачу речи по радиоканалам, исключая перехват сообщения — при этом передаются только огибающие полосовых фильтров, а не исходный сигнал. Для восстановления голоса на принимающей стороне необходимо использовать аналогичную фильтрационную конфигурацию.

Вокодеры получили также широкое распространение как электронный музыкальный инструмент. Декодерная часть вокодера (в разговорном синтезе — «водар», англ. voder) может применяться отдельно для синтеза речи.

Теория

Человеческий голос формируется за счёт периодических колебаний, создаваемых голосовыми связками и гортанью, которые продуцируют акустическую волну с множеством гармоник. Далее этот сигнал фильтруется резонансной системой голосового тракта — носа, рта и глотки, где движением органов управления формируются характерные форманты, определяющие выделенные частоты речи. Отдельно выделяют глухие и взрывные согласные, которые получаются путем прерывания воздушного потока различными частями речевого аппарата.

Вокодер анализирует речь путём измерения временных изменений характеристик распределения спектральной энергии. Результатом являются параллельные во времени огибающие сигналы по каждому выделенному полосовому каналу. Это так называемый «модулятор». Чем больше таких полос, тем точнее анализ речи. Каждый канал анализируется по амплитуде огибающей через специальный отслеживающий детектор.

Для синтеза речи вокодер выполняет обратный процесс: сквозь сеть полосовых фильтров пропускается широкополосный сигнал («несущий» — может быть шум или пилообразная волна), а амплитуды фильтров в реальном времени управляются анализированными огибающими модулятора.

В цифровых системах периодически выполняется анализ огибающих фильтров, и полученные значения передаются в виде потока импульсно-кодовой модуляции по каждому каналу. На стороне декодера эти значения управляют усилителями фильтров выходного сигнала.

Информация о фундаментальной частоте сигнала при этом отбрасывается, что изначально согласовывалось с задачей обеспечения шифрования — за счёт этого эффект «обезличивания» голоса стал востребован для создания особых звуковых эффектов в музыке и аудиопроизводстве.

В отличие от передачи исходной формы волны, вокодер передаёт только параметры речевой модели. Поскольку параметры меняются медленнее самой формы электрического сигнала, это позволяет снизить необходимую полосу и передавать речь по более узким каналам (радиоканалы, подводные кабели и др.).

Аналоговый вокодер разбивает входящий сигнал на несколько полос. Для реконструкции голоса несущий сигнал (шум либо пилообразная волна) пропускается через фильтры с управляемой амплитудой, соответствующей уровням анализируемых полос. Обычно применяется от 8 до 20 полос.

Для повышения разборчивости речи аналоговые вокодеры часто имеют отдельный канал для глухих и свистящих согласных (например, звуки «с», «ф», «ч»), в которых спектр выходит за обычные речевые полосы и требует или отдельного шумогенератора, или дополнительного фильтра.

Алгоритмы «канального» вокодера учитывают исключительно амплитудную компоненту аналитического сигнала, не восстанавливая фазу — что понижает качество речи. Для устранения этого применяют фазовый вокодер.

История

Разработки по созданию вокодера начались в 1928 году в лабораториях Bell Labs инженером Гомером Дадли[2]. Патенты на это устройство были выданы в 1939 году[3] и в 1937 году[4].

Для публичной демонстрации синтеза речи отдельная декодирующая часть — «водар» (англ. voder, voice operating demonstrator)[5] — впервые была показана на Всемирной выставке в Нью-Йорке 1939–1940 гг[6].. Водар состоял из электронного генератора (основной тон), шумогенератора (шипение), системы из 10 полосовых фильтров с усилителями переменного коэффициента для имитации звуковых трактов, ручных контроллеров давления для управления фильтрами и педали для изменения высоты тона[7]. Оператор вручную формировал гласные, согласные и интонации движением клавиш и педалей — требовалась специальная подготовка, но опытный оператор мог добиться узнаваемой речи[6].

Вокодер Дадли послужил основной для шифратора речи SIGSALY, построенного инженерными группами Bell Labs в 1943 году для военных коммуникаций во время Второй мировой войны. KO-6 (1949) и более поздние модели (KY-9 THESEUS, 1953; HY-2, 1961) значительно уменьшали габариты устройств и повышали скорость передачи речи. HY-2 стал последним канальным вокодером в криптоаппаратуре США[8].

С 1970-х годов лидирующим технологическим направлением стали цифровые алгоритмы кодирования речи, прежде всего линейное предсказание речи (LPC)[9]. С 1973 года в Bell Labs применяется адаптивная дифференциальная импульсно-кодовая модуляция (ADPCM)[10].

Применения

Современные реализации

Даже с учётом необходимости передачи нескольких полос и добавления информации о глухих звуках, степень компрессии вокодеров высока. Обычные речевые системы записывают сигналы в диапазоне 500–3400 Гц с частотой дискретизации около 8 кГц, что даёт поток 64 кбит/с, тогда как современные вокодеры позволяют имитировать речь при потоке от 5 кбит/с.

"Телефонное" качество обеспечивают кодеки уровня ITU G.729 (8 кбит/с) при высокой разборчивости; кодек G.723 даёт 5,3 и 6,4 кбит/с. Работа на более низких скоростях (менее 5 кбит/с) ведёт к существенным искажениям речи.

Некоторые типы вокодеров, применяемые для речевого шифрования Агентством национальной безопасности США:

  • LPC-10 (FIPS 137, 2400 бит/с, линейное предсказание)
  • CELP (Code-excited linear prediction) — 2400 и 4800 бит/с, стандарт FS 1016 (STU-III)
  • CVSD (Continuously variable slope delta modulation) — 16 кбит/с, применяется в KY-57
  • MELP (Mixed-excitation linear prediction) — MIL STD 3005, 2400 бит/с, система FNBDT (Future Narrowband Digital Terminal)
  • ADPCM — (G.721 ITU-T, 32 кбит/с, STE) — это не вокодер, а кодек формы волны; стандартизирован в ITU G.726

Современные алгоритмы вокодеров для связи и хранения голоса:

  • ACELP (Algebraic code-excited linear prediction), 4,7–24 кбит/с[13]
  • MELPe (Mixed-excitation linear prediction, расширенный; 2400, 1200, 600 бит/с)[14]
  • AMBE (Multi-band excitation) — 2000–9600 бит/с[15]
  • SPR (Sinusoidal-Pulsed Representation) — 600–4800 бит/с[16]
  • RALCWI (Robust Advanced Low-complexity Waveform Interpolation) — 2050, 2400, 2750 бит/с[17]
  • TWELP (Tri-Wave Excited Linear Prediction) — 300–9600 бит/с[18]
  • NRV (Noise Robust Vocoder) — 300, 800 бит/с[19]

Вокодеры используются также в психофизике, лингвистике, вычислительной нейронауке и исследовании слуховых имплантатов.

На основе линейного предсказания

С конца 1970-х большинство невокодерных систем реализуются по принципу линейного предсказания (LPC), когда оценка огибающей спектра производится всесмещённым цифровым IIR-фильтром. Такой фильтр заменяет традиционный набор полосовых фильтров при анализе и синтезе голоса.

Преимущество этого подхода — возможность точно подстраивать частоты спектральных пиков под индивидуальные особенности сигнала, тогда как фиксированные полосовые фильтры жёстко ограничивают положение формант. Однако LPC плохо справляется с сигналами, содержащими много компонент, и потому в системах с высокой степенью сжатия этот метод всегда комбинируют с дополнительными алгоритмами.

Волновые интерполирующие (waveform-interpolative)

Волновые интерполирующие (WI) вокодеры были разработаны в AT&T Bell Labs в 1995 году В. Б. Клейном (W.B. Kleijn) и доработаны для нужд Министерства обороны США. Развитие и усовершенствование WI-кодеков продолжается на основе патентов AT&T с участием вузов, среди них — Калифорнийский университет в Санта-Барбаре[20][21][22].

Художественные эффекты

Использование в музыке

В музыкальных целях в качестве несущего сигнала обычно применяется синтезатор или иной музыкальный инструмент, что даёт богатое разнообразие тембров, а не только синтетическую гортанную модуляцию. Метод приобрёл популярность в 1970-х годах.

История

Немецкий учёный Вернер Майер-Эпплер (нем. Werner Meyer-Eppler) в 1948 году опубликовал работу о речевом синтезе и электронной музыке с акцентом на компьютерное моделирование звука[23]. В 1951 году он способствовал созданию Студии электронной музыки Кёльнского радио[24].

Одной из первых реализованных попыток музыкального использования вокодера стал синтезатор Siemens, созданный в Студии электронной музыки Siemens в 1956–1959 гг[25][26]..

В 1968 году Роберт Муг (англ. Robert Moog) создал один из первых полупроводниковых музыкальных вокодеров для студии электронной музыки Университета Буффало[27].

Тогда же Брюс Хаак разработал прототип вокодера Farad, который был впервые использован в 1969 году на альбоме «The Electronic Record For Children», а затем на «The Electric Lucifer» (1970)[28][29].

С конца 1960-х эффект вокодера широко применялся в электронной музыке и поп-индустрии (например, Sly and the Family Stone в треке «Sex Machine» (1969), группа Kraftwerk, Polysics, Стиви Уандер, Херби Хэнкок, Нил Янг в альбоме «Trans» (1982)[30], Майкл Джексон — «P.Y.T. (Pretty Young Thing)»).

Знаковыми пользователями вокодера остаются Daft Punk (альбомы с 1997 по 2013, включая «Homework» и «Random Access Memories»)[31].

Голосовые эффекты в других жанрах

Роботизированный голос — популярный ("кинематографический") эффект в массовой культуре. Кроме вокодеров, достигается с помощью устройств типа Sonovox, Talk box, Auto-Tune, LPC-вокодеров, синтеза речи, кольцевой модуляции, гребёнчатых фильтров и др.

Пример — голоса роботов-цилонов ("Battlestar Galactica") (EMS Vocoder 2000), тема «Доктор Кто» (Roland SVC-350), голос Soundwave из "Трансформеров" (Roland VP-330).

Примечания

Литература

  • Tompkins D. How to Wreck a Nice Beach: The Vocoder from World War II to Hip-Hop, The Machine Speaks. Melville House, 2011. ISBN 978-1-61219-093-8.