IMFSourceReader::SetCurrentMediaType メソッド (mfreadwrite.h)

ストリームのメディアの種類を設定します。

このメディアの種類は、 ソース リーダー が出力として生成する形式を定義します。 メディア ソースによって提供されるネイティブ形式とは異なる場合があります。 詳細については、「解説」を参照してください。

構文

HRESULT SetCurrentMediaType(
  [in]      DWORD        dwStreamIndex,
  [in, out] DWORD        *pdwReserved,
  [in]      IMFMediaType *pMediaType
);

パラメーター

[in] dwStreamIndex

構成するストリーム。 値には、次のいずれかを指定できます。

意味
0 ~ 0xFFFFFFFB
ストリームの 0 から始まるインデックス。
MF_SOURCE_READER_FIRST_VIDEO_STREAM
0xFFFFFFFC
最初のビデオ ストリーム。
MF_SOURCE_READER_FIRST_AUDIO_STREAM
0xFFFFFFFD
最初のオーディオ ストリーム。

[in, out] pdwReserved

予約済み。 NULL に設定します。

[in] pMediaType

メディアの種類の IMFMediaType インターフェイスへのポインター。

戻り値

このメソッドは HRESULT を返します。 有効な値を次の表に示しますが、これ以外にもあります。

リターン コード 説明
S_OK
メソッドが成功しました。
MF_E_INVALIDMEDIATYPE
ネイティブ ストリームの種類に対して少なくとも 1 つのデコーダーが見つかりましたが、 pMediaType で指定された型は拒否されました。
MF_E_INVALIDREQUEST
1 つ以上のサンプル要求がまだ保留中です。
MF_E_INVALIDSTREAMNUMBER
dwStreamIndex パラメーターが無効です。
MF_E_TOPO_CODEC_NOT_FOUND
ネイティブ ストリームの種類のデコーダーが見つかりませんでした。

注釈

ストリームごとに、メディアの種類を次のいずれかに設定できます。

  • メディア ソースによって提供されるネイティブ型の 1 つ。 ネイティブ型を列挙するには、 IMFSourceReader::GetNativeMediaType を呼び出します。
  • ネイティブ メディアの種類が圧縮されている場合は、対応する圧縮されていない形式を指定できます。 ソース リーダーは、ネイティブ形式から指定された圧縮されていない形式にデコードできるデコーダーを検索します。
オーディオリサンプリングのサポートが、Windows 8を使用してソース リーダーに追加されました。 Windows 8より前のバージョンの Windows では、ソース リーダーはオーディオリサンプリングをサポートしていません。 Windows 8より前のバージョンの Windows でオーディオをリサンプリングする必要がある場合は、Audio Resampler DSP を使用できます。

ソース リーダーの作成時に MF_SOURCE_READER_ENABLE_VIDEO_PROCESSING 属性を TRUE に設定すると、ソース リーダーは YUV ビデオを RGB-32 に変換します。 この変換は、リアルタイムのビデオ再生用に最適化されていません。

このインターフェイスは、Windows Vista のプラットフォーム更新プログラムの補足がインストールされている場合に、Windows Vista で使用できます。

要件

要件
サポートされている最小のクライアント Windows Vista 用 Windows 7、Windows Vista およびプラットフォーム更新プログラムの補足 [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー mfreadwrite.h

こちらもご覧ください

IMFSourceReader

ソース リーダー