Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
DirectMusic
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
'''DirectMusic''' is a deprecated<ref name="deprecation">{{cite web |url=http://msdn.microsoft.com/en-us/library/ee418798.aspx |title= 64-bit programming for Game Developers|access-date=2009-03-03 |work=[[MSDN Library]] |publisher=Microsoft |date=April 2008}}</ref> component of the Microsoft [[DirectX]] API that allows music and sound effects to be composed and played and provides flexible interactive control over the way they are played. Architecturally, DirectMusic is a high-level set of objects, built on top of [[DirectSound]], that allow the programmer to play sound and music without needing to get quite as low-level as DirectSound. [[DirectSound]] allows for the capture and playback of digital sound samples, whereas DirectMusic works with message-based musical data. Music can be synthesized either in hardware, in the [[Microsoft GS Wavetable SW Synth]], or in a custom synthesizer. == History == DirectMusic was first released by Microsoft in 1996 as an [[ActiveX]] control called Interactive Music Architecture (IMA).<ref>{{Cite web |url=http://www.musicmachines.net/faqdm.htm |title=DirectMusic Producer FAQ |access-date=2007-10-06 |archive-url=https://archive.today/20070630111649/http://www.musicmachines.net/faqdm.htm |archive-date=2007-06-30 |url-status=dead }}</ref> It was introduced as part of the 6.1 version of the [[DirectX]] library in February 1999 and is included in all [[Microsoft Windows]] operating systems starting with Windows 98 Second Edition. DirectMusic has since been deprecated, and is not available to 64-bit applications in [[Windows Vista]].<ref name="deprecation" /> In [[Windows 7]], native 64-bit support is available for the core DirectMusic API related to timestamped MIDI but not for the performance component.<ref>[http://msdn.microsoft.com/en-us/library/ee416788(VS.85).aspx#ID4E3CAC DirectX Frequently Asked Questions]</ref> == Details == DirectMusic provides a complete system for implementing ''dynamic soundtracks'' that take advantage of [[hardware acceleration]], [[Downloadable Sounds]] (DLS), [[DirectX Media Objects]] (DMOs), advanced 3D positioning effects and several other features. DirectMusic provides composition and playback of dynamic musical soundtracks based on stored compositional material. Rather than a static playback, the music is generated on the fly, and is played with variations, and can respond to flexible program events. Using DirectMusic, it is possible to: * Load and play sounds from files or resources in [[MIDI]], [[WAV]], or DirectMusic Producer run-time format. The small file size of DirectMusic soundtracks makes it very well suited for Web applications. * Schedule the timing of musical events with high precision. DirectMusic allows timestamping of MIDI input data at the moment of arrival to a system wide reference clock. Music or sound effects composed for DirectMusic can be very flexible and can change dynamically over time or in response to a user event. DirectMusic addresses the problems of Windows' legacy ''MidiOut'' [[API]], which has shaky timing and limited real-time control. * Play from multiple sources simultaneously, each with separate timing and instrument sets. * Send [[tempo]] changes, patch changes, and other [[MIDI]] events programmatically. * Use Downloadable Sounds (DLS), an open standard by the [[MIDI Manufacturers Association]], allowing developers to output [[sample-based synthesis|'wavetable' sounds]] on audio hardware not equipped with '[[Table-lookup synthesis|wavetable]]' [[sample-based synthesis]]. The downloadable sounds can be extended to include new or customized instruments. * On computers with sound card which lack '[[Table-lookup synthesis|wavetable]]' [[sample-based synthesis]], DirectSound's ''Software Synthesizer'' ensures that message-based music such as [[MIDI]] files and DirectMusic segments sound identical on all hardware configurations rather than playing differently on different computers with different sound cards. An application can also play an unlimited variety of instruments and even produce unique sounds for individual notes and velocities. * Locate sounds in a 3D environment. * Easily apply [[Pitch (music)|pitch]] changes, [[reverberation]], and other effects. * Use more than 16 [[MIDI]] channels. DirectMusic makes it possible for any number of voices to be played simultaneously, up to the limits of the synthesizer. * Play segments on different audio paths, so that effects or [[spatial music|spatialization]] can be applied individually to each sound. * Capture MIDI data, or stream it from one port to another. * '''DirectMusic Producer''' can be used to create sound files that take full advantage of DirectMusic's interactive features. * Uses a portion of main memory as the buffer for sound card.<ref>https://learn.microsoft.com/en-us/previous-versions/windows/desktop/ee416820%28v=vs.85%29</ref> * Better [[Direct Memory Access|DMA]] method compared to VXD sound driver.<ref>https://learn.microsoft.com/en-us/previous-versions/windows/desktop/ee416769(v=vs.85)</ref> To ensure DirectMusic functions such as [[Microsoft GS Wavetable SW Synth]] work correctly, a [[Windows Driver Model|WDM]] sound driver is recommended. On [[Windows Vista]], DirectMusic uses only [[software synthesizer|software synthesis]]. Also, the DirectMusic kernel mode synthesizer that supplies the DirectMusic components with a high-resolution timer has been removed.<ref>{{cite web | url=http://support.microsoft.com/kb/943253 |title=Timing jitter and clock drift when editing or playing MIDI in Windows Vista |website=Microsoft |date=December 4, 2007 |archive-url=https://web.archive.org/web/20071214031044/http://support.microsoft.com/kb/943253 |archive-date=December 14, 2007 |url-status=dead}}</ref> [[Windows 10]] support [[computation offloading|hardware offloading]] of [[Sound effect (musical instruments)|sound effects]].<ref>{{cite web |url=https://learn.microsoft.com/en-us/windows-hardware/drivers/audio/windows-threshold--what-s-new-for-audio |title=Windows 10: What's New for Audio Drivers |website=Microsoft |date=December 15, 2021}}</ref><ref>{{cite web |url=https://learn.microsoft.com/en-us/windows-hardware/drivers/audio/audio-processing-object-architecture |title=Audio Processing Object Architecture |date=December 13, 2024 |website=Microsoft}}</ref> == See also == * [[DirectSound]] * [[MIDI]] * [[Cross-platform Audio Creation Tool|XACT]] == References == {{reflist}} == External links == * [http://msdn.microsoft.com/en-us/library/dd551277%28v=VS.85%29.aspx Microsoft's DirectMusic documentation] {{Microsoft APIs}} {{DEFAULTSORT:Directmusic}} [[Category:Audio libraries]] [[Category:DirectX|Music DirectMusic]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite web
(
edit
)
Template:Microsoft APIs
(
edit
)
Template:Reflist
(
edit
)