DirectMusic
DirectMusic является устаревшим [1] компонент Microsoft DirectX API, который позволяет создавать и воспроизводить музыку и звуковые эффекты, а также обеспечивает гибкий интерактивный контроль над способом их воспроизведения. С архитектурной точки зрения DirectMusic представляет собой набор объектов высокого уровня, построенный на основе DirectSound , который позволяет программисту воспроизводить звук и музыку без необходимости переходить на столь низкий уровень, как DirectSound. DirectSound позволяет захватывать и воспроизводить образцы цифрового звука, тогда как DirectMusic работает с музыкальными данными на основе сообщений. Музыку можно синтезировать либо аппаратно, в Microsoft GS Wavetable SW Synth , либо в специальном синтезаторе.
История
[ редактировать ]DirectMusic был впервые выпущен Microsoft в 1996 году как элемент управления ActiveX под названием Interactive Music Architecture (IMA). [2] Он был представлен как часть библиотеки DirectX версии 6.1 в феврале 1999 года и включен во все операционные системы Microsoft Windows, начиная с Windows 98 Second Edition. DirectMusic с тех пор устарел и недоступен для 64-разрядных приложений в Windows Vista . [1] В Windows 7 встроенная 64-разрядная поддержка доступна для основного API DirectMusic, связанного с MIDI с отметкой времени, но не для компонента производительности. [3]
Подробности
[ редактировать ]DirectMusic предоставляет полную систему для реализации динамических саундтреков , использующих преимущества аппаратного ускорения , загружаемых звуков (DLS), медиа-объектов DirectX (DMO), расширенных эффектов 3D-позиционирования и ряда других функций. DirectMusic обеспечивает создание и воспроизведение динамических музыкальных саундтреков на основе сохраненного композиционного материала. Вместо статического воспроизведения музыка генерируется «на лету», воспроизводится с вариациями и может реагировать на гибкие события программы. Используя DirectMusic, можно:
- Загружайте и воспроизводите звуки из файлов или ресурсов в формате MIDI , WAV или DirectMusic Producer. Небольшой размер файла саундтреков DirectMusic делает его очень подходящим для веб-приложений.
- Планируйте время музыкальных событий с высокой точностью. DirectMusic позволяет ставить временные метки входным MIDI-данным в момент их поступления на общесистемный эталонный тактовый сигнал. Музыка или звуковые эффекты, созданные для DirectMusic, могут быть очень гибкими и могут динамически меняться с течением времени или в ответ на пользовательское событие. DirectMusic решает проблемы устаревшего MidiOut API для Windows , который имеет нестабильную синхронизацию и ограниченное управление в реальном времени.
- Играйте из нескольких источников одновременно, каждый из которых имеет отдельный тайминг и набор инструментов.
- Отправляйте изменения темпа , изменения патчей и другие MIDI- события программно.
- Используйте Downloadable Sounds (DLS), открытый стандарт Ассоциации производителей MIDI , позволяющий разработчикам выводить «волновые» звуки на аудиооборудование, не оснащенное « волновым » синтезом на основе сэмплов . Загружаемые звуки можно расширить, включив в них новые или настроенные инструменты.
- На компьютерах со звуковой картой, в которой отсутствует « волновой таблицы » синтез на основе семплов DirectSound , программный синтезатор гарантирует, что музыка на основе сообщений, такая как MIDI- файлы и сегменты DirectMusic, звучит одинаково на всех конфигурациях оборудования, а не воспроизводится по-разному на разных компьютерах с разными звуковыми картами. Приложение также может играть на неограниченном количестве инструментов и даже создавать уникальные звуки для отдельных нот и скорости.
- Найдите звуки в трехмерной среде.
- Легко применяйте высоты тона изменения , реверберацию и другие эффекты.
- Используйте более 16 MIDI- каналов. DirectMusic позволяет одновременно воспроизводить любое количество голосов, в пределах возможностей синтезатора.
- Воспроизводите сегменты на разных аудиопутях, чтобы эффекты или пространственность можно было применять индивидуально к каждому звуку.
- Захватывайте MIDI-данные или передавайте их с одного порта на другой.
- DirectMusic Producer можно использовать для создания звуковых файлов, которые в полной мере используют интерактивные функции DirectMusic.
В Microsoft Windows Vista DirectMusic использует только программный синтез . Кроме того, был удален синтезатор режима ядра DirectMusic, который снабжает компоненты DirectMusic таймером высокого разрешения. [4]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Jump up to: а б «64-битное программирование для разработчиков игр» . Библиотека MSDN . Майкрософт. Апрель 2008 года . Проверено 3 марта 2009 г.
- ^ «Часто задаваемые вопросы по DirectMusic Producer» . Архивировано из оригинала 30 июня 2007 г. Проверено 6 октября 2007 г.
- ^ Часто задаваемые вопросы по DirectX
- ^ Дрожание синхронизации и дрейф часов при редактировании или воспроизведении MIDI в Windows Vista.