Неофициальная реализация MelGAN
Отредактируйте hparams.py
Поместите аудиофайлы для тренировки в data_dir
Поместите аудиофайлы для тестирования в test_dir
Поместите аудиофайлы для использования в generate_dir
Запустите python melgan.py -r p -f mel
Запустите python melgan.py -r t -f mel
Запустите python melgan.py -r g -f wav
для файлов в wav из которого будет считаться мелспектр
Или запустите python melgan.py -r g -f mel
для файлов в mel, в нужном формате
Моя сеть. На вход принимает сгенерированный Гриффин лим звук и пытается его подправить. Архитектура генератора похожа на U-net, а дискриминатор взят из MelGAN
Отредактируйте hparams.py
Поместите аудиофайлы для тренировки в data_dir
Поместите аудиофайлы для тестирования в test_dir
Поместите аудиофайлы для использования в generate_dir
запустите python wavgan.py -r p -f mel
, или используйте мелспектрограммы из melgan.
Или запустите python wavgan.py -r p -f wav
, если хотите сразу сгенерировать сигнал Гриффин Лима для ускорения обучения
Запустите python wavgan.py -r t -f mel
для обучения на mel. Звук будет долго синтезироваться Гриффин Лимом на лету
Или запустите python wavgan.py -r t -f wav
для обучения на заранее сгенерированных wav.
Запустите python wavgan.py -r g -f wav
для файлов в wav
Или запустите python melgan.py -r g -f mel
для файлов в mel, в нужном формате. Звук будет сначала синтезироваться Гриффин Лимом
При тренировке WavGAN пытается реализовать две вещи: реконструировать амплитуду, которая уже содержится в входном сигнале (например из Такотрона), а также создаёт подходящую фазу, которая отсутствует в входном сигнале и которая делает звучание звука более реалистичным. Практика показала, что фаза в приемленном качестве созревает раньше чем амплитуда. И если использовать только фазу, то можно значительно ускорить процесс тренировки, а точнее не дожидаться полной реконструкции амплитуды, которая уже есть в исходном файле. Для более подробного понимания предлагаю посмотреть Colab, созданный автором.
Файл wavgan_phase_changer.py представляет собой модификацию wavgan.py. Звуковой файл на выходе состоит из амплитуды исходного файла и фазы из тренированной модели.
Запустите python wavgan.py -r p -f wav
, если хотите сразу сгенерировать сигнал Гриффин Лима для ускорения обучения
Запустите python wavgan_phase_changer.py -r t -f wav
для обучения на заранее сгенерированных wav.
Запустите python wavgan_phase_changer.py -r g -f wav
для файлов в wav
Модели wavgan и wavgan_phase_changer полностью совместимы.