Cmix в реальном времени
![]() | В этой статье есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
Real-Time Cmix (RTcmix) — один из MUSIC-N языков музыки компьютерного программирования . RTcmix произошел от программы MIX, разработанной Полом Лански в Принстонском университете в 1978 году для выполнения алгоритмической композиции с использованием цифровых аудиофайлов на IBM 3031 мэйнфрейме . После синтеза добавления функций в 1980-х годах программа была переименована в Cmix. Возможность работы в реальном времени была добавлена Дэвидом Топпером, Джоном Гибсоном, Брэдом Гартоном и Дугласом Скоттом в середине 1990-х годов. Кроме того, была добавлена поддержка подключения TCP- сокетов, интерактивное управление планировщиком , а также возможность встраивания механизма синтеза в полнофункциональные приложения, такие как Max/MSP .
На протяжении многих лет Cmix/RTcmix работал на различных компьютерных платформах и операционных системах, включая NeXT , Sun Microsystems , IRIX , Linux и Mac OS X. Это и всегда был проект с открытым исходным кодом , что отличало его от коммерческих синтезаторов и музыкального программного обеспечения. В настоящее время он разрабатывается группой исследователей компьютерной музыки, как академических (в Принстонском университете , Колумбийском университете и Университете Индианы в Блумингтоне ), так и частных.
RTcmix имеет ряд уникальных (или весьма необычных) особенностей по сравнению с другими языками синтеза и обработки сигналов . Во-первых, он имеет встроенный анализатор MINC , который позволяет пользователю писать код в стиле C в файле партитуры, расширяя возможности алгоритмической композиции и делая его в некоторых отношениях ближе к более поздним музыкальным программам, таким как SuperCollider и Max/. МСП . Он использует файл инструкций с одним сценарием (файл партитуры), а также процедуры синтеза и обработки сигналов (называемые инструментами), загружаемые как разделяемые библиотеки . Это отличается от языков MUSIC-N , таких как Csound , где инструменты существуют во втором файле, написанном на языке спецификаций, который строит подпрограммы из простых строительных блоков (организованных как коды операций или генераторы единиц ). Однако RTcmix имеет функциональность, аналогичную Csound и другим языкам компьютерной музыки, а их общее происхождение означает, что сценарии, написанные для одного языка, будут выглядеть чрезвычайно знакомыми (если не сразу понятными) для пользователей другого языка.