Тангаж Перемены и расширение времени с помощью Фазы вокодера в Simulink

Этот пример показов, как использовать фазу вокодер для реализации расширения во времени и перемене тона аудиосигнала.

Пример модели

Фазовый вокодер в этом примере состоит из секции анализа, секции вычисления фазы и секции синтеза. Раздел анализа состоит из перекрывающегося, кратковременного оконного БПФ. Начало каждого системы координат задерживается с предыдущей системы координат на величину, заданную в параметре Analysis hop size. Раздел синтеза состоит из кратковременного оконного ОБПФ и наложения полученной системы координат. Размер перекрытия во время синтеза задается параметром Synthesis hop size.

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

Чтобы предотвратить искажение, фаза частотного диапазона сигнала изменяется в секции вычисления фазы. В частотный диапазон сигнал разделяется на величину и фазу компоненты. Для каждого интервала вычисляется различие фаз между системами координат, затем нормируется номинальной фазой интервала. Изменение фазы сначала требует, чтобы нормализованные различия фаз были развёрнуты. НеОтвёрнутые различия умножаются на размер хопа Synthesis, деленный на размер хопа Analysis. Различия накапливаются, система координат за кадром, чтобы восстановить компоненты фазы. Затем рекомбинируют составляющие величины и фазы.

Исследование примера

При запуске модели масштабированный по тангажу сигнал автоматически воспроизводится после завершения симуляции. Блок Audio Playback позволяет вам выбирать между режимами Перемены тангажа и Замедления Времени.

Дважды кликните блок Phase Vocoder. Измените значение параметра Synthesis hop-size на 64, то же значение что и значение параметра Analysis hop-size. Запустите симуляцию и прослушайте три сигнала. Масштабированный по тангажу сигнал имеет тот же шаг, что и исходный сигнал, и растянутый по времени сигнал имеет ту же скорость, что и исходный сигнал.

Затем измените параметр Synthesis hop-size в блоке Phase Vocoder на 48, что меньше, чем параметр Analysis hop-size. Запустите симуляцию и прослушайте три сигнала. Масштабированный по тангажу сигнал имеет более низкий тангаж, чем исходный сигнал. Растянутый по времени сигнал быстрее, чем исходный сигнал.

Чтобы увидеть реализацию, щелкните правой кнопкой по блоку Phase Vocoder и выберите Mask > Look Under Mask.

Ссылки

A. D. Готцен, Н. Бернардини и Д. Арфиб. «Традиционные реализации фазового вокодера: хитрости торговли», Труды конференции G-6 COST по цифровому аудио Эффектов (DAFX-00). Верона, Италия, 7-9 декабря 2000 года.