CTransformFilter.Transform メソッド
[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayer、IMFMediaEngine、Audio/Video Capture を使用することを強くお勧めします。 Microsoft は、レガシ API を使用する既存のコードを、可能であれば新しい API を使用するように書き換えるよう提案しています。]
メソッドは Transform
、入力サンプルを変換して出力サンプルを生成します。
構文
virtual HRESULT Transform(
IMediaSample *pIn,
IMediaSample *pOut
);
パラメーター
-
ピン
-
入力サンプルの IMediaSample インターフェイスへのポインター。
-
ふくれっ面
-
出力サンプルの IMediaSample インターフェイスへのポインター。
戻り値
基底クラスは、E_UNEXPECTEDを返します。
派生クラスは、成功または失敗を示す HRESULT 値を返す必要があります。 次の表に示す値を指定できます。
リターン コード | 説明 |
---|---|
|
このサンプルは提供しないでください。 |
|
成功しました。 |
解説
出力データを生成するには、このメソッドをオーバーライドします。 pIn パラメーターで指定されたサンプルから入力データを読み取り、pOut パラメーターで指定されたサンプルに新しいデータを書き込みます。
フィルターは、このメソッドを呼び出す前に、入力サンプルから出力サンプルにプロパティをコピーします。 メソッドは Transform
、 IMediaSample メソッドまたは IMediaSample2 インターフェイス (使用可能な場合) を使用して、 2 つのサンプル間で異なるプロパティを設定する必要があります。
フィルターでこのサンプルを提供しない場合 (品質管理をサポートする場合など)、メソッドはS_FALSEを返す必要があります。
要件
要件 | 値 |
---|---|
ヘッダー |
|
ライブラリ |
|