английский | 简体中文 | 日本語
Выпущенная в настоящее время модель поддерживает преобразование голоса с нулевым выстрелом . , преобразование голоса в реальном времени с нулевым выстрелом и преобразование певческого голоса с нулевым выстрелом . Без какого-либо обучения он способен клонировать голос, учитывая эталонную речь продолжительностью 1–30 секунд.
Чтобы найти список демонстраций и сравнение с предыдущими моделями преобразования голоса, посетите нашу демонстрационную страницу.
Мы продолжаем улучшать качество модели и добавлять новые функции.
Мы провели серию объективных оценок возможностей преобразования голоса в Seed-VC. Для простоты воспроизведения исходные аудио представляют собой 100 случайных произнесений из LibriTTS-test-clean, а эталонные аудио — это 12 случайно выбранных в дикой природе голосов с уникальными характеристиками.
Исходные аудиофайлы можно найти в разделе ./examples/libritts-test-clean
Справочные аудиозаписи можно найти в разделе ./examples/reference
Мы оцениваем результаты преобразования с точки зрения косинусного сходства встраивания динамиков (SECS), частоты ошибок в словах (WER) и частоты ошибок в символах (CER) и сравниваем наши результаты с двумя надежными базовыми показателями из открытых источников, а именно OpenVoice и CosyVoice.
Результаты в таблице ниже показывают, что наша модель Seed-VC значительно превосходит базовые модели как по разборчивости, так и по сходству говорящих.
МоделиМетрики | СЕКС↑ | ВЕР↓ | ССВ↓ | СИГ↑ | БАК↑ | ОВРЛ↑ |
---|---|---|---|---|---|---|
Основная истина | 1,0000 | 8.02 | 1,57 | ~ | ~ | ~ |
OpenVoice | 0,7547 | 15.46 | 4,73 | 3,56 | 4.02 | 3.27 |
Уютный Голос | 0,8440 | 18.98 | 7.29 | 3.51 | 4.02 | 3.21 |
Сид-ВК(Наш) | 0,8676 | 11.99 | 2,92 | 3.42 | 3,97 | 3.11 |
Мы также сравнили модели преобразования голоса с ненулевым импульсом для нескольких динамиков (в зависимости от наличия модели):
Персонажи | МоделиМетрики | СЕКС↑ | ВЕР↓ | ССВ↓ | СИГ↑ | БАК↑ | ОВРЛ↑ |
---|---|---|---|---|---|---|---|
~ | Основная истина | 1,0000 | 6.43 | 1.00 | ~ | ~ | ~ |
Токай Тейо | Со-ВИТС-4.0 | 0,8637 | 21.46 | 9,63 | 3.06 | 3,66 | 2,68 |
Сид-ВК(Наш) | 0,8899 | 15.32 | 4,66 | 3.12 | 3,71 | 2,72 | |
Молочно-зеленый | Со-ВИТС-4.0 | 0,6850 | 48,43 | 32.50 | 3.34 | 3.51 | 2,82 |
Сид-ВК(Наш) | 0,8072 | 7.26 | 1.32 | 3,48 | 4.07 | 3.20 | |
Матикане Таннуасер | Со-ВИТС-4.0 | 0,8594 | 16.25 | 8,64 | 3.25 | 3,71 | 2,84 |
Сид-ВК(Наш) | 0,8768 | 12.62 | 5,86 | 3.18 | 3,83 | 2,85 |
Результаты показывают, что, несмотря на отсутствие обучения на целевых динамиках, Seed-VC способен достичь значительно лучших результатов, чем модели с ненулевым импульсом. Однако это может сильно различаться в зависимости от качества модели SoVITS. Пиар или проблема приветствуются, если вы считаете это сравнение несправедливым или неточным.
(Модель Токай Тейо от zomehwh/sovits-tannhauser)
(Модель Matikane Tannhuaser от zomehwh/sovits-tannhauser)
(Модель Milky Green от sparanoid/milky-green-sovits-4)
Результат ASR на английском языке, рассчитанный с помощью модели Facebook/hubert-large-ls960-ft.
Встраивание динамиков, рассчитанное по модели resemblyzer
Вы можете воспроизвести оценку, запустив скрипт eval.py
python eval.py --source ./examples/libritts-test-clean --target ./examples/reference --output ./examples/eval/converted --диффузия-шаги 25 --length-adjust 1.0 --inference-cfg-rate 0,7 --xvector-extractor "resemblyzer"--baseline "" # заполните openvoice или cosyvoice для вычисления базового результата --max-samples 100 # максимальное количество исходных высказываний, которые нужно пройти
Перед этим убедитесь, что у вас правильно установлены репозитории openvoice и cosyvoice в ../OpenVoice/
и ../CosyVoice/
если вы хотите запустить базовую оценку.
Дополнительная оценка преобразования певческого голоса выполняется на наборе данных M4Singer с четырьмя целевыми динамиками, аудиоданные которых доступны здесь.
Сходство говорящего рассчитывается путем усреднения косинусного сходства между результатом преобразования и всеми доступными образцами в соответствующем наборе данных символов.
Для каждого персонажа одно случайное высказывание выбирается в качестве подсказки для нулевого вывода. Для сравнения мы обучили соответствующую модель RVCv2-f0-48k для каждого персонажа в качестве базовой линии.
В качестве исходного звука используются 100 случайных высказываний для каждого типа певца.
МоделиМетрики | F0CORR↑ | F0RMSE↓ | СЕКС↑ | ССВ↓ | СИГ↑ | БАК↑ | ОВРЛ↑ |
---|---|---|---|---|---|---|---|
РВКv2 | 0,9404 | 30.43 | 0,7264 | 28.46 | 3.41 | 4.05 | 3.12 |
Сид-ВК(Наш) | 0,9375 | 33.35 | 0,7405 | 19.70 | 3.39 | 3,96 | 3.06 |
Источник Тип певца | Персонажи | МоделиМетрики | F0CORR↑ | F0RMSE↓ | СЕКС↑ | ССВ↓ | СИГ↑ | БАК↑ | ОВРЛ↑ |
---|---|---|---|---|---|---|---|---|---|
Альто (женщина) | ~ | Основная истина | 1,0000 | 0,00 | ~ | 8.16 | ~ | ~ | ~ |
Азума (женщина) | РВКv2 | 0,9617 | 33.03 | 0,7352 | 24.70 | 3.36 | 4.07 | 3.07 | |
Сид-ВК(Наш) | 0,9658 | 31,64 | 0,7341 | 15.23 | 3.37 | 4.02 | 3.07 | ||
Диана (женщина) | РВКv2 | 0,9626 | 32,56 | 0,7212 | 19.67 | 3.45 | 4.08 | 3.17 | |
Сид-ВК(Наш) | 0,9648 | 31,94 | 0,7457 | 16.81 | 3,49 | 3,99 | 3.15 | ||
Дин Чжэнь (мужчина) | РВКv2 | 0,9013 | 26,72 | 0,7221 | 18.53 | 3.37 | 4.03 | 3.06 | |
Сид-ВК(Наш) | 0,9356 | 21.87 | 0,7513 | 15,63 | 3.44 | 3,94 | 3.09 | ||
Коби Брайант (мужчина) | РВКv2 | 0,9215 | 23.90 | 0,7495 | 37.23 | 3,49 | 4.06 | 3.21 | |
Сид-ВК(Наш) | 0,9248 | 23.40 | 0,7602 | 26.98 | 3.43 | 4.02 | 3.13 | ||
Бас (мужчина) | ~ | Основная истина | 1,0000 | 0,00 | ~ | 8,62 | ~ | ~ | ~ |
Азума | РВКv2 | 0,9288 | 32,62 | 0,7148 | 24.88 | 3.45 | 4.10 | 3.18 | |
Сид-ВК(Наш) | 0,9383 | 31,57 | 0,6960 | 10.31 | 3.45 | 4.03 | 3.15 | ||
Диана | РВКv2 | 0,9403 | 30.00 | 0,7010 | 14.54 | 3.53 | 4.15 | 3.27 | |
Сид-ВК(Наш) | 0,9428 | 30.06 | 0,7299 | 9,66 | 3.53 | 4.11 | 3.25 | ||
Дин Чжэнь | РВКv2 | 0,9061 | 19.53 | 0,6922 | 25.99 | 3.36 | 4.09 | 3.08 | |
Сид-ВК(Наш) | 0,9169 | 18.15 | 0,7260 | 14.13 | 3.38 | 3,98 | 3.07 | ||
Коби Брайант | РВКv2 | 0,9302 | 16.37 | 0,7717 | 41.04 | 3.51 | 4.13 | 3.25 | |
Сид-ВК(Наш) | 0,9176 | 17.93 | 0,7798 | 24.23 | 3.42 | 4.08 | 3.17 | ||
Сопрано (женщина) | ~ | Основная истина | 1,0000 | 0,00 | ~ | 27.92 | ~ | ~ | ~ |
Азума | РВКv2 | 0,9742 | 47,80 | 0,7104 | 38,70 | 3.14 | 3,85 | 2,83 | |
Сид-ВК(Наш) | 0,9521 | 64.00 | 0,7177 | 33.10 | 3.15 | 3,86 | 2,81 | ||
Диана | РВКv2 | 0,9754 | 46,59 | 0,7319 | 32.36 | 3.14 | 3,85 | 2,83 | |
Сид-ВК(Наш) | 0,9573 | 59,70 | 0,7317 | 30.57 | 3.11 | 3,78 | 2,74 | ||
Дин Чжэнь | РВКv2 | 0,9543 | 31.45 | 0,6792 | 40,80 | 3.41 | 4.08 | 3.14 | |
Сид-ВК(Наш) | 0,9486 | 33.37 | 0,6979 | 34.45 | 3.41 | 3,97 | 3.10 | ||
Коби Брайант | РВКv2 | 0,9691 | 25.50 | 0,6276 | 61,59 | 3.43 | 4.04 | 3.15 | |
Сид-ВК(Наш) | 0,9496 | 32,76 | 0,6683 | 39,82 | 3.32 | 3,98 | 3.04 | ||
Тенор (мужской) | ~ | Основная истина | 1,0000 | 0,00 | ~ | 5,94 | ~ | ~ | ~ |
Азума | РВКv2 | 0,9333 | 42.09 | 0,7832 | 16,66 | 3,46 | 4.07 | 3.18 | |
Сид-ВК(Наш) | 0,9162 | 48.06 | 0,7697 | 8.48 | 3.38 | 3,89 | 3.01 | ||
Диана | РВКv2 | 0,9467 | 36,65 | 0,7729 | 15.28 | 3.53 | 4.08 | 3.24 | |
Сид-ВК(Наш) | 0,9360 | 41,49 | 0,7920 | 8.55 | 3,49 | 3,93 | 3.13 | ||
Дин Чжэнь | РВКv2 | 0,9197 | 22.82 | 0,7591 | 12.92 | 3.40 | 4.02 | 3.09 | |
Сид-ВК(Наш) | 0,9247 | 22.77 | 0,7721 | 13.95 | 3.45 | 3,82 | 3.05 | ||
Коби Брайант | РВКv2 | 0,9415 | 19.33 | 0,7507 | 30.52 | 3,48 | 4.02 | 3.19 | |
Сид-ВК(Наш) | 0,9082 | 24.86 | 0,7764 | 13.35 | 3.39 | 3,93 | 3.07 |
Несмотря на то, что Seed-VC не обучается на целевых говорящих и в качестве подсказки используется только одно случайное высказывание, он по-прежнему постоянно превосходит модели RVCv2 для конкретного говорящего с точки зрения сходства говорящего (SECS) и разборчивости (CER), что демонстрирует превосходное качество голоса. возможность клонирования и надежность Seed-VC.
Однако замечено, что качество звука Seed-VC (DNSMOS) немного ниже, чем у RVCv2. Мы серьезно относимся к этому недостатку и будем уделять приоритетное внимание улучшению качества звука в будущем.
Пиар или вопрос приветствуются, если вы считаете это сравнение несправедливым или неточным.
Результат ASR для китайского языка, рассчитанный SenseVoiceSmall
Встраивание динамиков, рассчитанное по модели resemblyzer
Мы устанавливаем сдвиг высоты звука на +12 полутонов для преобразования мужского пола в женский и -12 полутонов для преобразования женского пола в мужской, в противном случае сдвиг высоты звука равен 0.
Предлагаемый Python 3.10 для Windows или Linux.
pip install -r требования.txt
Контрольные точки последней версии модели будут загружены автоматически при первом запуске вывода.
Вывод командной строки:
python inference.py --source--target --output --diffusion-steps 25 # рекомендуется 50~100 для преобразования пения-голоса --length-adjust 1.0 --inference-cfg-rate 0,7 --f0-condition False # установлено в True для преобразования певческого голоса --auto-f0-adjust False # установлено в True для автоматической настройки исходной высоты звука до целевого уровня высоты, обычно не используется при преобразовании певческого голоса --semi-tone-shift 0 # сдвиг высоты звука в полутонах для преобразования певческого голоса
где:
source
— это путь к речевому файлу, который необходимо преобразовать в эталонный голос.
target
– это путь к речевому файлу в качестве голосовой ссылки.
output
— это путь к выходному каталогу
diffusion-steps
— это количество шагов диффузии, которые нужно использовать, по умолчанию — 25, используйте 50–100 для лучшего качества, используйте 4–10 для быстрого вывода
length-adjust
— коэффициент регулировки длины, по умолчанию — 1,0, установите <1,0 для ускоренной речи, >1,0 для замедленной речи.
inference-cfg-rate
имеет небольшую разницу в выводе, по умолчанию — 0,7.
f0-condition
— это флаг, определяющий высоту выходного сигнала в соответствии с высотой исходного звука, по умолчанию — False, для преобразования певческого голоса установлено значение True.
auto-f0-adjust
— это флаг для автоматической настройки исходной высоты звука до целевого уровня высоты, по умолчанию — False, обычно не используется при преобразовании певческого голоса.
semi-tone-shift
— сдвиг высоты тона в полутонах для преобразования певческого голоса, по умолчанию — 0.
Веб-интерфейс Градио:
приложение Python.py
Затем откройте браузер и перейдите по адресу http://localhost:7860/
чтобы использовать веб-интерфейс.
Графический интерфейс преобразования голоса в реальном времени:
python в реальном времени-gui.py
ВАЖНО: Настоятельно рекомендуется использовать графический процессор для преобразования голоса в реальном времени.
Некоторые тесты производительности были проведены на графическом процессоре ноутбука NVIDIA RTX 3060, результаты и рекомендуемые настройки параметров перечислены ниже:
Примечания | Этапы диффузии | Скорость вывода CFG | Максимальная длина подсказки | Время блока (с) | Длина кроссфейда (с) | Дополнительный контекст (слева) (с) | Дополнительный контекст (справа) (с) | Задержка (мс) | Качество | Время вывода на блок (мс) |
---|---|---|---|---|---|---|---|---|---|---|
подходит для большинства голосов | 10 | 0,7 | 3.0 | 1,0 с | 0,04 с | 0,5 с | 0,02 с | 2070 мс | Середина | 849 мс |
лучшая производительность для высоких женских голосов | 20 | 0,7 | 3.0 | 2.0 с | 0,04 с | 0,5 с | 0,02 с | 4070 мс | Высокий | 1585 мс |
подходит для некоторых мужских голосов, поскольку требования к качеству звука ниже | 5 | 0,7 | 3.0 | 0,6 с | 0,04 с | 0,5 с | 0,02 с | 1270 мс | Низкий | 488 мс |
Более быстрый вывод, если установить inference_cfg_rate равным 0,0, но не уверен, снизится ли производительность... | 10 | 0,0 | 3.0 | 0,7 с | 0,04 с | 0,5 с | 0,02 с | 1470 мс | Середина | 555 мс |
Вы можете настроить параметры в графическом интерфейсе в соответствии с производительностью вашего устройства. Поток преобразования голоса должен работать хорошо, пока время вывода меньше времени блока.
Обратите внимание, что скорость вывода может снизиться, если вы выполняете другие задачи, интенсивно использующие графический процессор (например, игры, просмотр видео).
Обычно задержка составляет около 1-2 секунд, чтобы предотвратить падение качества (печальная природа диффузных моделей...?), но мы продолжаем искать способы ее уменьшить.
(Графический интерфейс пользователя и логика фрагментирования звука изменены из RVC, спасибо за блестящую реализацию!)
Код выпуска
Предварительно обученная модель версии v0.1:
Космическая демонстрация Huggingface:
Демонстрационная страница HTML (возможно, со сравнением с другими моделями VC): Демо
Потоковый вывод
Уменьшите задержку вывода потоковой передачи
Демонстрационное видео для преобразования голоса в реальном времени
Преобразование певческого голоса
Шумоустойчивость исходного и эталонного аудио
Исходный звук — устойчивость к шуму
Возможные улучшения архитектуры
Пропускные соединения в стиле U-ViT
Изменен ввод в OpenAI Whisper.
Код для обучения на пользовательских данных
Изменено на BigVGAN от NVIDIA для декодирования поющего голоса.
Модель версии Whisper для преобразования певческого голоса
Объективная оценка и сравнение с РВК/СоВИТС для преобразования певческого голоса
Улучшите качество звука
Еще будет добавлено
2024-10-28:
Обновленная точно настроенная модель преобразования певческого голоса 44k с лучшим качеством звука.
27.10.2024:
Добавлен графический интерфейс преобразования голоса в реальном времени.
2024-10-25:
Добавлены исчерпывающие результаты оценки и сравнения с RVCv2 для преобразования певческого голоса.
2024-10-24:
Обновленная модель преобразования поющего голоса с частотой 44 кГц с использованием OpenAI Whisper в качестве ввода речевого контента.
07.10.2024:
Обновлена предварительно обученная модель v0.3, изменен кодировщик речевого контента на OpenAI Whisper.
Добавлены результаты объективной оценки для предварительно обученной модели v0.3.
22 сентября 2024 г.:
Обновлена модель преобразования певческого голоса для использования BigVGAN от NVIDIA, обеспечивающая значительное улучшение высоких певческих голосов.
Поддержка фрагментации и потоковой передачи длинных аудиофайлов в веб-интерфейсе.
18 сентября 2024 г.:
Обновлена условная модель f0 для преобразования певческого голоса.
14 сентября 2024 г.:
Обновленная предварительно обученная модель версии 0.2 с меньшим размером и меньшим количеством шагов диффузии для достижения того же качества, а также с дополнительной возможностью контролировать сохранение просодии.
Добавлен скрипт вывода командной строки.
Добавлена инструкция по установке и использованию.