Microsoft DirectX 8.0 (C++)

IDirectMusicPerformance8

The IDirectMusicPerformance8 interface is the overall manager of music playback. It is used for adding and removing ports, mapping performance channels to ports, playing segments, dispatching messages and routing them through tools, requesting and receiving event notification, and setting and retrieving 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 needs two complete sets of music playing at the same time, it can do so by creating more than one performance. Separate performances obey separate tempo maps, and so play completely asynchronously, whereas all segments within one performance play in lock step.

IDirectMusicPerformance8 supersedes the IDirectMusicPerformance interface and adds new methods.

The methods of IDirectMusicPerformance8 can be organized into the following groups:

Audiopath CreateAudioPath
  CreateStandardAudioPath
  GetDefaultAudioPath
  SetDefaultAudioPath
Channels AssignPChannel
  AssignPChannelBlock
  PChannelInfo
Instruments DownloadInstrument
Messages AllocPMsg
  ClonePMsg
  FreePMsg
  SendPMsg
MIDI conversion MIDIToMusic
  MusicToMIDI
Notification AddNotificationType
  GetNotificationPMsg
  RemoveNotificationType
  SetNotificationHandle
Parameters GetGlobalParam
  GetParam
  GetParamEx
  SetGlobalParam
  SetParam
Playback GetSegmentState
  IsPlaying
  PlaySegment
  PlaySegmentEx
  Stop
  StopEx
Ports AddPort
  RemovePort
Timing AdjustTime
  GetBumperLength
  GetLatencyTime
  GetPrepareTime
  GetQueueTime
  GetResolvedTime
  GetTime
  MusicToReferenceTime
  ReferenceToMusicTime
  RhythmToTime
  SetBumperLength
  SetPrepareTime
  TimeToRhythm
Tools GetGraph
  SetGraph
Miscellaneous CloseDown
  Init
  InitAudio
  Invalidate

All COM interfaces inherit the IUnknown interface methods. This interface supports the following methods:

IUnknown AddRef
  QueryInterface
  Release

Requirements

  Header: Declared in dmusici.h.