Заметки по тестированию и использованию Suno

Здесь я (Алексей Устинов, далее AU) размещаю свои заметки (в обратном порядке: новые - выше), которые могут быть полезными для пользователей Suno. При этом, я не претендую на периодичность и полноту, системность освещения того или иного вопроса - Suno очень емкая и развивающееся система.

Suno Wiki.
Suno Adv
Invite User

Suno, как аранжировщик (10 октября 2024)

Завершил все 5 разделов по теме Suno как аранжировщик.

Тест #1 / от спетой мелодии, текста... ("По-Гру-Гла-Но ...").

Тест #2 / от спетой мелодии, текста... ("Красота в глазах ...")

Тест #3 / от реальной песни и текста...

Тест #4 / backing track от гармонии...

Тест #5 / инструментальные вставки от исходника...

Детские голоса в Suno (30 сентября 2024)

Это голос Алисы (12 лет, Новосибирск). Одна из тестовых генераций, которая получилась...
* где Extended, там использовался аудио-фрагмент (режим Audio Input). Т.е. данная песня - это "продолжение".


v 1.1 Зритель с 10-го ряда... / Стихи Нины Орловой. extended*

v 2.1 Лето / Текст ИИ + корректитировка AU. extended*

Детские голоса в Suno (23 сентября 2024)

* где Extended, там использовался аудио-фрагмент (режим Audio Input). Т.е. данная песня - это "продолжение".

"Чингачгук". Стихи Нины Орловой.

v 1.1 Чингачгук Happy (девочка) / KdGSing2Re, extended*

v 2.1 Чингачгук Positive (девочка) / KdGSing2Re, extended*
Вспоминал мой папа часто Как любил ходить в кино Детям фильмы про индейцев Запрещать запрещено!
Чингачгук, стрельба, погоня! Вдоль ущелья мчаться кони И выносит из огня Чингачгук ... меня! Пау! Вау! Трубка мира И копировать кумира Пау! Вау! Очень просто, Если в сказку верит взрослый!
Без игры, не жизнь, а скука, Как шаман, зажму варган, Вот готов для стрел и лука Из бизоньих шкур колчан.

"Лето". Текст ИИ с моей (AU) корректировкой.

v 2.0 Лето No style (девочка) / KdGSing1, extended*


v 2.1 Лето No style (девочка) / KdGSing1, extended*
Дети бегают, смеются Вдоль дорожек в парке днём Солнце светит в синем небе Лето, радость за окном
Мальчик на велосипеде С куклой девочка своей На траве футбольный мячик Разбегись и сильно бей
Лето, лето - наше время Лето, лето - всё для нас Мы за лето все окрепнем И вернёмся в школу в класс
Можно прыгать, можно плавать Можно петь и рисовать Весело друг с другом спорить Можно просто танцевать

Suno издевается! No style (детский хор) / Rdst_SngH, extended*

...
Да, это одна из генераций в попытке получить детский вокал. Не смог удержаться и не поместить этот, реально классный пример "издевательства" :-) Да, лишь в 3-5% случаев пока удается получить детский голос, остальное - М., Ж. и микс (какой-то агендерный)... Я многое что использовал в качестве "исходника"..., думаю слушатели догадаются, какая композиция тут была в основе :-)

Детские голоса в Suno (7,11 сентября 2024)

В задании Style в Suno детских голосов нет. Самое близкое это Vocaloid др. синтетика. Поэтому многие спрашивали об этом. Вот мои первые тестовые генерации... честно, дело "темное". Как получу более менее стабильный и относительно качественный результат, дополню эту заметку комментариями и примерами.


* где Extended, там использовался аудио-фрагмент (режим Audio Input). Т.е. данная песня - это "продолжение".

"Проверяем...".
Ла-ла-ла, Ла-ла-ла! Ту-ба-ду-ба, тра-та-та! Ой-Ой-Ой, Ай-Ай-Ай! Хо-Хо-Хо! и Ха-Ха-Ха!

Проверяем, проверяем новый детский датасет. Потому, что все считают - в Суно детских песен нет! Пробовал я во-ка-ло-ид - тут японцы мастера. Но на практике он явно аниме, не детвора!

Суно, Суно почему деток нет вокала? Может это потому, что женщин в Суно мало? Суно, Суно начинай детский голос генерить! Суно, Суно продолжай, как процесс остановить?

v 1.0 Проверяем... No style (мальчик) / KdBSing1, extended*

v 1.1 Проверяем... No style (мальчик) / KdBSing1, extended*

v 2.0 Проверяем... No style (девочка) / KdGSing1, extended*

v 2.1 Проверяем... No style (девочка) / KdGSing1, extended*

v 3.0 Проверяем... No style (смешанная группа) / kSpDfTndBck1, extended*

v 3.1 Проверяем... No style (смешанная группа) / kSpDfTndBck1, extended*

Suno: Гармонизация и Autotune?* (16 августа 2024)

В примере #1. A cappella (Vorob) Suno к вокалу создал(о) различные аккомпанементы. Я тогда задумался, а можно ли "подправить" вокал - сделать гармонизацию, autotune? Сначала сделал несколько тестовых фрагментов на чужом материале, но не смог быстро согласовать с авторами публикацию тестов...

Некоторые дамы не выходят из дома без макияжа, а некоторые вокалисты - не показывают свой вокал без обработки...

У меня, правда, здесь выбора не было - пришлось дурачиться, записал свой голос, "мимо нот и ритма" 😄

Перейти в раздел Suno: Гармонизация и Autotune.

Тестирование режима Audio Input (15 августа 2024)

Подготовил страницу с результатами генерации в Audio Input, как приложение к статье "Suno prompt (стиль) = рыбалка. Альтернатива?" (Хабр, 8 авг. 2024). Раздел включает и сами фрагменты (исходный данные), которые подгружались в Audio Input. Также приведены Style, Lyrics, некоторые параметры сгенерированных треков - темп, тональность, использованные Suno аккорды.
Краткие выводы:

1. С помощью режима Audio Input можно точно задать, как темп, так и тональность.

2. Suno может смешивать стили - то, что есть в "исходнике" + то, что задано в Style.

3. Suno, при одних и те же "исходнике" и Style, при генерации применяет разные формы (структуру - Intro, Verse,...).

Панграммы для записи Dataset (13 июля 2024)

Напомню, превышать длительность в 1 мин. нельзя!

Вот текст, который я использовал. Не факт, что он самый правильный. Помимо записи речи с максимальным охватом диапазона (верх/низ), я что-то говорил по-громче (почти крик), а что-то по-тише (почти шепот). Плюс к этому, пропел раздельно гласные (7-8 всего), тоже в достаточно широком диапазоне, и вставил их в разрыв речи, "случайным" образом. В записи вырезал вдохи, паузы, повторы, срезал низ/верх (EQ, 150Hz/8kHz), немного "поджал" (Comp), нормализовал и сохранил в mp3/mono/320kbps (просто, чтобы был меньше размер).

Но, ... поведение Suno крайне вероятностно, эти рекомендации не гарантируют желаемый результат... и это весело.

" Аэрофотосъёмка ландшафта уже выявила земли богачей и процветающих крестьян. Бегом марш! У месторождения кварцующихся фей без слёз хочется электрическую пыль и Блеф. Борец за идею Чучхэ выступил с гиком, шумом, жаром и фырканьем на съезде — и в ящик № 1234 5678 90. В чащах юга жил бы цитрус? Да, но фальшивый экземпляр! Всё ускоряющаяся эволюция компьютерных технологий предъявила жёсткие требования к производителям как собственно вычислительной техники, так и периферийных устройств. Вступив в бой с шипящими змеями — эфой и гадюкой, — маленький, цепкий, храбрый ёж съел их. Государев указ: душегубцев да шваль всякую высечь, да калёным железом по щекам этих физиономий съездить! Друг мой эльф! Яшке б свёз птиц южных! Завершён ежегодный съезд эрудированных школьников, мечтающих глубоко проникнуть в тайны физических явлений и химических реакций. Здесь фабула объять не может всех эмоций — шепелявый скороход в юбке тащит горячий мёд. "

Свой голос в Suno. Процедура по шагам (12 июля 2024)

Из переписки понял, что нужно дать более строгое описание процедуры, вот она:

  1. Жмем на [Audio Input] и загружаем свой Dataset (DS). 60 сек превышать нельзя. Назвать свой набор лучше сразу по-короче*.

  2. В списке треков появится DS с вашим названием и пометкой no style, около него кнопка [Extend] - жмем.

  3. Трек появится в левой колонке (на десктоп) с указанием длительности, например, 00:59. Нам нужен весь DS, т.е. генерим "от конца".

  4. В поле Lyrics вбиваем текст песни. Тут несколько важных моментов: еще до самого текста желательно вставить [Strictly follow the lyrics below], далее [Instrumental Intro], [Short Scat] или: Ду-ба, ду-ба, ... Дело в том, что Suno часто не сразу "поет" правильно, а вставляет какой-то бред - бормотание, искаженные слова и пр. Хотя, может и вообще не соблюдать структуру в Lyrics. Корявое и лишнее при финальной сборке в DAW можно отрезать.

  5. Теперь вбиваем Style. Мне показалось, что лучше что-то простое, вроде [Pop, Acoustic, Melancholy]. Главное, что не следует (категорически) добавлять в стиль характеристики голоса, типа Male voice, Female vocals или Resonant Singer. Я не все протестировал, но при таких командах Suno применял(о) свой голос в соответсвие со стилем.
  1. Даем название новой композиции, созданной как продолжение вашего DS*.

  2. В этой же колонке есть большая кн. [EXTEND] (т.е. продолжить наш DS) - жмем. Система создает 2 трека, в них DS не включается. По идее, это и есть песни с вашим голосом.

  3. Выбираем самый удачный вариант. Если в нем есть ошибки, то можно уже его "продолжить" [снова Extend] от какого-то времени. Помня, что чем меньший фрагмент берется за основу, то тем более "вольным" будет продолжение. Т.е. если играть от, например, 00:10, может сгенериться куплет или припев, непохожий на то, что в основе. А если, 01:45, то почти такое-же как в исходном. Правда, даже и в новых 2-х треках будут отличия :-). Да, в Lyrics вставляем нужный текст, а в Style - тоже самое, что было в исходном (в удлиняемом треке).

  4. Осталось запустить DAW и собрать финальную версию из удачных кусков. Объединением в Suno я пользовался только для экспериментов, а для финальных треков - ни разу. Т.к. надо еще мастерить - где-то эффекты, где-то баланс vocal/BGM изменить, местами ударения подправить и пр.
* для порядка с именами / файлами, я делаю так:
  • DS1 - мой набор
  • LM_DS1_v1 генерируемый трек (LM - "Лимбический мозг", наз. песни), v1 - версия. Сразу после генерации подправляю версию: LM_DS1_v10 и LM_DS1_v11
  • LM_DS1_v10_ad1 - если делаю дописку к уже сгенерированному. Соотв. появятся еще LM_DS1_v10_ad10 и LM_DS1_v10_ad11 и т.д.

Как заставить Suno петь моим голосом? (7 июля 2024)

Всю эту неделю я тестировал режим Audio Input с целью получить песни в "своем исполнении". Сделал несколько 1-минутных Datasets из своего голоса. Задача - "вложить" в 1 мин:

  • все фонемы*
  • максимально широкий высотный диапазон (в речи он уже, чем в пении)
  • разные исполнительские приемы - "с опорой", "на придыхе".
* фонетически представительный текст - т.е. текст, где все фонемы представлены, причем, с учетом статистики реальной речи (Обычно длинный - на 5-7 мин. - отказался).

панграмма - фраза, предложение, включающая все буквы алфавита - применил.
  • ds1 - взял вокал на английском из большого набора для RVC
  • ds2 - наговорил текст песни "Мне просто не повезло", чтобы присутствовали все нужные фонемы именно для ее генерации. При этом, я старался выходить за высотный диапазон обычной речи - старался завышать и занижать нот по наклонной (вверх/вниз) или скачками.
  • ds2i - то же, что и ds2, только с реверсом по времени (в обратном порядке).
  • ds2R - то же, что и ds2 , но с перепутанной последовательностью фраз и слов.
  • ds3 - несколько панграмм скороговоркой, меняя тон скачками. Также добавил пропетые гласные (а,е,о,у...) в разных регистрах. Причем, я каждую гласную вставил в разрыв панграмм.
  • ds4 - пение панграмм в быстром темпе с максимальным высотным диапазоном.

Как (предположение) в этом режиме работает Suno?

Алгоритм пытается найти, распознать "музыкальный смысл" - ритмика, гармония, мелодические линии, форма, аккомпанемент, а затем "дописать" фонограмму, учитывая и Promt (введенный нами Стиль). Поэтому, при создании голосовых Dataset после ds1 я старался "спутать" материал, чтобы никаких разумных звуковысотных линий (как в пропевании текста) там не встречалось.

На генерацию влияет как исходный материал, так и Стиль. Так с ds1 и ds4 (где было пение) результат тоже был более "певучим".

С ds2i Suno работать не стал и применил дефолтный голос - потому, видимо, что "правильных" фонем не обнаружил (они же были перевернуты).

Мои наборы, скорее, в регистре баритона и когда я выбирал стиль, как Soul, где тесситура повыше, то Suno явно добавлял чужие фонемы, а иногда и просто заменял мои. Плюс пение приобретало явную подвижность - мелизмы, опевания то, чем я так хорошо не владею. В итоге голос уже меньше походил на мой - кто-то в моей одежде, но движется с несвойственной мне походкой.

В задании стиля нельзя указывать что-то на голос: Male voice, Lounge Singer и т.п. В этом случае Suno применит голос по своему выбору.

Ваш голос (с одним и тем же Dataset) будет звучать по-разному не только в разных Стилях, но и в генерации песен с одним и тем же Стилем. Связано это с тем, что каждый раз выбирается новая модель или новое случайное число (Seed) того же алгоритма.

Suno редко строго следует тексту (Lyrics) и командам, как [Intro], [Verse] и др. Поэтому я стал постоянно добавлять в начале Lyrics такую команду [Strictly follow the lyrics below] - в 70% случаев это помогает.

В конечном итоге, чтобы собрать готовую песню со своим голосом, я делал несколько версий, выбирал удачную, иногда (когда часть текста отсутствовала вообще или пропевалась криво) - дописку к ней с недостающим текстом. Затем все пересобирал в Reaper. Ну, и слегка "мастерил."

Версии со своим голосом я сделал для "Милый идиот", "Мне просто не повезло", "Город мой".

Вчера (6 июля 2024) сочинил и "исполнил" на английском песню- "подсказку" - "Suno sings in my voice!". В ней краткое пояснение о Dataset и есть обращение к МакКинли Хибиттсу (McKinley Hibbits), тому коллеге из Калифорнии, который помог мне вникнуть в ИИ технологию RVC (замена тембра вокалиста). Все мои песенные примеры в каталоге.

Режим Audio Input (1 июля 2024)

Потрясающая функция: Suno "дорисовывает, дописывает" то, что ему подсунули! Длительность фрагмента 6 - 60 секунд. Также, как и с картинкой - точность "дописки" зависит от того, какой длительности фрагмент вы ему "скормили". Точнее, загрузить можно и 60 сек., но продолжение указать с 0:05. В последнем случае Suno, скорее всего, "нечего будет повторять" :-)

В принципе, в 1 минуту может уложиться куплет, припев и короткий инструментальный проигрыш. Suno анализирует этот материал и дальше (Extend) генерит 2 варианта чего-то подобного, согласно введенного текста или без него (опция Instrumental).

Судя по всему, влияние заданного стиля в этом режиме зависит от длительности используемого фрагмента. Если 10 сек. - то влияние очень заметное, если 30 сек. - стили смешиваются (заданный и тот, что во фрагменте), 60 сек. - очень слабое. Пробовал режим на нескольких треках, а для песни "Милый идиот" разместил варианты на сайте - см. версию 4.0. В стиле указывал "The same style". Причем, Suno копирует не только инструменты, но и исходный голос (оригинальная версия есть в конце стр.).

Но! Самое удивительное в том, что режим позволяет сделать песню с вашим голосом! Тут не всё идеально работает, однако, стоит пробовать. Надо:

1. Собрать 60 сек. записи своего голоса (нечто вроде короткого Dataset для RVC). Желательно "мимо нот и ритма", в максимально широком высотном диапазоне и присутствием всех фонем.

2. Загрузить это как фрагмент для Audio Input - Suno "получит" только голосовой материал, и никакие, по сути, параметры стиля (гармония, темп, инструменты и пр.), не будут ему представлены.

3. Задать текст, выбрать стиль и ... Вуаля! - вот вам песня Suno с вашим голосом. Смотрите примеры и комментарии к ним.

Нюансы. Для своего Dataset я брал 60 сек. английской части своего большого (24 минуты) набора, что использовался для создания модели (NVM). С этим материалом Suno сгенерил вполне похоже как на английском, так и на русском. А вот когда я собрал фрагмент (также 60 сек) для одной клиентки из её пения на русском, перемешав слоги, чтобы нарушить мелодию и гармонию, то при генерации в Suno на русском, всё было нормально, а на английском система стала "подсовывать" чужие фонемы - т.е. тембр уже был не очень похожим.

Обратите внимание, у вас нет права загружать материал, который (напоминалка появляется при загрузке) вам не принадлежит! Конечно, было бы классно загрузить, например, 60 сек. "The Road to Hell" / Криса Ри, а затем сгенерить что-то со своим текстом, но ...

Структура песни - команды! (20 июня 2024)

Я уже пояснял этот момент, как в краткой инструкции, так и в статье. Как и с заданием стиля (Style / Promt), здесь очень полезно изучать готовые примеры Suno других пользователей - видно, что было задано и как "отработано".

Фактически, команды не ограничены каким-то списком (как в Wiki). Suno часто "понимает" и "произвольное" задание, если оно сделано максимально ясно, т.е. простым языком. Вот в песне "Хочешь ..." (ссылка) мне нужно было, чтобы текст пропевался медленнее. Я попробовал в начале текста команду [half tempo singing melody], т.е. "пение в два раза медленнее, чем музыка". В этой песне, кстати, одни версии с этой командой, а другие - без.

Что-то Suno исполняет, а что-то нет. Я вот неоднократно пытался сделать песню с мужским и женским голосом, а также с пением дуэтом (видел подобное) - ставил в разных частях текста [Female voice], [Male voice], [Chorus duet] - не получалось. А в какой-то песне Suno в конце добавил припев женским, хотя в стиле было указано [Male voice].

Я думаю, это зависит от стиля, точнее "модели", которую Suno выбирает к заданному нами стилю.

Задание стиля (Style / Promt) (08 июня 2024)

Основные моменты приведены в краткой инструкции и в статье на Хабре. До того, как собирать свой каталог, я смотрел Promt'ы у других пользователей, читал Wiki. Сначала, когда не очень хорошо понимал сам принцип генерации в Suno, я полагал, что есть строгая система команд.

Практика показала, что это не так. Конечно, я придерживался "своего" правила: "Сначала стиль/ритм, потом голос, потом всё остальное"... Но часто я не понимал, как терминами из Wiki задать стиль, особенно, если это не мэйнстрим, а что-то не очень популярное. Например, песня для театра "Музыкальной комедии" - как современная оперетта и т.п.

Тогда я старался смотреть чужие примеры и копировать стиль. Иногда он был задан ясно и строго, иногда - набор, мешанина (видимо, в надежде, что что-то из приведенного сработает).

Также я взял за правило записывать в раздел Suno в Obsidian стили ко всем примерам, экспериментам, которые делал (уже более 400-х). А в Suno я почти все отработанные треки удаляю, чтобы не усложнять себе работу.

УдарЕния, ударе́ния или ударееения? (29 мая 2024)

Что-то об этом есть в статье. и что-то в инструкции.

Я пробовал все способы, но написание гласной заглавной буквой, показалось мне более надежным. Suno почти всегда делает акцент в этом случае. Но, проблема ведь в том, что ударение в слове, по-хорошему, должно совпадать с сильной (или достаточно сильной) долей в ритмической сетке. А это далеко не всегда так.

Для установки значка ударения (надстрочного диакритика у лингвистов) я просто копировал букву из набора а́, е́, и́, о́, у́, ы́, э́, ю́, я́ . Но его можно получить и иначе: в Word'е надо поставить курсор после буквы, а затем набрать 0769 при нажатой левой клавише Alt.

© 2009-2024 Alexey Ustinov