次の方法で共有


IMFASFSplitter::GetNextSample メソッド (wmcontainer.h)

データの解析後に、Advanced Systems Format (ASF) スプリッターからサンプルを取得します。

構文

HRESULT GetNextSample(
  [out] DWORD     *pdwStatusFlags,
  [out] WORD      *pwStreamNumber,
  [out] IMFSample **ppISample
);

パラメーター

[out] pdwStatusFlags

次のいずれかの値を受け取ります。

意味
ASF_STATUSFLAGS_INCOMPLETE
さらに多くのサンプルを取得する準備が整いました。 pdwStatusFlags パラメーターが値 0 を受け取るまで、ループ内で GetNextSample を呼び出します。
Zero
追加のサンプルは準備ができていません。 IMFASFSplitter::P arseData を呼び出して、スプリッターにより多くの入力データを渡します。

[out] pwStreamNumber

メソッドが ppISample パラメーターでサンプルを返す場合、このパラメーターはサンプルが属するストリームの番号を受け取ります。

[out] ppISample

解析されたサンプルの IMFSample インターフェイスへのポインターを受け取ります。 呼び出し元はインターフェイスを解放する必要があります。 準備ができているサンプルがない場合、このパラメーターは値 NULL を受け取ります。

戻り値

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

リターン コード 説明
S_OK
メソッドが成功しました。
MF_E_ASF_INVALIDDATA
バッファー内の ASF データが無効です。
MF_E_ASF_MISSINGDATA
ASF データにギャップがあります。

注釈

このメソッドを呼び出す前に、 IMFASFSplitter::P arseData を呼び出して、入力データをスプリッターに渡します。 入力に完全なサンプルに対して十分なデータが含まれていない場合、GetNextSample メソッドは成功しますが、ppISample パラメーターで NULL を返します。

ASF スプリッターは、選択されていないストリームのサンプルをスキップします。 ストリームを選択するには、 IMFASFSplitter::SelectStreams を呼び出します。

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー wmcontainer.h
Library Mfuuid.lib

こちらもご覧ください

ASF スプリッター

IMFASFSplitter