Microsoft DirectX 8.0 (Visual Basic) |
object.PlaySegmentEx( _ Source As Unknown, _ lFlags As CONST_DMUS_SEGF_FLAGS, _ StartTime As Long, _ [From As Unknown], _ [AudioPath As Unknown], _ ) As DirectMusicSegmentState8
セグメントの演奏中のインスタンスを表す、DirectMusicSegmentState8 オブジェクトを返す。
失敗した場合は、エラーが発生する。Err.Number に次のいずれかの値が設定される。
DMUS_E_AUDIOPATH_INACTIVE |
DMUS_E_AUDIOPATH_NOPORT |
DMUS_E_NO_MASTER_CLOCK |
DMUS_E_SEGMENT_INIT_FAILED |
DMUS_E_TIME_PAST |
DMUS_E_OUTOFMEMORY |
セグメントの長さは 250 ミリ秒 (ms) を超えているべきである。
lFlags の境界分解能は、プライマリ セグメントに関連するものである。
あるプライマリ セグメントの演奏中に、別のプライマリ セグメントを演奏するスケジュールが設定される場合、後に演奏されるセグメントに DMUS_SEGF_QUEUE フラグを設定しない限り、先に演奏されるセグメントは停止する。フラグが設定されると、後のセグメントの演奏は、先のセグメントの演奏が終わってから開始される。
セグメントの正確な開始タイムの詳細については、「セグメントのタイミング」を参照すること。テンポの変更がセグメントの開始タイムに及ぼす影響については、「クロック タイムとミュージック タイム」を参照すること。
lFlags に DMUS_SEGF_AUTOTRANSITION が指定されているときに、StartTime で演奏中のセグメントを中断する場合、このメソッドは、2 つのセグメント間のトランジションをアレンジして、それを演奏した後に Source を演奏する。
Source がセグメントの場合は、Transition で指定されたテンプレートに基づくトランジション用のセグメントがアレンジされて演奏される。