IDirectMusicPerformance

IDirectMusicPerformance::PlaySegment

DirectMusic セグメントオブジェクトの再生を開始します。

HRESULT PlaySegment(
    IDirectMusicSegment* pSegment,
    DWORD      dwFlags,
    __int64    i64StartTime,
    IDirectMusicSegmentState** ppSegmentState
);

メソッドのインデックス: 4

パラメータ

pSegment

演奏されるセグメントの IDirectMusicSegment インターフェースポインタを指定します。

dwFlags

メソッドの動作を指定するフラグを指定します。 DMUS_SEGF_FLAGS 列挙型の定数の組み合わせで指定します。

i64StartTime

セグメントの演奏を開始するパフォーマンスタイムを64ビット値で指定します。dwFlags で指定される境界分解能に調整されます。DMUS_SEGF_REFTIME フラグが設定されていない限り、タイムはミュージックタイムで指定されます。値が 0 の場合、セグメントの演奏はできる限り早く開始されます。

ppSegmentState

演奏中のセグメントのインスタンスに関するセグメント状態を取得するための IDirectMusicSegmentState インターフェースポインタを受け取る変数のアドレスを指定します。有効なアドレスが指定された場合、セグメント状態インターフェースポインタが返され、このインターフェースの参照カウントがインクリメントされます。

セグメント状態インターフェースが必要ない場合は、このパラメータに 0 (NULL) を指定します。

戻り値

成功すると 0x00000000 (S_OK) が返ります。

以前に設定されていた検索パスと同じパスを指定した場合は、0x00000001 (S_FALSE) が返ります。

失敗すると以下のいずれかのエラー値が返ります。

意味
0x80004003 (E_POINTER)

無効なポインタが渡されました。

0x8007000E (E_OUTOFMEMORY)

メモリ不足のため完了できませんでした。

0x88781165 (DMUS_E_TIME_PAST)

要求されたタイムは過去のタイムです。

0x88781170 (DMUS_E_NO_MASTER_CLOCK)

パフォーマンス内にマスタクロックが存在しません。 IDirectMusicPerformance8::Init メソッドが呼び出されていません。

0x88781203 (DMUS_E_SEGMENT_INIT_FAILED)

セグメントの初期化に失敗しました。メモリで重大な問題が発生したと考えられます。