IAMGraphStreams::FindUpstreamInterface メソッド (strmif.h)

[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayerIMFMediaEngine、および Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayerIMFMediaEngineAudio/Video Capture を使用することを強くお勧めします。 Microsoft は、従来の API を使用する既存のコードを、可能であれば新しい API を使用するように書き直すよう提案しています。]

メソッドは FindUpstreamInterface 、指定したピンから上流にある、指定されたインターフェイスのフィルター グラフを検索します。

構文

HRESULT FindUpstreamInterface(
  [in]  IPin   *pPin,
  [in]  REFIID riid,
  [out] void   **ppvInterface,
  [in]  DWORD  dwFlags
);

パラメーター

[in] pPin

ピンの IPin インターフェイスへのポインター。 ピンは、フィルター グラフ内のフィルターに属している必要があります。

[in] riid

検索するインターフェイスを指定するインターフェイス識別子 (IID) への参照。

[out] ppvInterface

void ポインターのアドレス。 メソッドが成功した場合、この変数は riid で指定されたインターフェイスへのポインターを受け取ります。

[in] dwFlags

検索対象 (ピンまたはフィルター) を指定する、 AM_INTF_SEARCH_FLAGS 列挙からのフラグの組み合わせ。

戻り値

次のいずれかの HRESULT 値を 返します。

リターン コード 説明
E_NOINTERFACE
インターフェイスが見つかりません。
E_POINTER
ポインターが無効です。
S_OK
正常終了しました。

注釈

dwFlags が 0 の場合、このメソッドはインターフェイスを次の順序で検索します。

  1. pPin で指定されたピンに対してクエリを実行します。
  2. pPin が入力ピンの場合は、pPin に接続されている出力ピン (存在する場合) で FindUpstreamInterface を再帰的に呼び出します。

    pPin が出力ピンの場合は、pPin を所有するフィルターに対してクエリを実行します。 次に、 pPin への内部接続を持つ入力ピンの一覧をフィルターに作成し、それらの入力ピンで再帰的に呼び出します FindUpstreamInterface

    内部接続を使用して入力ピンの一覧を作成するには、 メソッドで次の処理を行います。

インターフェイスをサポートする最初のオブジェクトで停止します。 dwFlags を 0 以外の値に設定することで、検索されるオブジェクト (フィルター、入力ピン、または出力ピン) を制限できます。
メモICaptureGraphBuilder2::FindInterface メソッドは、この問題に対してより一般的なアプローチを実装しており、ほとんどの場合が推奨されます。
 

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー strmif.h (Dshow.h を含む)
Library Strmiids.lib

こちらもご覧ください

エラーコードと成功コード

IAMGraphStreams インターフェイス