Microsoft DirectX 8.0

IAMTimelineSplittable インターフェイス

Microsoft® DirectShow® 編集サービス (DES) のタイムライン オブジェクトを分割する。ソース、エフェクト、トランジション、およびトラックはこのインターフェイスを実装する。

要件

Qedit.h が必要である。

vtable 順のメソッド

IUnknown メソッド説明
QueryInterfaceサポートされているインターフェイスへのポインタを取得する。
AddRef参照カウントをインクリメントする。
Release参照カウントをデクリメントする。
IAMTimelineSplittable メソッド説明
SplitAt指定された時間でオブジェクトを分割する。
SplitAt2SplitAt と同じ機能だが、REFTIME 値をパラメータにとる。

IAMTimelineSplittable::SplitAt

IAMTimelineSplittable インターフェイス

指定された時間でオブジェクトを分割する。

構文

HRESULT SplitAt(
    REFERENCE_TIME Time
);

パラメータ

Time
オブジェクトを分割する時間。オブジェクトの先頭相対で、100 ナノ秒単位。

戻り値

HRESULT 値を返す。可能な値は次のとおりである。

S_FALSE分割するオブジェクトがない。
S_OK成功。
E_INVALIDARG無効な引数。
E_OUTOFMEMORYメモリ不足。

注意

ソース、エフェクト、またはトランジションを分割する場合、このメソッドは同じタイプの 2 番目のオブジェクトを作成する。元のオブジェクトは、分割を指定された時間までに切り詰められ、切り詰められた部分が新しいオブジェクトとなる。新しいオブジェクトは、同じプロパティをすべて継承する。ソース オブジェクトでは、このメソッドは分割時間にかかるエフェクトも分割する。

トラックでこのメソッドを呼び出すと、指定された分割時間にトラック内にあるすべてのソース、エフェクト、およびトランジションが分割される。この場合、2 番目のトラックは作成されない (トラックは、時間ゼロから始まり、無限に伸張する)。分割時間が、トラック内のすべてのものより後になる場合、このメソッドは S_FALSE を返す。

IAMTimelineSplittable::SplitAt2

IAMTimelineSplittable インターフェイス

指定された時間でオブジェクトを分割する。このメソッドは SplitAt と同じ機能だが、REFTIME 値をパラメータにとる。

構文

HRESULT SplitAt2(
    REFTIME Time
);

パラメータ

Time
オブジェクトを分割する時間。オブジェクトの先頭相対で、秒単位。

戻り値

HRESULT 値を返す。可能な値は次のとおりである。

S_FALSE分割するオブジェクトがない。
S_OK成功。
E_INVALIDARG無効な引数。
E_OUTOFMEMORYメモリ不足。