Share via


同期リーダーを使用してフレーム番号でシークするには

[このページに関連付けられている機能である Windows Media Format 11 SDK は、従来の機能です。 ソース リーダーシンク ライターに置き換わりました。 ソース リーダーシンク ライターは、Windows 10とWindows 11用に最適化されています。 Microsoft では、可能であれば、新しいコードで Windows Media Format 11 SDK ではなくソース リーダーシンク ライターを使用することを強くお勧めします。 Microsoft は、レガシ API を使用する既存のコードを、可能であれば新しい API を使用するように書き換えるよう提案しています。]

同期リーダーを使用してフレーム番号でデータをシークするには、再生範囲を指定します。 範囲は、特定のビデオ ストリーム内の開始フレーム番号と再生するフレーム数によって定義されます。

同期リーダーを使用してフレーム番号で ASF ファイル内のデータをシークするには、次の手順を実行します。

  1. IWMSyncReader::SetRangeByFrame を呼び出して、サンプル配信用に読み取る開始フレーム番号とフレーム数を設定します。 フレーム インデックス付きビデオ ストリームのストリーム番号を指定する必要があります。 リーダーは、出力の残りの部分を、指定したストリームの指定されたフレームのプレゼンテーション時間に同期し、出力サンプルの配信を開始します。
  2. IWMSyncReader::GetNextSample の呼び出しでサンプルの取得を開始します。 通常どおり同期リーダーを使用して続行します。

IWMSyncReader インターフェイス

同期リーダーを使用したファイルの読み取り