Как сделать ИИ-кавер при помощи нейросети
В соцсетях набрали популярность несуществующие песни, которые генерируют в нейросетях.
В апреле более миллиона прослушиваний на Spotify набрал трек Heart on My Sleeve. Его загрузил пользователь ghostwriter977, но звучала песня так, будто ее исполняли The Weeknd и Дрейк. Голоса были очень похожи, особенно у Дрейка. Но канадские звезды не имели отношения к песне — ее сгенерировала нейросеть.
История про трек разошлась, и позже его удалили со всех площадок по требованию правообладателя Universal. Но в соцсетях стали появляться другие коллаборации: голосом Фредди Меркьюри исполнили песню Imagine Dragons, а Канье Уэст «спел» Just The Two of Us. Тренд добрался и до рунета: песни стали перепевать голосами Доры и Элджея. А ИИ-каверы нейро-Моргенштерна сильно разошлись в «Тиктоке».
Рассказываю, как сделать такой трек самому — за полчаса или за пять минут.
Как сгенерировать трек в нейросети so-vits-svc при помощи Google Colab
В марте 2023 года команда китайских разработчиков выложила на GitHub нейросеть SoftVC VITS Singing Voice Conversion. В интернете ее знают по короткому названию so-vits-svc.
Нейросеть умеет имитировать певцов и генерировать новые песни с их голосами. Алгоритм сделали энтузиасты: он не принадлежит корпорациям и никому из разработчиков в отдельности.
So-vits-svc доступна для всех, поэтому если вы умеете программировать и имеете достаточно мощный компьютер, то можете запустить код локально. Подробно о том, как это сделать, говорится в ролике Nerdy Rodent на «Ютубе».
Способ, не требующий навыков программирования или мощного компьютера: воспользоваться нейросетью на Google Colab. Полностью готовый ИИ-кавер можно сделать примерно за полчаса. Сгенерировать песню можно с голосом исполнителя, чью модель выложили в открытый доступ энтузиасты.
Шаг 1. Выберите песню, которую будет исполнять сгенерированный голос. Скачайте ее в mp3. Для успешной генерации понадобится и инструментал, и голос оригинального певца, учитывайте это.
Музыка защищена авторским правом, поэтому использовать в коммерческих целях ее нельзя. Будьте готовы к тому, что ваш сгенерированный трек могут удалить с «Ютуба» или других платформ по требованию правообладателя. Либо выбирайте песни, доступные по лицензии Creative Commons.
Шаг 2. Разделите трек на а капеллу и минус. Для этого перейдите на сайт x-minus и загрузите туда mp3-файл. Скачайте полученные файлы. Зеленая дорожка — а капелла, синяя — минус. Переименуйте их, чтобы не запутаться.
Шаг 3. Конвертируйте файл с а капеллой из mp3 в wav. Это можно сделать в бесплатной программе Audacity или в онлайн-конвертере cloudconvert.
Шаг 4. Перейдите по ссылке на so-vits-svс — это веб-интерфейс нейросети, который запускается в Google Colab. Сервис позволяет бесплатно запускать код на чужих вычислительных мощностях. Есть ограничения: каждый раз нужно ждать, пока загрузятся библиотеки и модели.
Вы можете использовать и другой интерфейс, который найдете в интернете. Но мы не гарантируем, что он будет работать. Эта инструкция написана для so-vits-svс, в других веб-интерфейсах очередность шагов может различаться.
Шаг 5. Войдите в свой Google-аккаунт или создайте новый. Без аккаунта пользоваться Google Colab не получится.
Шаг 6. Поочередно запустите ячейки Check GPU, Setup 1, Setup 2, Download ContentVec, Setup HF Downloads. Для этого нужно нажать кнопку Play возле соответствующего заголовка. Когда код загрузится, возле названия ячейки появится зеленая галочка. Запускайте следующую ячейку, только когда закончится загрузка предыдущей. Если вы пропустите одну из строчек, программа не сработает.
Дольше всего загружается Setup 1 — около 10 минут. Остальным требуется несколько секунд. Вам не придется загружать код для каждого трека, достаточно сделать это один раз. Но спустя примерно два часа код автоматически сбросится. В таком случае придется начинать весь процесс заново.
Шаг 7. Выберите голос, который будет исполнять вашу песню. Для этого под заголовком Other Downloads (.zip) Step o.1 найдите поле model_url и добавьте туда ссылку на папку с моделью голоса. Ссылки можно взять из списка предложенных в этой же ячейке: Канье Вест, Кендрик Ламар, Дрейк.
А можете посмотреть библиотеку с голосами на huggingface и скопировать ссылку на нужную папку оттуда. Доступны голоса российских исполнителей, например, Oxxxymiron или Моргенштерна.
Нейросеть поддерживает ссылки на любые заархивированные папки с Google Drive, MEGA, huggingface и других ресурсов. Добавляйте туда любую модель, которую найдете в интернете.
Шаг 8. Запустите еще одну ячейку с кодом — Extract.zip Downloads — Step o.2. Дождитесь загрузки.
Шаг 9. Нажмите на иконку папки и перетащите в пустое пространство аудиофайл с а капеллой в формате wav, который вы подготовили в третьем шаге. Загрузка файла может занять несколько минут — все зависит от его длины. Когда файл загрузится, запустите код.
Шаг 10. Нажмите на кнопку Convert. После этого появится плеер со сгенерированным голосом. Скачайте трек по правому клику на плеер. Если плеер не появился, скачайте последний файл в папке слева.
На этом шаге чаще всего встречаются ошибки. Если вы с ними столкнулись, возможно, вы пропустили какую-то часть кода, выбрали нерабочую модель или взяли слишком длинную а капеллу.
Шаг 11. Совместите минус со сгенерированной а капеллой в любом аудиоредакторе: в бесплатной программе Audacity или онлайн-сервисе veed.io. Здесь пригодятся навыки мастеринга и сведения музыки, если они у вас есть. Сохраните. Трек готов.
Как сгенерировать трек на сайте musicfy
Этот способ гораздо проще: он не требует использования Google Colab. Единственный минус — на сайте есть только готовые пресеты голосов, другие добавить туда не получится.
Шаг 1. Скачайте песню в формате mp3.
Шаг 2. Разделите трек на а капеллу и минус. Для этого перейдите на сайт x-minus и загрузите туда mp3. Скачайте полученные файлы.
Шаг 3. Перейдите на сайт musicfy. Войдите через Google-аккаунт и нажмите Create a song. Загрузите в поле mp3-файл с а капеллой или запишите собственный голос.
Если файл не загрузился, пролистайте вниз — там может появиться сообщение об ошибке Audio file is corrupted, please try uploading another file. Попробуйте загрузить тот же файл еще раз.
Шаг 4. Выберите один из предложенных голосов. На сайте доступны вокалы Арианы Гранде, Дрейка, Граймс, Канье Уэста, Трэвиса Скотта и других. Есть два персонажа мультфильмов — Губка Боб Квадратные Штаны и Питер Гриффин. При этом все эти голоса могут воспроизводить русскоязычный текст.
Шаг 5. Нажмите Convert. После обработки скачайте готовый файл. Если появляется ошибка, нажмите еще раз.
Шаг 6. Совместите минус со сгенерированной а капеллой в любом аудиоредакторе: в бесплатной программе Audacity или онлайн-сервисе veed.io. Сохраните.
Кратко: какой способ выбрать
Нейросеть из Google Colab позволяет сгенерировать трек сотней голосов, модели которых сделали пользователи. Этот способ затратен по времени: нужно ждать загрузки кода, часто он выдает ошибки. Разобраться в причинах с ходу сложно — сервис не говорит, в чем именно проблема. Порой приходится проводить время на форумах и «Ютубе», чтобы устранить ошибку — а через пять минут наткнуться уже на новую.
Musicfy позволяет генерировать треки гораздо проще: с коротким ожиданием, без запуска кода и возможности столкнуться с ошибками. С этим способом даже не требуется конвертировать аудиофайлы. Главный минус — на сайте представлен ограниченный набор голосов.
Бонус: 5 нейрокаверов, которые нам понравились
Мы постим кружочки, красивые карточки и новости о технологиях и поп-культуре в нашем телеграм-канале. Подписывайтесь, там классно: @t_technocult