Table of contents
-
DirectMusic
- What's New in DirectMusic
- Introduction to DirectMusic
- Getting Started with DirectMusic
-
Using DirectMusic
- Loading Audio Data
- Playing Sounds
- Performance Parameters
- Using Audiopaths
- Using 3-D Sound in DirectMusic
- Using Effects in DirectMusic
- Buffer Chains
- Using Compositional Elements
- Using Audio Scripts
- Capturing MIDI
- Advanced Topics in DirectMusic
- Related Software
- DirectMusic C++ Samples
- DirectMusic C++ Tutorials
-
DirectMusic C/C++ Reference
-
DirectMusic Interfaces
- IDirectMusic8 Interface
- IDirectMusicAudioPath8 Interface
- IDirectMusicBand8 Interface
-
IDirectMusicBuffer8 Interface
- IDirectMusicBuffer8::Flush
- IDirectMusicBuffer8::GetBufferFormat
- IDirectMusicBuffer8::GetMaxBytes
- IDirectMusicBuffer8::GetNextEvent
- IDirectMusicBuffer8::GetRawBufferPtr
- IDirectMusicBuffer8::GetStartTime
- IDirectMusicBuffer8::GetUsedBytes
- IDirectMusicBuffer8::PackStructured
- IDirectMusicBuffer8::PackUnstructured
- IDirectMusicBuffer8::ResetReadPtr
- IDirectMusicBuffer8::SetStartTime
- IDirectMusicBuffer8::SetUsedBytes
- IDirectMusicBuffer8::TotalTime
- IDirectMusicChordMap8 Interface
- IDirectMusicCollection8 Interface
- IDirectMusicComposer8 Interface
- IDirectMusicContainer8 Interface
- IDirectMusicDownload8 Interface
- IDirectMusicDownloadedInstrument8 Interface
- IDirectMusicGetLoader8 Interface
- IDirectMusicGraph8 Interface
- IDirectMusicInstrument8 Interface
-
IDirectMusicLoader8 Interface
- IDirectMusicLoader8::CacheObject
- IDirectMusicLoader8::ClearCache
- IDirectMusicLoader8::CollectGarbage
- IDirectMusicLoader8::EnableCache
- IDirectMusicLoader8::EnumObject
- IDirectMusicLoader8::GetObject
- IDirectMusicLoader8::LoadObjectFromFile
- IDirectMusicLoader8::ReleaseObject
- IDirectMusicLoader8::ReleaseObjectByUnknown
- IDirectMusicLoader8::ScanDirectory
- IDirectMusicLoader8::SetObject
- IDirectMusicLoader8::SetSearchDirectory
- IDirectMusicObject8 Interface
- IDirectMusicPatternTrack8 Interface
-
IDirectMusicPerformance8 Interface
- IDirectMusicPerformance8::AddNotificationType
- IDirectMusicPerformance8::AddPort
- IDirectMusicPerformance8::AdjustTime
- IDirectMusicPerformance8::AllocPMsg
- IDirectMusicPerformance8::AssignPChannel
- IDirectMusicPerformance8::AssignPChannelBlock
- IDirectMusicPerformance8::ClonePMsg
- IDirectMusicPerformance8::CloseDown
- IDirectMusicPerformance8::CreateAudioPath
- IDirectMusicPerformance8::CreateStandardAudioPath
- IDirectMusicPerformance8::DownloadInstrument
- IDirectMusicPerformance8::FreePMsg
- IDirectMusicPerformance8::GetBumperLength
- IDirectMusicPerformance8::GetDefaultAudioPath
- IDirectMusicPerformance8::GetGlobalParam
- IDirectMusicPerformance8::GetGraph
- IDirectMusicPerformance8::GetLatencyTime
- IDirectMusicPerformance8::GetNotificationPMsg
- IDirectMusicPerformance8::GetParam
- IDirectMusicPerformance8::GetParamEx
- IDirectMusicPerformance8::GetPrepareTime
- IDirectMusicPerformance8::GetQueueTime
- IDirectMusicPerformance8::GetResolvedTime
- IDirectMusicPerformance8::GetSegmentState
- IDirectMusicPerformance8::GetTime
- IDirectMusicPerformance8::Init
- IDirectMusicPerformance8::InitAudio
- IDirectMusicPerformance8::Invalidate
- IDirectMusicPerformance8::IsPlaying
- IDirectMusicPerformance8::MIDIToMusic
- IDirectMusicPerformance8::MusicToMIDI
- IDirectMusicPerformance8::MusicToReferenceTime
- IDirectMusicPerformance8::PChannelInfo
- IDirectMusicPerformance8::PlaySegment
- IDirectMusicPerformance8::PlaySegmentEx
- IDirectMusicPerformance8::ReferenceToMusicTime
- IDirectMusicPerformance8::RemoveNotificationType
- IDirectMusicPerformance8::RemovePort
- IDirectMusicPerformance8::RhythmToTime
- IDirectMusicPerformance8::SendPMsg
- IDirectMusicPerformance8::SetBumperLength
- IDirectMusicPerformance8::SetDefaultAudioPath
- IDirectMusicPerformance8::SetGlobalParam
- IDirectMusicPerformance8::SetGraph
- IDirectMusicPerformance8::SetNotificationHandle
- IDirectMusicPerformance8::SetParam
- IDirectMusicPerformance8::SetPrepareTime
- IDirectMusicPerformance8::Stop
- IDirectMusicPerformance8::StopEx
- IDirectMusicPerformance8::TimeToRhythm
-
IDirectMusicPort8 Interface
- IDirectMusicPort8::Activate
- IDirectMusicPort8::Compact
- IDirectMusicPort8::DeviceIoControl
- IDirectMusicPort8::DownloadInstrument
- IDirectMusicPort8::GetCaps
- IDirectMusicPort8::GetChannelPriority
- IDirectMusicPort8::GetFormat
- IDirectMusicPort8::GetLatencyClock
- IDirectMusicPort8::GetNumChannelGroups
- IDirectMusicPort8::GetRunningStats
- IDirectMusicPort8::PlayBuffer
- IDirectMusicPort8::Read
- IDirectMusicPort8::SetChannelPriority
- IDirectMusicPort8::SetDirectSound
- IDirectMusicPort8::SetNumChannelGroups
- IDirectMusicPort8::SetReadNotificationHandle
- IDirectMusicPort8::UnloadInstrument
- IDirectMusicPortDownload8 Interface
-
IDirectMusicScript8 Interface
- IDirectMusicScript8::CallRoutine
- IDirectMusicScript8::EnumRoutine
- IDirectMusicScript8::EnumVariable
- IDirectMusicScript8::GetVariableNumber
- IDirectMusicScript8::GetVariableObject
- IDirectMusicScript8::GetVariableVariant
- IDirectMusicScript8::Init
- IDirectMusicScript8::SetVariableNumber
- IDirectMusicScript8::SetVariableObject
- IDirectMusicScript8::SetVariableVariant
-
IDirectMusicSegment8 Interface
- IDirectMusicSegment8::AddNotificationType
- IDirectMusicSegment8::Clone
- IDirectMusicSegment8::Compose
- IDirectMusicSegment8::Download
- IDirectMusicSegment8::GetAudioPathConfig
- IDirectMusicSegment8::GetDefaultResolution
- IDirectMusicSegment8::GetGraph
- IDirectMusicSegment8::GetLength
- IDirectMusicSegment8::GetLoopPoints
- IDirectMusicSegment8::GetParam
- IDirectMusicSegment8::GetRepeats
- IDirectMusicSegment8::GetStartPoint
- IDirectMusicSegment8::GetTrack
- IDirectMusicSegment8::GetTrackGroup
- IDirectMusicSegment8::InitPlay
- IDirectMusicSegment8::InsertTrack
- IDirectMusicSegment8::RemoveNotificationType
- IDirectMusicSegment8::RemoveTrack
- IDirectMusicSegment8::SetDefaultResolution
- IDirectMusicSegment8::SetGraph
- IDirectMusicSegment8::SetLength
- IDirectMusicSegment8::SetLoopPoints
- IDirectMusicSegment8::SetParam
- IDirectMusicSegment8::SetPChannelsUsed
- IDirectMusicSegment8::SetRepeats
- IDirectMusicSegment8::SetStartPoint
- IDirectMusicSegment8::SetTrackConfig
- IDirectMusicSegment8::Unload
- IDirectMusicSegmentState8 Interface
-
IDirectMusicStyle8 Interface
- IDirectMusicStyle8::EnumBand
- IDirectMusicStyle8::EnumChordMap
- IDirectMusicStyle8::EnumMotif
- IDirectMusicStyle8::EnumPattern
- IDirectMusicStyle8::GetBand
- IDirectMusicStyle8::GetChordMap
- IDirectMusicStyle8::GetDefaultBand
- IDirectMusicStyle8::GetDefaultChordMap
- IDirectMusicStyle8::GetEmbellishmentLength
- IDirectMusicStyle8::GetMotif
- IDirectMusicStyle8::GetTempo
- IDirectMusicStyle8::GetTimeSignature
- IDirectMusicSynth Interface
- IDirectMusicSynthSink Interface
- IDirectMusicThru8 Interface
- IDirectMusicTool8 Interface
-
IDirectMusicTrack8 Interface
- IDirectMusicTrack8::AddNotificationType
- IDirectMusicTrack8::Clone
- IDirectMusicTrack8::Compose
- IDirectMusicTrack8::EndPlay
- IDirectMusicTrack8::GetParam
- IDirectMusicTrack8::GetParamEx
- IDirectMusicTrack8::Init
- IDirectMusicTrack8::InitPlay
- IDirectMusicTrack8::IsParamSupported
- IDirectMusicTrack8::Join
- IDirectMusicTrack8::Play
- IDirectMusicTrack8::PlayEx
- IDirectMusicTrack8::RemoveNotificationType
- IDirectMusicTrack8::SetParam
- IDirectMusicTrack8::SetParamEx
- IKsControl Interface
- IReferenceClock Interface
- DirectMusic Messages
-
DirectMusic Structures
- DMUS_AUDIOPARAMS
- DMUS_BAND_PARAM
- DMUS_BUFFERDESC
- DMUS_CHORD_KEY
- DMUS_CHORD_PARAM
- DMUS_CLOCKINFO8
- DMUS_COMMAND_PARAM
- DMUS_COMMAND_PARAM_2
- DMUS_EVENTHEADER
- DMUS_MUTE_PARAM
- DMUS_NOTERANGE
- DMUS_OBJECTDESC
- DMUS_PLAY_MARKER_PARAM
- DMUS_PORTCAPS
- DMUS_PORTPARAMS8
- DMUS_RHYTHM_PARAM
- DMUS_SCRIPT_ERRORINFO
- DMUS_SUBCHORD
- DMUS_SYNTHSTATS8
- DMUS_TEMPO_PARAM
- DMUS_TIMESIGNATURE
- DMUS_VALID_START_PARAM
- DMUS_VARIATIONS_PARAM
- DMUS_VERSION
- DMUS_WAVES_REVERB_PARAMS
- KSPROPERTY
- DLS Structures
-
DirectMusic File Format
- About RIFF
- RIFF Notation
- Common Chunks
- Audiopath Form
- Band Form
- Chordmap Form
- Container Form
- DirectSound Buffer Configuration Form
- Effects Form
- Reference List
- Script Form
- Segment Form
- Style Form
- Tool Form
- Toolgraph Form
-
Track Form
- Band Track Form
- Chord Track List
- Chordmap Track List
- Command Track Chunk
- Lyrics Track List
- Marker Track List
- Mute Track Chunk
- Parameter Control Track List
- Pattern Track Form
- Script Track List
- Segment Trigger Track List
- Sequence Track Chunk
- Signpost Track Chunk
- Style Track List
- Sysex Track Chunk
- Tempo Track Chunk
- Time Signature Track List
- Wave Track List
- Wave Header Chunk
-
DirectMusic File Structures
- DMUS_IO_BAND_ITEM_HEADER
- DMUS_IO_BAND_ITEM_HEADER2
- DMUS_IO_BAND_TRACK_HEADER
- DMUS_IO_BUFFER_ATTRIBUTES_HEADER
- DMUS_IO_CHORD
- DMUS_IO_CHORDENTRY
- DMUS_IO_CHORDMAP
- DMUS_IO_CHORDMAP_SIGNPOST
- DMUS_IO_CHORDMAP_SUBCHORD
- DMUS_IO_COMMAND
- DMUS_IO_CONTAINED_OBJECT_HEADER
- DMUS_IO_CONTAINER_HEADER
- DMUS_IO_CURVE_ITEM
- DMUS_IO_INSTRUMENT
- DMUS_IO_LYRICSTRACK_EVENTHEADER
- DMUS_IO_MOTIFSETTINGS
- DMUS_IO_MUTE
- DMUS_IO_NEXTCHORD
- DMUS_IO_PARAMCONTROLTRACK_CURVEINFO
- DMUS_IO_PARAMCONTROLTRACK_OBJECTHEADER
- DMUS_IO_PARAMCONTROLTRACK_PARAMHEADER
- DMUS_IO_PARTREF
- DMUS_IO_PATTERN
- DMUS_IO_PCHANNELTOBUFFER_HEADER
- DMUS_IO_PLAYMARKER
- DMUS_IO_PORTCONFIG_HEADER
- DMUS_IO_REFERENCE
- DMUS_IO_SCRIPT_HEADER
- DMUS_IO_SCRIPTTRACK_EVENTHEADER
- DMUS_IO_SEGMENT_HEADER
- DMUS_IO_SEGMENT_ITEM_HEADER
- DMUS_IO_SEGMENT_TRACK_HEADER
- DMUS_IO_SEQ_ITEM
- DMUS_IO_SIGNPOST
- DMUS_IO_STYLE
- DMUS_IO_STYLE_ANTICIPATION
- DMUS_IO_STYLECURVE
- DMUS_IO_STYLEMARKER
- DMUS_IO_STYLENOTE
- DMUS_IO_STYLEPART
- DMUS_IO_STYLERESOLUTION
- DMUS_IO_SUBCHORD
- DMUS_IO_SYSEX_ITEM
- DMUS_IO_TEMPO_ITEM
- DMUS_IO_TIMESIG
- DMUS_IO_TIMESIGNATURE_ITEM
- DMUS_IO_TOOL_HEADER
- DMUS_IO_TRACK_EXTRAS_HEADER
- DMUS_IO_TRACK_HEADER
- DMUS_IO_VALID_START
- DMUS_IO_VERSION
- DMUS_IO_WAVE_HEADER
- DMUS_IO_WAVE_ITEM_HEADER
- DMUS_IO_WAVE_PART_HEADER
- DMUS_IO_WAVE_TRACK_HEADER
- DSOUND_IO_3D
- DSOUND_IO_DSBUFFERDESC
- DSOUND_IO_DSBUSID
- DSOUND_IO_DXDMO_DATA
- DSOUND_IO_DXDMO_HEADER
-
Standard Track Parameters
- GUID_BandParam
- GUID_ChordParam
- GUID_Clear_All_Bands
- GUID_CommandParam
- GUID_CommandParam2
- GUID_CommandParamNext
- GUID_ConnectToDLSCollection
- GUID_Disable_Auto_Download
- GUID_DisableTempo
- GUID_DisableTimeSig
- GUID_Download
- GUID_DownloadToAudioPath
- GUID_Enable_Auto_Download
- GUID_EnableTempo
- GUID_EnableTimeSig
- GUID_IDirectMusicBand
- GUID_IDirectMusicChordMap
- GUID_IDirectMusicStyle
- GUID_MuteParam
- GUID_Play_Marker
- GUID_RhythmParam
- GUID_SeedVariations
- GUID_StandardMIDIFile
- GUID_TempoParam
- GUID_TimeSignature
- GUID_Unload
- GUID_UnloadFromAudioPath
- GUID_Valid_Start_Time
- GUID_Variations
-
DirectMusic Enumerated Types
- DMUS_CHORDKEYF_FLAGS
- DMUS_CLOCKTYPE
- DMUS_COMMANDT_TYPES
- DMUS_COMPOSEF_FLAGS
- DMUS_CURVE_FLAGS
- DMUS_EMBELLISHT_TYPES
- DMUS_NOTEF_FLAGS
- DMUS_PATTERNT_TYPES
- DMUS_PLAYMODE_FLAGS
- DMUS_PMSGF_FLAGS
- DMUS_PMSGT_TYPES
- DMUS_SEGF_FLAGS
- DMUS_SHAPET_TYPES
- DMUS_STYLET_TYPES
- DMUS_TIME_RESOLVE_FLAGS
- DMUS_TRACKF_FLAGS
- DMUS_VARIATIONT_TYPES
- DirectMusic GUIDs
- DirectMusic Return Values
-
DirectMusic Interfaces