Microsoft DirectX 8.0 |
Microsoft® DirectShow® 編集サービス (DES) のスマート再圧縮をサポートするメソッドを提供する。スマート レンダリング エンジンは、このインターフェイスを公開する。ISmartRenderEngine の使い方の詳細については、「プロジェクトのレンダリング」を参照すること。
要件
Qedit.h が必要である。
vtable 順のメソッド
IUnknown メソッド 説明 QueryInterface サポートされているインターフェイスへのポインタを取得する。 AddRef 参照カウントをインクリメントする。 Release 参照カウントをデクリメントする。 ISmartRenderEngine メソッド 説明 SetGroupCompressor 指定されたグループをレンダリングするときに使用する圧縮フィルタを指定する。 GetGroupCompressor 指定されたグループの圧縮フィルタを取得する。 SetFindCompressorCB 実装されていない。
指定されたグループの圧縮フィルタを取得する。
構文
HRESULT GetGroupCompressor( long Group, IBaseFilter **pCompressor );
パラメータ
- Group
- ゼロから始まるグループのインデックス。
- pCompressor
- [out] 圧縮フィルタの IBaseFilter インターフェイスを受け取るポインタのアドレス。圧縮フィルタがない場合は、値 NULL を受け取る。
戻り値
次のいずれかの値を返す。
E_INVALIDARG 無効な引数。 E_POINTER NULL ポインタ エラー。 S_OK 成功。
注意
このメソッドを使って、キー フレーム レートなどの圧縮フィルタのプロパティを設定する。このメソッドは、IRenderEngine::ConnectFrontEnd を呼び出した後、プロジェクトをレンダリングする前に呼び出す。次に、圧縮パラメータ設定用のメソッドが含まれる IAMVideoCompression インターフェイスについて、圧縮フィルタの出力ピンに照会する。使用が終わったらインターフェイスを解放する。それ以降にタイムラインに変更を加えた場合は、ConnectFrontEnd を呼び出してから GetGroupCompressor を呼び出し、圧縮パラメータを再設定しなければならない。
復帰時に *ppCompressor の値が NULL 以外の場合、IBaseFilter インターフェイスは未処理のカウントを持つ。使い終わった場合は、インターフェイスを必ず解放すること。
実装されていない。
構文
HRESULT SetFindCompressorCB( IFindCompressorCB *pCallback );
指定されたグループをレンダリングするときに使用する圧縮フィルタを指定する。
構文
HRESULT SetGroupCompressor( long Group, IBaseFilter *pCompressor );
パラメータ
- Group
- ゼロから始まるグループのインデックス。
- pCompressor
- 圧縮フィルタの IBaseFilter インターフェイスへのポインタ。
戻り値
成功した場合は、S_OK を返す。それ以外の場合は、E_INVALIDARG を返す。