Как сделать ИИ-дуэт на два голоса, чтобы они не сливались в один?
Голоса сливаются, когда в тексте не сказано, кто поёт какой раздел, и оба описаны одинаково. Закажите текст как диалог, подпишите каждый раздел одним и тем же именем голоса, разведите голоса по регистру и тембру, а если теги не помогли, чините один раздел или берите вокальный синтезатор.
На бумаге всё выглядело правильно. Сверху [Duet], первый куплет написан для него, второй для неё, припев они должны перебрасывать друг другу. А в ответ пришло одно из трёх: один голос поёт всё подряд, два голоса слиплись в какого-то усреднённого певца, или голоса нужные, но стоят не там, и она поёт его строки. Обиднее всего третий вариант: модель явно услышала, что голосов два, и всё равно ошиблась, кому какие строки отдать.
Невезения тут нет. Дуэт в генераторе песен по тексту складывается из просьб, разбросанных по двум полям, и в большинстве дуэтных текстов эти просьбы слишком расплывчаты, чтобы модель могла по ним что-то сделать. Ниже показана разметка, с которой просьба становится конкретной, бриф, по которому текст с самого начала пишется как разговор двоих, и что делать, если голоса всё равно сливаются: чинить одну часть, разносить работу на два прогона или уходить в вокальный синтезатор, где у каждого голоса своя дорожка и слипнуться им просто не из чего.
Если вы ещё не выбрали, чем вообще озвучивать текст, начните со статьи о том, какая нейросеть споёт ваш текст. Она для тех, кто выбирает между полными генераторами песен, вокальными синтезаторами и заменой голоса. Здесь же инструмент уже есть, скорее всего Suno, и задача одна: развести два разных голоса внутри одной песни.
Почему два голоса превращаются в один
В справке Suno сказано, что песня отдаётся одним сведённым файлом, вместе с вокалом. Никто не раздаёт двум певцам роли: модель собирает одну песню из всего, что вы вписали в поля Style и Lyrics, и любой тег в квадратных скобках остаётся просьбой, которую она взвешивает наравне с остальным текстом, а не переключателем, который обязана выполнить. Три привычки тянут эту просьбу к одному смешанному голосу.
Метка не говорит, кто поёт. [Duet] сообщает модели, что где-то в песне поют двое. Какие строки чьи, из неё не понять, поэтому модель угадывает, и угадывает обычно так: понемногу оба и везде.
Оба голоса описаны как один. Строка Style вида male and female vocals задаёт два пола и ни одного различия. Два голоса в среднем регистре с одинаково гладким поп-тембром легко усреднить, а усреднение вы и слышите как кашу. Голоса расходятся, когда отличаются регистром и фактурой, а не только полом: низкий тёплый баритон против высокого воздушного сопрано звучат как два человека, а male vocal против female vocal может прийти одним певцом с широким диапазоном.
Передача партии спрятана. Если певец меняется посреди строки или метка стоит один раз наверху и больше не повторяется, модели не за что зацепиться в тот момент, когда голос должен смениться. В разборе управления голосом в Suno об этом сказано для одного певца: голый [Chorus] и есть то место, где выбор голоса уплывает. В дуэте такое случается вдвое чаще, потому что и голосов, которые можно потерять, два.
Что делает наш генератор, а что вы дописываете сами
Сразу оговоримся: sunomarket не Suno, а независимый сайт, и ни с Suno, ни с другими компаниями из этой статьи у нас нет никакой связи. Наш генератор текстов принимает короткий бриф и возвращает название и полный текст песни с тегами разделов [Verse] и [Chorus], готовый для поля Lyrics в Suno. Петь он не умеет. Аудио у нас нет вовсе: текст вы вставляете в тот инструмент, который выбрали для вокала.
В поле голоса в форме три значения: unspecified, female и male. Дуэта среди них нет. Это не спрятанная функция, которую где-то можно включить, а честное разделение работы: генератор пишет слова, а кто какие слова поёт, решаете вы, когда переписываете заголовки разделов в готовом тексте. На эту правку уйдёт минут пять, и это самые важные пять минут во всём процессе.
Теперь про деньги. Текст на базовой модели SM1 стоит 20 кредитов, то есть $0.20. SM2 и SM3 стоят по 80 кредитов ($0.80) и делают дополнительный проход редактуры: детектор отмечает слабые строки, а шаг починки их переписывает. Новый аккаунт начинается с 0 кредитов, бесплатной пробы генератора нет, и дешевле всего войти через месячный тариф за $5 с 500 кредитами, этого хватает на 25 текстов на SM1. Пожизненный тариф за $19 даёт 1 500 кредитов один раз, они не сгорают, но это не безлимит. Через СБП из России можно оплатить только разовые покупки: пожизненный тариф и пакет кредитов (пакет докупается при действующем тарифе). Всё это есть на странице тарифов.
Бриф: просите разговор, а не песню
Дуэт, который слипся на бумаге, слипнется и в звуке. Если текст написан как монолог одного человека и просто разрезан пополам, у двух певцов нет ничего, что делало бы их двумя людьми, и у модели нет причин держать их порознь. Поэтому лечить начинают ещё до тегов: текст заказывают как обмен репликами, где один спрашивает, а другой отвечает, один вспоминает, а другой поправляет.
Вот бриф, который так и устроен, причём в нём только те значения, которые в форме действительно есть:
| Поле | Значение | Зачем такое значение для дуэта |
|---|---|---|
| POV | first | Оба говорят «я» и обращаются к «ты», так и звучит разговор |
| language | ru | Язык, на котором строки будут петь; теги всё равно останутся английскими |
| structure | classic | Привычная схема из куплетов и припева, где каждому певцу достаётся свой куплет |
| hook | question | Вопрос в припеве сам просит ответа от второго голоса |
| vocal | unspecified | Ни male, ни female не описывают двоих, голоса вы раздадите потом |
| emotion | longing | Одна ясная эмоция, контраста и так хватает за счёт двух голосов |
| age | 25-34 | Слова под пару, о которой песня |
| theme | ниже | Свободный текст до 800 символов; на обоих героев и форму разговора хватит и четверти |
Тема, 202 символа:
Пара после ссоры, ночной разговор по телефону. Он едет последней электричкой, она ждёт на кухне. Напиши текст как диалог: его строки и её строки отвечают друг другу, припев построен на вопросе и ответе.
Генератор не всегда аккуратно делит строки между двумя героями и никак не помечает, кто что поёт. Это решаете вы. Бриф даёт другое: сырьё, в котором уже есть две точки зрения, так что раздача партий превращается в правку, а не в переписывание.
Разметка дуэта, при которой голоса не сливаются
Так выглядит готовая разметка. Текст написан специально для этой статьи. Строка Style и строка Exclude вставляются в свои поля, а метки голосов остаются английскими, хотя поют по-русски: описания и теги для Suno принято писать по-английски, а спетые слова следуют языку песни.
Style:
acoustic pop duet, warm piano, brushed drums, upright bass,
deep warm baritone male vocal, bright airy soprano female vocal,
call and response chorus, close harmony on the final chorus
Lyrics:
[Verse 1: Male vocal, deep warm baritone]
Стою на перроне, ветер под курткой,
Табло обещает последний состав.
Я столько молчал, что уже и не шутка,
А ты не смеялась, и ты была права.
[Verse 2: Female vocal, bright airy soprano]
Я кружку твою не убрала со стола,
И чайник уже дважды закипал.
Часы на стене отстают понемногу,
Они тоже ждут и глядят на дорогу.
[Pre-Chorus: Male vocal]
Скажи, где на линии станет тихо
[Pre-Chorus: Female vocal]
Скажу, когда будешь дома
[Chorus: Male and female vocals, call and response]
[Male vocal]
Свет ещё горит?
[Female vocal]
Горит.
[Male vocal]
А дверь не заперта?
[Female vocal]
Открыта.
[Male and female vocals]
Последней электричкой домой
[Bridge: Female vocal, soft, close-mic]
Я чуть не набрала сказать «не надо»,
Но в трубке услышала, как закрылись двери.
[Final Chorus: Male and female vocals in harmony]
Последней электричкой, я еду домой,
Оставь мне свет, я еду последней электричкой домой.
Exclude:
choir, gang vocals, vocal chops, autotune
Читайте это как набор решений, а не как шаблон.
Каждый голос описан один раз целиком, а дальше зовётся одним и тем же коротким именем. При первом появлении у певца полное описание, deep warm baritone и bright airy soprano, теми же словами, что и в строке Style. Дальше метки остаются Male vocal и Female vocal, каждый раз одинаковые. Не «он», не просто baritone, не man: синоним модель вполне может принять за третий голос.
Каждая смена певца стоит на границе раздела или на отдельной строке с тегом. В припеве голос меняется на каждой строке, кроме последней, которую поют оба, и у каждой смены своя строка в квадратных скобках. Не пишите (Он) в круглых скобках перед строкой: всё, что стоит вне квадратных скобок, скорее всего споют, и почему круглые скобки ничего не защищают, разобрано в статье о том, что Suno делает с вашим текстом.
«Оба» выдаётся по карточкам. Общими оставлены только последняя строка припева и финальный припев. Каждый общий раздел даёт голосам законное место слиться, и чем больше таких мест вы пишете, тем больше каши заказываете.
Бридж отдан одному голосу. Тихий бридж одним голосом делает финальный припев встречей. Заодно это раздел, по которому сразу слышно, тот ли это певец.
Строка Exclude убирает толпу. choir или gang vocals, раздувающиеся за припевом, добавляют третий и четвёртый голос, которых вы не просили, и съедают весь выстроенный контраст.
С русским текстом есть и своя забота: ударения. Если в спетой строке ударение встаёт не туда, никакая метка голоса этого не исправит. Как проверять ударения и писать слова, чтобы их не ломали, разобрано в руководстве по русским текстам для Suno.
Мелочи, от которых зависит, разойдутся ли голоса
| Слабая разметка | Разметка сильнее | Что меняется |
|---|---|---|
[Duet] сверху, ниже простой [Verse] | [Verse 1: Male vocal, deep warm baritone] | Модель знает не только сколько поют, но и кто |
male and female vocals в Style | deep warm baritone male vocal, bright airy soprano female vocal | Контраст по регистру и фактуре, а не только по полу |
(Она) перед строкой | [Female vocal] отдельной строкой | Круглые скобки рискуют быть спетыми |
baritone, потом him, потом the man | После первого раза всегда Male vocal | Одно имя на певца, никакого случайного третьего голоса |
| Каждый припев помечен как общий | Общие только заключительные строки | Меньше мест, где голоса усредняются |
| Оба голоса в одном регистре | Один низкий, другой высокий | Легче различить, труднее смешать |
Дуэт двух мужских или двух женских голосов даётся тяжелее по той же причине: пол модели ничем не помогает их развести. Опирайтесь только на регистр и фактуру. low gravelly baritone против high clean tenor даёт партиям, чем отличаться, а male vocal дважды не даёт ничего.
Если голоса всё равно сливаются
Теги повышают шансы, но ничего не гарантируют, и нейросеть может вернуть дубль, где куплет поёт не тот голос. Вот порядок действий, от дешёвого к дорогому.
Сначала просто запустите заново. Если разметка составлена правильно, следующий дубль часто ложится ближе. В Suno каждый дубль стоит кредитов, поэтому заранее назначьте себе предел, скажем три попытки, и только потом трогайте текст.
Чините только сломанный раздел. В справке Suno описана функция Replace Section, на момент написания она доступна подписчикам Pro и Premier: вы выделяете часть песни, правите её текст, и Suno генерирует два новых варианта этого куска на выбор. Если второй куплет пришёл не тем голосом, вот нужный инструмент. Верните в заголовок заменяемого раздела полную метку голоса, чтобы новому дублю было куда целиться.
Продолжайте с точки передачи. В той же справке описана функция Extend, которая заменяет весь конец песни, и музыку, и слова, начиная с выбранной вами точки. Для дуэта это можно использовать так: сгенерировать партию первого певца, а потом продлить песню с того места, где вступает второй, поставив метку второго голоса в начало новой части. Генераций уйдёт больше, зато у каждой одна задача.
Сверьте разметку с таблицей выше. Упорная каша почти всегда упирается в одну из её строк: синоним в метке, лишний общий раздел, два голоса, описанные в одном регистре.
Два прогона и сведение или вокальный синтезатор: когда тегов мало
Некоторым дуэтам одной генерации не хватает, например для релиза, где каждый голос должен звучать чисто сам по себе. Выходов два, и оба требуют настоящей работы.
Два прогона и стемы. Сгенерируйте песню дважды с одной и той же строкой Style: в первый раз все разделы отдайте ему, во второй ей. Stem Splitter в Suno (по описанию на странице продукта, работает внутри Suno Studio и Song Editor) делит трек на вокал и инструментал или на стемы числом до 12. Достаньте вокал из каждого прогона и положите оба на один инструментал в DAW, взяв его строки из одного дубля, а её из другого. Подвох серьёзный: два отдельных прогона не обязаны совпасть ни по темпу, ни по тональности, и заставить их нельзя. Готовьтесь выбрасывать дубли, пока не найдётся подходящая пара. И не рассчитывайте, что разделение стемов отделит одного певца от другого внутри одного дубля: на странице продукта описаны вокал отдельно от инструментала, стемы инструментов и основной вокал отдельно от бэк-вокала, но не отдельная дорожка на каждого певца в дуэте.
Вокальный синтезатор на два голоса. Программы вроде Synthesizer V Studio устроены иначе, чем генератор песен: ноты и текст вы вводите сами, выбираете голос, и программа поёт ровно это. Dreamtonics продаёт сам редактор и голоса отдельно, на момент написания разовыми покупками, и даёт попробовать и то и другое. В заметках к обновлениям Dreamtonics настройки голоса описаны для каждой дорожки или группы. На этом проблема каши заканчивается: его партия живёт на одной дорожке со своим голосом, её партия на другой, и смешаться они не могут, потому что одним рендером никогда и не были. ACE Studio тоже работает от MIDI-нот и текста и заявляет библиотеку из более чем 140 голосов; как там раздаются певцы по дорожкам, проверьте в документации, прежде чем на это рассчитывать. Цена такого контроля в мелодии: её придётся написать, сыграть на MIDI-клавиатуре или импортировать. Генератор мотив придумает сам, а синтезатор будет ждать, пока вы его дадите.
| Путь | Что нужно от вас | Контроль над тем, кто что поёт | Трудозатраты |
|---|---|---|---|
| Одна генерация с метками дуэта | Текст с метками, строка Style | Просьба, без гарантии | Низкие |
| Два прогона, стемы, сведение в DAW | Две генерации, DAW, терпение | Полный, если дубли совпали | Высокие |
| Вокальный синтезатор, голос на дорожку | Мелодия нотами или MIDI, текст, два голоса | Полный | Самые высокие |
Выбирайте по тому, для чего песня. Дуэт на день рождения от двух друзей вполне решается первой строкой, если сделать её аккуратно. Трек под релиз, где одна строка не тем голосом всё портит, может оправдать вторую или третью.
В любом варианте текст должен быть построен как разговор, иначе ничего из перечисленного не сработает, и эта часть от инструмента не зависит. Текст с тегами остаётся обычным текстом, его примет любой инструмент с полем для слов, но теги каждый обрабатывает по-своему, а наш генератор сделан под формат Suno.
Коротко о правах
Дуэт с ИИ-голосом, который сделан похожим на реального известного певца, поднимает вопросы о праве на голос и образ, и в разных странах они решаются по-разному, а разметка дуэта их не снимает. Это не юридическая консультация. Наша позиция по текстам, которые пишет генератор, изложена на странице отказа от ответственности: коммерческое использование разрешено, авторства над результатом мы не заявляем, тексты неисключительные, так что у другого пользователя может получиться похожий. Про то, кому вообще что принадлежит в ИИ-музыке, читайте статью о правах на музыку, созданную нейросетью.
Вопросы, которые задают про ИИ-дуэты
Можно просто написать [Duet] и на этом остановиться? Можно, и два голоса модель, возможно, даст. Но кто какую строку поёт, она знать не будет, так что раздача партий окажется её догадкой. Подписывайте разделы.
Есть ли в форме значение «дуэт» для голоса? Нет. Там unspecified, female и male. Для дуэта оставьте unspecified и раздайте голоса прямо в тексте.
Описывать оба голоса в Style или только в Lyrics? В обоих местах и одними и теми же словами. Если в Style упомянут только один голос, вся песня кренится к нему.
Сколько общих разделов уже слишком много? Безопасного числа нет, есть только направление: каждый общий раздел даёт голосам ещё одно место слиться. Держите общие строки в конце припева и в финальном припеве, а добавляйте новые, только если дубль показал, что голоса держатся порознь.
Можно ли вернуть тот же голос в следующей песне? Удержать голос от генерации к генерации и развести два голоса внутри одной песни это разные задачи. Первой посвящено руководство о том, как закрепить вокальную персону.
Что сделать прямо сейчас
- Закажите текст как разговор: POV
first, hookquestion, vocalunspecified, а в теме назовите обоих героев и напишите, что их строки отвечают друг другу. Сгенерируйте его в генераторе текстов. - Перепишите заголовки: полное описание при первом появлении каждого певца, дальше одна и та же короткая метка, каждая смена голоса на отдельной строке в квадратных скобках.
- Впишите оба голоса в строку Style с контрастом по регистру и фактуре, а в Exclude добавьте
choir, gang vocals. - Дайте себе три дубля. Если какой-то раздел упорно уходит не тому голосу, замените только его, а не начинайте заново; если песня должна быть чистой по партиям, переходите к двум прогонам со стемами или к вокальному синтезатору.