IMediaSample インターフェイス (strmif.h)
[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayer、IMFMediaEngine、Audio/Video Capture を使用することを強くお勧めします。 Microsoft は、レガシ API を使用する既存のコードを、可能であれば新しい API を使用するように書き換えるよう提案しています。]
インターフェイスは IMediaSample
、メディア サンプルのプロパティを設定および取得します。 メディア サンプルは、メディア データのブロックを含む COM オブジェクトです。 メディア サンプルでは、フィルター間での共有メモリ バッファーの使用がサポートされています。
通常、アプリケーションはこのインターフェイスでメソッドを呼び出しません。 フィルターでは、このインターフェイスを使用してサンプルのプロパティを設定し、ダウンストリーム フィルターにサンプルを配信します。 ダウンストリーム フィルターでは、 インターフェイスを使用してプロパティを取得し、データを読み取ります。 フィルターは、データをインプレースで変更することも、サンプルをコピーしたり、コピーを変更したり、下流にコピーを渡したりすることもできます。
IMediaSample2 インターフェイスはこのインターフェイスを継承します。
継承
IMediaSample インターフェイスは、IUnknown インターフェイスから継承されます。 IMediaSample には、次の種類のメンバーもあります。
メソッド
IMediaSample インターフェイスには、これらのメソッドがあります。
IMediaSample::GetActualDataLength GetActualDataLength メソッドは、バッファー内の有効なデータの長さを取得します。 |
IMediaSample::GetMediaTime GetMediaTime メソッドは、このサンプルのメディア時間を取得します。 |
IMediaSample::GetMediaType GetMediaType メソッドは、メディアの種類が前のサンプルと異なる場合に、メディアの種類を取得します。 |
IMediaSample::GetPointer GetPointer メソッドは、メディア サンプルのバッファーへの読み取り/書き込みポインターを取得します。 |
IMediaSample::GetSize GetSize メソッドは、バッファーのサイズを取得します。 |
IMediaSample::GetTime GetTime メソッドは、このサンプルを開始して終了するストリーム時間を取得します。 |
IMediaSample::IsDiscontinuity IsDiscontinuity メソッドは、このサンプルがデータ ストリームの中断を表しているかどうかを判断します。 |
IMediaSample::IsPreroll IsPreroll メソッドは、このサンプルがプリロール サンプルであるかどうかを判断します。 プリロール サンプルを表示しないでください。 |
IMediaSample::IsSyncPoint IsSyncPoint メソッドは、このサンプルの先頭が同期ポイントであるかどうかを判断します。 |
IMediaSample::SetActualDataLength SetActualDataLength メソッドは、バッファー内の有効なデータの長さを設定します。 |
IMediaSample::SetDiscontinuity SetDiscontinuity メソッドは、このサンプルがデータ ストリームの中断を表すかどうかを指定します。 |
IMediaSample::SetMediaTime SetMediaTime メソッドは、このサンプルのメディア時間を設定します。 |
IMediaSample::SetMediaType SetMediaType メソッドは、サンプルのメディアの種類を設定します。 |
IMediaSample::SetPreroll SetPreroll メソッドは、このサンプルがプリロール サンプルかどうかを指定します。 |
IMediaSample::SetSyncPoint SetSyncPoint メソッドは、このサンプルの先頭が同期ポイントであるかどうかを指定します。 |
IMediaSample::SetTime SetTime メソッドは、このサンプルを開始して終了するストリーム時間を設定します。 |
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | strmif.h (Dshow.h を含む) |