DirectX SDK

DirectMusicPerformance

An object of the DirectMusicPerformance class is the overall manager of music playback. It maps performance channels to a port, plays segments, dispatches messages, requests and receives event notifications, and sets and retrieves music parameters. It also has several methods for getting information about timing and for converting time and music values from one system to another.

If an application wants to have two or more complete sets of music playing at the same time, it can do so by creating more than one performance object. Separate performances obey separate tempo maps and play completely asynchronously, whereas all segments within one performance play in lock step.

The DirectMusicPerformance object is obtained by using the DirectX7.DirectMusicPerformanceCreate method.

The methods of the DirectMusicPerformance class can be organized into the following groups:

Messages SendCurvePMSG
  SendMIDIPMSG
SendNotePMSG
SendPatchPMSG
SendTempoPMSG
SendTimeSigPMSG
SendTransposePMSG
Notification AddNotificationType
  GetNotificationPMSG
RemoveNotificationType
SetNotificationHandle
Parameters GetChordmap
  GetCommand
GetGrooveLevel
GetMasterAutoDownload
GetMasterGrooveLevel
GetMasterTempo
GetMasterVolume
GetStyle
GetTempo
GetTimeSig
Reset
SetMasterAutoDownload
SetMasterGrooveLevel
SetMasterTempo
SetMasterVolume
Ports GetPortCaps
  GetPortCount
GetPortName
SetPort
Segments GetSegmentState
  IsPlaying
PlaySegment
Stop
Timing AdjustTime
  ClockToMusicTime
GetBumperLength
GetClockTime
GetLatencyTime
GetMusicTime
GetPrepareTime
GetQueueTime
GetResolvedTime
MusicToClockTime
SetBumperLength
SetPrepareTime
Miscellaneous CloseDown
  Init
Invalidate