The DirectMusic core layer manages timing and ports and provides services for managing DLS collections. It supports buffered, timestamped MIDI input and output. By default DirectMusic itself sequences the MIDI data.
The core layer also includes the Microsoft Software Synthesizer, which uses DLS to synthesize wave output from the sequenced MIDI data.
The DirectMusic performance layer is responsible for the higher-level aspects of music playback, including the loading and playback of MIDI files and the composition of music based on elements authored in DirectMusic Producer or a similar program.
The interfaces and related API elements for the core layer are found in Dmusicc.h, and those for the performance layer are in Dmusici.h.