Я занимаюсь игрой с процессуально создающей музыкой. Я надеюсь найти действительно простой API, где я могу просто вызывать инструмент, примечание, продолжительность и строку вместе с песней (я возьму что-нибудь, конечно, но это будет мое предпочтение). Есть ли библиотека, которая делает это?Какой хороший API для создания музыки через программирование?
ответ
Ваш лучший выбор - это музыкальная среда программирования, которой есть несколько.
Csound является одним из самых известных. Вот их website.
Max MSP также является еще одним широко используемым вариантом, и он также предоставляет интерфейс визуального программирования. Это, однако, коммерческий.
Другим известным вариантом (и широко используемым опытными электронными музыкантами) является SuperCollider.This является его страница.
Вот Wikipedia article, описывающий похожие языки/среды.
Вы также можете использовать общий язык программирования с нужными библиотеками для работы с аудио/музыкой. Java, например, предоставляет Java Sound API.
Хороший звонок по CSound, я забыл об этом. Я знаю, что BT использовал его, чтобы сделать одну из песен на его альбоме «The Binary Universe»: http://en.wikipedia.org/wiki/This_Binary_Universe –
Max/MSP получен из проекта Pure Data, проекта с открытым исходным кодом Miller Puckette. См .: http://www-crca.ucsd.edu/~msp/software.html –
Трудно дать конкретные рекомендации, так как вы не указали язык. Большинство языков имеют приличную библиотеку MIDI, хотя это было бы первое место, которое я бы посмотрел, если вам не нужно что-то более тяжелое, чем позволяет формат MIDI.
Возможно, вы захотите посмотреть Common Music.
Это композиция музыкальная система, которая преобразует высокоуровневые алгоритмические представления музыкальных процессов и структуры в различных протоколов управления для синтеза звука и отображения
Может быть Generative music является хорошим началом. Googling приводит пару интересных ссылок. Brian Eno создал музыкально созданную музыку для Spore.
JFugue был разработан специально для поддержки процессуального создания музыки. Это бесплатный Java-API с открытым исходным кодом (LGPL).
Кто-нибудь знает какие-либо варианты без LGPL? –
В новейшей версии JFugue, теперь в бета-версии, используется Apache License 2.0. –
Удивительный, спасибо! –
У меня есть впечатление, что вопрос, подобный этому, не проголосовали, а не как флагов «Вопросы, предлагающие нам рекомендовать или найти книгу, инструмент, библиотеку программного обеспечения, учебник или другой ресурс вне сайта». Если у автора было 1 репутация, я уверен, что все сказали бы ему задать свой вопрос на StackExchange вместо этого. – GGO