Platform SDK: DirectX |
DirectMusicPerformance.GetSegmentState メソッドは、指定のタイムに演奏されているプライマリ セグメントを表す DirectMusicSegmentState オブジェクトを取り出す。
object.GetSegmentState(mtTime As Long) _ As DirectMusicSegmentState
成功すれば DirectMusicSegmentState オブジェクトを返す。
失敗すればエラーが発生し、Err.Number に DMUS_E_NOT_FOUND が設定される。
現在演奏されているセグメント状態を取得するには、DirectMusicPerformance.GetMusicTime メソッドによって取り出されたタイムを渡す。この文脈の現在演奏されているというのは、メッセージを演奏するために現在呼び出されていることを意味する。遅延時間が存在するため、必ずしも現在演奏されているセグメント状態が現在スピーカから聞こえているとは限らない。
DirectMusicPerformance.PlaySegment を呼び出した直後にセグメント状態を取り出す場合は、遅延時間を考慮して mtTime の値に 150 を加算するとよい。