Всем привет. Как-то давно я делал виртуального композитора для создания 8-бит музыки, т.к. сам люблю такую музыку и делаю, но в итоге забросил это дело. Я даже писал об этом и выкладывал демки (вот и вот). На днях я немного доработал его + добавил свои синтезаторы (вот и вот) в него + банки пресетов к ним.
Кстати там же можете добавлять новые пресеты и сохранять их. Программа написана на VB6.
Конечно музыкой это назвать нельзя (из-за кривого алгоритма, который я разработал давно, когда еще и музыку толком сам не умел делать и программировать не умел), но поиграться можно.
Для создания нового трека нужно придумать имя трека и ввести его в поле Name, если поле ничего не содержит оно заполнится произвольным числом. На основе имени создается трек (вычисляется хэш и это значение используется в качестве зерна псевдослучайного генератора), т.е. имя будет однозначно идентифицировать трек. Поле Tempo задает темп. Правой кнопкой мыши по треку - открывает окно синтезатора трека, можно менять параметры тем самым изменяя звучание. Левой кнопкой по паттерну - просмотреть паттерн. Никаких поверок нет, так что не нужно туда вводить неправильные значения иначе программа "рухнет". При генерации плейлиста на мой взгляд лучше оставить Minor_D, Oriental и Sad - получаются более-менее адекватные треки которые можно потом допилить в любой DAW.
Также программа может зависнуть (опять-таки из-за кривого алгоритма) при создании трека.
Для создания пресетов для синтезаторов выкладываю отдельно программу описание и ссылка здесь.
Новую библиотеку пресетов можно скачать здесь.
Некоторые найденные интересные треки:
45645
Хакер
VBStreets.ru
Телепат
681
60000
43964
412
44170
30691
28259
56865
38399
basic
48029
space
73180
41990
52528
7902
95280
Версия 1.0
Скачать.
Версия 1.1
Скачать.
Версия 1.2
Скачать.
Версия 1.3
Скачать.
Версия 1.4
Скачать.
Удачи!
Трек gamedev ничо так, мелодичненький :)
Прикольная штука. А можно как-то экспортировать полученный трек в wav, ogg, или какой-нибудь трекерный формат?
Занятно. Какой принцип работы? Собирается из готовых кусков или и они генерятся?
Vitorio
> Прикольная штука. А можно как-то экспортировать полученный трек в wav, ogg, или
> какой-нибудь трекерный формат?
В данной реализации пока нет.
Ты если хочешь можешь записать через стереомикшер.
fantomass
> Занятно. Какой принцип работы? Собирается из готовых кусков или и они
> генерятся?
Генерируется. Сначала создается структура трека (вступление, куплеты, припевы и т.д.)
Потом для каждой части генерируется паттерны. Ритмическая составляющая генерируется случайно, а потом над каждым патерном производятся случайные операции (копировать/вставить) чтобы был повторяющийся рисунок. Также для переходных паттернов модифицируется окончание паттерна. Ноты генерируются так - случайные числа проецируются на текущую музыкальную гамму. Соседние треки не учитываются, поэтому звучание местами корявое, но это старый алгоритм.
Эта реализация не использует FX трек (4 трек его можно заметить почти в каждом треке в середине трека) это должно было быть типа "ямы", но алгоритм я пока не придумал, поэтому там во всех треках один и тот же пресет.
Vitorio
> А можно как-то экспортировать полученный трек в wav, ogg, или какой-нибудь
> трекерный формат?
Не сложно перезаписать это с помощью любого аудио редактора, просто выбрать в микшере источник записи "What U Hear", даже никаких проводов не нужно.
the trick опередил.
the trick
Радует разнообразие, некоторые варианты очень достойны, такой синтезатор был бы очень кстати в какой-нибудь мини-игре, чтобы играл всё время что-то новенькое.
Небольшой баг - если остановить недоиграный трек, создать новый и запустить его, то в самом начале слышен кусок старого трека.
Mikle
Там очень полно багов ) Будет время буду исправлять и буду внедрять новый алгоритм. Была еще такая мысль сделать алгоритмы в виде DLL, чтобы подключать их как VST, но только каждый свою музыку будет генерировать и использовать свои синтезаторы.
понравилось (подкупает своей легкостью - вся задача только придумать слово/цифру)
можно даже залипнуть ненадолго.
интересно увидеть развитие проекта)
the trick
> алгоритмы в виде DLL
Может какой-нибудь луа лучше?
Темп, кстати, тоже рандомный?
идея забавная. весело, если бы так в какой-нибудь игре можно было бы редко находить пластинки с музыкой (как в майнкрафте, например), но каждый раз рандомно сгенеренной.
fantomass
> Может какой-нибудь луа лучше?
Никогда не сталкивался с этим. Dll будет проще для меня.
fantomass
> Темп, кстати, тоже рандомный?
Да. От 90 до 189, но ты можешь его менять в процессе. В быстрых мелодиях звуки сливаются, нужно еще параметры для пресетов делать для какого темпа может использоваться тот или иной пресет.
Когда компьютер сочиняет музыку лучше чем ты...
=)
the trick
> Dll будет проще для меня.
Ну как прикрутишь, поковыряй и скрипты. Вещь очень удобная и полезная при любом раскладе ;)
Не думал, что мой никнейм может послужить зерном для такой мелодии, но она звучит.
Как освобожусь немного сделаю побольше пресетов для синтезаторов, чтобы звук был более разнообразным.
Кстати у меня еще есть такой синт, может его тоже в дополнение поставлю (напоминает 16-битные сеговские звуки):
Будет выбираться либо TrickFM либо STDCHIP.
Тема в архиве.