Microsoft DirectX 8.0

AMTimelineComp オブジェクト

Microsoft® DirectShow 編集サービス (DES) で、合成上の仮想トラックを挿入または取得する。

合成は、合成されたトラックとして機能する、レイヤのコレクションである。たとえば、2 つのトラックとそれらの間のトランジションからなる合成は、そのトランジションがあらかじめ合成されている単一のトラックとして機能する。合成には、同じタイプ (オーディオまたはビデオ) のメディアだけを入れるようにする必要があるが、この制限は強制されない。仮想トラックは、合成内に配置できる、トラックおよび他の合成も含めた任意のオブジェクトである。

タイムラインの最上位のノードはグループである。グループは、AMTimelineCompAMTimelineGroup の両方をサポートする。

詳細については、「タイムライン モデル」を参照すること。

メソッド

GetCountOfTypeこの合成およびそのすべての仮想トラックに含まれる (再帰的に内部に含まれるオブジェクトも含む)、指定されたタイプのオブジェクトの個数を取得する。
GetNextVTrack指定された仮想トラックの次の仮想トラックを取得する。
GetRecursiveLayerOfTypeこの合成に含まれる仮想トラックを深度の深い順に順序付け、その順序で n 番目の仮想トラックを取得する。
GetRecursiveLayerOfTypeIVisual Basic ではサポートされていない。
GetVTrack指定された優先順位の仮想トラックを取得する。
VTrackGetCount合成に含まれる仮想トラックの個数を取得する。
VTrackInsBefore合成に指定の優先順位で仮想トラックを挿入する。
VTrackSwapPriorities2 つのトラックの優先順位レベルを入れ替える。

GetCountOfType メソッド (AMTimelineComp オブジェクト)

AMTimelineComp オブジェクト

この合成およびそのすべての仮想トラックに含まれる (再帰的に内部に含まれるオブジェクトも含む)、指定されたタイプのオブジェクトの個数を取得する。

構文

object.GetCountOfType(
pVal As Long,
pValWithComps As Long,
MajorType As TIMELINE_MAJOR_TYPE
)

パラメータ

object
結果が AMTimelineComp オブジェクトになるオブジェクト式。
pVal
この合成およびそのすべての仮想トラックに含まれる (再帰的に内部に含まれるオブジェクトも含む)、指定されたタイプのオブジェクトの個数を受け取る変数。
pValWithComps
pVal に返された個数と、これ自体も含めて検索された合成の個数を加えた数を受け取る変数。
MajorType
TIMELINE_MAJOR_TYPE 列挙型のメンバ。 個数を数えるオブジェクトのタイプを指定する。

エラー コード

メソッドでの処理が失敗すると、エラーが発生する。

注意

通常、アプリケーションではこのメソッドを呼び出さない。このメソッドは、レンダリング エンジンによって呼び出される。

合成の個数を調べた場合、pVal に返される値はゼロで、pValWithComps に返される値が合成の個数である。pValWithComps の値には、メソッドを呼び出した合成も含まれる。たとえば、空の合成でこのメソッドを呼び出した場合、pValWithComps は 1 になる。

グループは合成の中に配置できないので、このメソッドでグループの数を調べることはできない (返される数は常にゼロとなる)。グループの数を調べるには、AMTimeline.GetGroupCount メソッドを呼び出す。

GetNextVTrack メソッド (AMTimelineComp オブジェクト)

AMTimelineComp オブジェクト

指定された仮想トラックの次の仮想トラックを取得する。

構文

object.GetNextVTrack(
pVirtualTrack As AMTimelineObj, 
ppNextVirtualTrack As AMTimelineObj
)

パラメータ

object
結果が AMTimelineComp オブジェクトになるオブジェクト式。
pVirtualTrack
前の仮想トラックを指定する AMTimelineObj オブジェクト。合成内の最初の仮想トラックを取得する場合は Nothing
ppNextVirtualTrack
次の優先順位の仮想トラックを受け取る AMTimelineObj オブジェクト。

エラー コード

メソッドでの処理が失敗すると、エラーが発生する。

GetRecursiveLayerOfType メソッド (AMTimelineComp オブジェクト)

AMTimelineComp オブジェクト

この合成に含まれる仮想トラックを深度の深い順に順序付け、その順序で n 番目の仮想トラックを取得する。

構文

object.GetRecursiveLayerOfType(
ppVirtualTrack As AMTimelineObj,
WhichLayer As Long,
Type As TIMELINE_MAJOR_TYPE
)

パラメータ

object
結果が AMTimelineComp オブジェクトになるオブジェクト式。
ppVirtualTrack
仮想トラックを受け取る AMTimelineObj オブジェクト。
WhichLayer
取得する仮想トラックを指定する、ゼロから始まるインデックスの値。
Type
TIMELINE_MAJOR_TYPE 列挙型のメンバ。 検索にトラックを含めるかどうかを指定する。

エラー コード

メソッドが失敗するとエラーが発生し、Err.Number には次の値が設定される場合がある。

E_INVALIDARG指定されたタイプのオブジェクトがない。

注意

通常、アプリケーションでこのメソッドを呼び出す必要はない。

Type パラメータが TIMELINE_MAJOR_TYPE_TRACK の場合は、深度の順序付けにトラックも含まれる。それ以外の場合は、合成とグループだけが含まれる。そのオブジェクト自体も順序付けに含まれる。

たとえば、合成 A から始まる次のような配置では、順序は B、C、F、D、E、A となる。

GetRecursiveLayerOfType

GetRecursiveLayerOfTypeI メソッド (AMTimelineComp オブジェクト)

AMTimelineComp オブジェクト

Visual Basic ではサポートされていない。代わりに、GetRecursiveLayerOfType メソッドを使用する。

構文

object.GetRecursiveLayerOfTypeI(
ppVirtualTrack As AMTimelineObj,
pWhichLayer As Long,
Type As TIMELINE_MAJOR_TYPE
)

GetVTrack メソッド (AMTimelineComp オブジェクト)

AMTimelineComp オブジェクト

指定された優先順位の仮想トラックを取得する。

構文

object.GetVTrack(
ppVirtualTrack As AMTimelineObj,
Which As Long
)

パラメータ

object
結果が AMTimelineComp オブジェクトになるオブジェクト式。
ppVirtualTrack
仮想トラックを受け取る AMTimelineObj オブジェクト。
Which
取得する仮想トラックの優先順位。

エラー コード

メソッドでの処理が失敗するとエラーが発生し、Err.Number には次の値が設定される場合がある。

E_INVALIDARG指定された優先順位の仮想トラックがない。

VTrackGetCount メソッド (AMTimelineComp オブジェクト)

AMTimelineComp オブジェクト

合成に含まれる仮想トラックの個数を取得する。

構文

object.VTrackGetCount(
pVal As Long
)

パラメータ

object
結果が AMTimelineComp オブジェクトになるオブジェクト式。
pVal
仮想トラックの数を受け取る変数。

エラー コード

メソッドでの処理が失敗すると、エラーが発生する。

VTrackInsBefore メソッド (AMTimelineComp オブジェクト)

AMTimelineComp オブジェクト

合成に指定の優先順位で仮想トラックを挿入する。

構文

object.VTrackInsBefore(
pVirtualTrack As AMTimelineObj,
Priority As Long
)

パラメータ

object
結果が AMTimelineComp オブジェクトになるオブジェクト式。
pVirtualTrack
仮想トラックを指定する AMTimelineObj オブジェクト。
Priority
仮想トラックを挿入する優先順位。 優先順位リストの最後に仮想トラックを挿入する場合は -1。

エラー コード

メソッドでの処理が失敗するとエラーが発生し、Err.Number には次のいずれかの値が設定される場合がある。

E_INVALIDARG無効な引数。
E_NOINTERFACEpVirtualTrack で指定されているオブジェクトが、仮想トラックではない。

注意

優先順位レベルはゼロから始まる。タイムラインに、指定された優先順位レベルの仮想トラックが既に存在する場合、優先順位リストのその位置以下のすべてが 1 レベルずつ繰り下げられ、挿入されるトラックの場所が確保される。現在のトラックの個数より大きい値を優先順位に指定した場合、このメソッドは失敗する。

VTrackSwapPriorities メソッド (AMTimelineComp オブジェクト)

AMTimelineComp オブジェクト

2 つのトラックの優先順位レベルを入れ替える。

このメソッドは、指定された 2 つの優先順位レベルを持つそれぞれの仮想トラックの優先順位を入れ替える。このメソッドから戻った時点で、最初に指定された優先順位にあったトラックの優先順位は、2 番目に指定された優先順位レベルになり、2 番目に指定された優先順位にあったトラックの優先順位は、最初に指定された優先順位レベルになっている。

構文

object.VTrackSwapPriorities(
VirtualTrackA As Long,
VirtualTrackB As Long
)

パラメータ

object
結果が AMTimelineComp オブジェクトになるオブジェクト式。
VirtualTrackA
仮想トラックを入れ替える最初の優先順位レベル。
VirtualTrackB
仮想トラックを入れ替える 2 番目の優先順位レベル。

エラー コード

メソッドでの処理が失敗するとエラーが発生し、Err.Number には次の値が設定される場合がある。

E_INVALIDARG無効な引数。