Создаём саундтрек для игры одной кнопкой при помощи нейросети

Без мам, пап и Кевина МакЛауда.

Создаём саундтрек для игры одной кнопкой при помощи нейросети

Скучное вступление, не осилил

Сегодня нейросети становятся всё более популярными, постепенно превращаясь в новый тренд. Они используются для перевода текстов, обработки фотографий, а теперь ещё и в эротической индустрии.

Заинтересовавшись данной тематикой (нейросетей!), я провёл небольшое исследование на тему применения подобных технологий обычным пользователем с целью создания собственного продукта. В моём случае — музыкальных композиций.

Мне удалось найти на удивление большое количество доступных решений при помощи которых можно достичь цель, поставленную в заголовке статьи.

Превзойти Моцарта у меня, увы, не получилось, но к бюджетным композиторам я теперь уже точно обращаться не буду. Потому что денег нет уже даже на них. А использование нейросетей давайте обсудим ниже ^~^.

Киберпанк наступил

Создание игр — процесс комплексный. Не мне писать о том, что знает каждый разработчик. Арт, музыка, звук, дизайн, код… Если арт игры можно стилизовать, а код написать плохой, потому что всё равно никто не увидит, то вот с музыкальной составляющей халтура не прокатит.

И что же мне делать?

Здесь на помощь приходит композитор, работающий с вами в одной команде. А…а если такого нет? Да и команды тоже… Ну, тогда можно тратить часы на поиск хорошей музыки с лицензией Creative Commons на специальных сайтах. Третьего варианта нет.

Но что если он всё-таки есть?

Не хочу искать. Ни композитора, ни хорошие подходящие треки. Хочу всё нажатием одной кнопки — и чтобы бесплатно и без копирайта!

Желание исполнено

Отсутствие подписки на канал этого парня приравнивается к преступлению против развития нейронных сетей и будет соответствующе наказано после восстания машин

Достаточно популярный YouTube-канал CodeParade, посвящённый разработке нейросетей и другим крайне интересным экспериментам, связанным с программированием, опубликовал в открытый доступ небольшую утилиту под названием Neural Composer.

Она представляет из себя нейросеть, написанную на Python и обученную примерно на 4 тысячах различных композиций из видеоигр. Исходный код полностью открыт и доступен на GitHub, как и исполняемый файл.

Хм, а описание звучит неплохо! Надеюсь, музыка тоже?

Выше представлен небольшой отрывок, сгенерированный при помощи Neural Composer. Через FL Studio был заменён инструмент и произведён экспорт в .mp3. Используется в одном из моих *бесчисленных* проектов

Предлагаю той части читателей, что потянулась за кнопкой увеличения громкости и начала судорожно отматывать назад к кнопке скачивания, продолжить чтение, а той части, которой ну вот вообще не понравилось — не расстраиваться. В конце-концов, это не какой-то финальный продукт, а просто небольшой эксперимент. Хотя бы порадуйтесь за игровых композиторов, которым не придётся терять работу.

Хочу так же

Для слабонервных доступна более короткая версия инструкции.

Уже загрузили Neural Composer? Нет?! Тогда вперёд на GitHub.

Загрузите утилиту, а затем распакуйте полученный архив *куда-нибудь*, желательно в пустую папку. Запустите файл «NeuralComposer.exe». Нажмите любую кнопку. Начните вертеть все рычажки, что видите, как ненормальный или будто бы у вас начался приступ какой-нибудь тропической болезни.

Краткий тур по Neural Composer. Это не таймлапс

Альтернативным способом работы с программой является прочтение инструкций и выполнение описанных в них действий. Например, начать можно с генерации случайного трека при помощи нажатия клавиши «R».

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

Есть возможность поменять инструмент, выбрав нужный на нижней панели справа, а также настроить громкость некоторых нот, скорость и громкость всего трека.

Создаём саундтрек для игры одной кнопкой при помощи нейросети

В верхней части программы располагаются странные полосочки, похожие на разноцветные воздушные шарики. Они являются компонентами нейросети и отвечают за итоговый результат её работы. Создавать песню при помощи них не очень удобно, а вот настраивать случайно сгенерированную вполне получается.

Создаём саундтрек для игры одной кнопкой при помощи нейросети

Про тайну глубокого смысла за ними я так и не узнал, поэтому единственным вариантом выбора нужного слайдера остаётся один — какой цвет Вам больше понравится.

Создаём саундтрек для игры одной кнопкой при помощи нейросети

Как только Вы решили, что всё — нажмите на клавишу «M» чтобы сохранить созданную композицию в формате MIDI. Ещё можно получить .wav-файл, только на этот раз нажав на «W». Файл будет сохранён в папке с программой.

Я решил продолжить работу, используя MIDI-файл, так как его довольно просто редактировать через приложения для работы с музыкой. А именно этим мы сейчас и займёмся, кстати.

Вы и вправду надеялись не увидеть этот логотип в статье про создание музыки?
Вы и вправду надеялись не увидеть этот логотип в статье про создание музыки?

Прослушав полученный MIDI-файл может показаться, будто… Ну, ладно, не буду выражаться нецензурно, но… Короче говоря, всё как-то не очень. Но нам так и нужно, ведь сейчас у нас появится очень хорошая возможность сделать всё ещё хуже!

Для базовой обработки композиции не потребуется музыкальное образование или 10 лет опыта работы в уличном оркестре. Ими вы можете воспользоваться и самостоятельно, при наличии таковых, конечно. Сейчас нужен только палец, да доступ в интернет. Может быть, ещё и FL Studio.

Давайте импортируем MIDI-файл нашей композиции (File → Open) и заменим его инструмент (ЛКМ → MIDITrack). Можно воспользоваться встроенными, но там всё как-то скучновато, поэтому я бы загрузил плагины от DSK. Мало того, что они работают, так ещё и бесплатны!

Успокойтесь, я и сам ничего не понимаю!
Успокойтесь, я и сам ничего не понимаю!

После этого можно экспортировать трек в любой желаемый формат (File → Export) и вставить в игру. Ну или в мусорную корзину. Всё в ваших руках, в конце концов. На этом опыт работы с нейросетями можно посчитать успешно полученным. Используйте его во благо! Ой, кстати, а нейросеть-то можно тренировать самостоятельно ( ͡° ͜ʖ ͡°).

Хочу по-другому

Создаём саундтрек для игры одной кнопкой при помощи нейросети

Помните ту часть статьи, в которой я упомянул слово «исследование» и словосочетание «большое количество доступных решений»? Лично я — нет. Спасибо за прочтение, всем до свидания.

Однако если же мой стиль написания не вызывает у вас рвотных рефлексов (вот лично у меня вызывает, представьте, каково было это перечитывать сотни раз!), и вы дочитали сей опус до этого момента, то я буду рад представить ещё один интересный бесплатный сервис, позволяющий генерировать музыкальные произведения прямо в вашем браузере!

AIVA находится в стадии бета-тестирования и предлагает возможность создания музыкальных произведений в различных жанрах при помощи «искусственного интеллекта», однако только по выбору из заранее представленных пресетов. Большая часть функций либо платная, либо попросту недоступна. И даже та, которую разработчики на собственном сайте показывают, блин!

Создаём саундтрек для игры одной кнопкой при помощи нейросети

Качество композиций получается гораздо более высоким, нежели у Neural Composer. Спрашивается, зачем я всё это про него писал тогда…

Ах да, так тут же есть целая пачка фатальных (в контексте данной статьи, прошу заметить) недостатков. Из них следует выделить однообразность.

У двух треков вообще почему-то получилась одинаковая мелодия. К тому же, не в каждую игру можно будет вставить такую музыку — уж сильно она серьёзная и напыщенная. Так её ещё и в коммерческих целях нельзя использовать с бесплатной лицензией. Вообще не наш вариант!

В итоге получается, что среди малого количества представленных решений Neural Composer является наиболее подходящим вариантом. Или нет, может я просто гуглил плохо ¯\_(ツ)_/¯

Конец

По сути, здесь я должен вставить очень осмысленное послесловие, посвящённое развитию технологий, но поскольку задерживать читателей ещё большим количеством воды и глупых шуток будет уже просто противозаконно, я остановлюсь на аккуратно приписанной ссылке на мою группу ВКонтакте, где вы в скором времени сможете найти остальное моё «творчество».

Котики. <i>Котики</i>. Автор: Я!!!
Котики. Котики. Автор: Я!!!

Ещё можете заценить мою игру про котиков и самостоятельно найти в ней трек, который я сгенерировал описанным способом! А вы думали я просто так тут распылялся? Ха-ха!

В любом случае, большое спасибо за прочтение моей писанины! Надеюсь, что мне удалось справиться с целью поделиться интересной информацией про музыкальные эксперименты. Хотя бы частично!

Автор статьи не несёт ответственности за любой ущерб/прибыль принесённый/принесённую данной статьей и описанными в ней действиями, а также за выход чьего-либо компьютера на орбиту космического пространства. Автор не является профессионалом ни в одной из сфер, про которые он пишет. Автор просто очередной недоблогер, недопозёр, который любит приставку «недо» и выкладывать свои бредовые фантазии в сеть интернет. Не будьте такими же, будьте лучше ^~^.

#нейросети #музыка

163163
39 комментариев

Всегда доставляло когда нейронки стараются распихать во все щели. Будто на 1 кодера по 5 журналистов/маркетологов/сойбоев
Ну обучают ваши нейронки через заднее место. Все приведенные отрывки звучат как куски за 5 минут на коленке. Они даже близко не помогают для композиторов. Написание музыки это не перебирание аккордов наугад. Алло!

18
Ответить

Это же просто эксперимент одного кодера, который с помощью нейронок делает всякие весёлые штуки :D

Понятно, что о промышленных масштабах речи не идёт. Но то что у себя на домашнем компьютере можно такую вещь сделать и получить хоть какой-то результат — уже ведь неплохо!

6
Ответить

Нууу как бы так сказать.... суть нейронных сетей как раз в том, чтобы их тестировали на разных типах данных. Это интересно как со стороны науки, искусства, философии так и со стороны бытовой деятельности. Обвинять какую-то технологию в том, что она пока не революционна это глупо, когда-то человечество охуевало от мысли летать, сейчас же это воспринимается как что-то обычное. Возможно, уже в мире кто-то пишет ии, который сможет сравнится с человеком в творческом ремесле.

5
Ответить

Жду генераторы метальчика и репчика...

2
Ответить

Вот, кста, есть неплохое https://djen.co/

2
Ответить

Комментарий недоступен

5
Ответить