次の方法で共有


CSourceStream::GetMediaType

GetMediaType メソッドは優先メディア タイプを取得する。

構文

  virtual HRESULT GetMediaType(
    int iPosition,
    CMediaType *pMediaType
);

virtual HRESULT GetMediaType(
    CMediaType *pMediaType
);

パラメータ

iPosition

ゼロから始まるインデックス値。

pMediaType

メディア タイプを受け取る CMediaType オブジェクトへのポインタ。

戻り値

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

説明
S_OK 成功。
VFW_S_NO_MORE_ITEMS インデックスが範囲外である。
E_INVALIDARG インデックスがゼロより小さい。
E_UNEXPECTED 予期せぬエラー。

注意

このメソッドには、2 つのバージョンがある。1 つのバージョンは CBasePin::GetMediaType メソッドをオーバーライドし、インデックス値を引数として取る。もう 1 つのバージョンは 1 つのメディア タイプを取得するように設計されているので、インデックス引数はない。

単一引数のメソッドは、E_UNEXPECTED を返す。2 つの引数を取るメソッドは、iPosition 引数が 0 であることを確認し、単一引数のメソッドを呼び出す。ピンがサポートするメディア タイプ数に応じて、これらのいずれかのメソッドをオーバーライドしなければならない。

  • ピンが確実に 1 つのメディア タイプをサポートしている場合は、単一引数のメソッドをオーバーライドする。ピンがサポートするメディア タイプを埋め込む。
  • ピンが複数のメディア タイプをサポートしている場合は、2 つの引数を取るメソッドをオーバーライドする。さらに CSourceStream::CheckMediaType メソッドをオーバーライドする。

参照

CSourceStream クラス