ICodecAPI インターフェイス (strmif.h)
[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、および Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayer、IMFMediaEngine、Audio/Video Capture を使用することを強くお勧めします。 Microsoft は、従来の API を使用する既存のコードを、可能であれば新しい API を使用するように書き直すよう提案しています。]
ICodecAPI インターフェイスは、エンコーダーまたはデコーダー フィルターの設定を設定および取得します。
注意
strmif.h で宣言された API は、ユニバーサル Windows プラットフォーム (UWP) アプリではサポートされていません。 UWP アプリで ICodecAPI を使用するには、 icodecapi.h で宣言されているバージョンを使用します。
継承
ICodecAPI インターフェイスは、IUnknown インターフェイスから継承されます。 ICodecAPI には、次の種類のメンバーもあります。
メソッド
ICodecAPI インターフェイスには、これらのメソッドがあります。
ICodecAPI::GetAllSettings GetAllSettings メソッドは、コーデックの現在のプロパティを取得し、ストリームに書き込みます。 (ICodecAPI.GetAllSettings) |
ICodecAPI::GetDefaultValue GetDefaultValue メソッドは、コーデック プロパティの既定値を取得します。 (ICodecAPI.GetDefaultValue) |
ICodecAPI::GetParameterRange GetParameterRange メソッドは、コーデック プロパティの値の範囲を取得します。 (ICodecAPI.GetParameterRange) |
ICodecAPI::GetParameterValues GetParameterValues メソッドは、コーデック プロパティに使用できる値の一覧を取得します。 (ICodecAPI.GetParameterValues) |
ICodecAPI::GetValue GetValue メソッドは、コーデック プロパティの現在の値を取得します。 |
ICodecAPI::IsModifiable IsModifiable メソッドは、コーデックの現在の構成に応じて、コーデック プロパティを変更できるかどうかを照会します。 (ICodecAPI.IsModifiable) |
ICodecAPI::IsSupported IsSupported メソッドは、コーデックが特定のプロパティをサポートしているかどうかを照会します。 (ICodecAPI.IsSupported) |
ICodecAPI::RegisterForEvent RegisterForEvent メソッドは、コーデックからイベントを受信するようにアプリケーションを登録します。 (ICodecAPI.RegisterForEvent) |
ICodecAPI::SetAllDefaults SetAllDefaults メソッドは、すべてのコーデック プロパティを既定値にリセットします。 (ICodecAPI.SetAllDefaults) |
ICodecAPI::SetAllDefaultsWithNotify SetAllDefaultsWithNotify メソッドは、すべてのコーデック プロパティを既定値にリセットし、変更されたプロパティの一覧を返します。 (ICodecAPI.SetAllDefaultsWithNotify) |
ICodecAPI::SetAllSettings SetAllSettings メソッドは、ストリームからコーデック プロパティを読み取り、コーデックに設定します。 (ICodecAPI.SetAllSettings) |
ICodecAPI::SetAllSettingsWithNotify SetAllSettingsWithNotify メソッドは、ストリームからコーデック プロパティを読み取り、コーデックに設定して、変更されたプロパティの一覧を返します。 (ICodecAPI.SetAllSettingsWithNotify) |
ICodecAPI::SetValue SetValue メソッドは、コーデック プロパティの値を設定します。 (ICodecAPI.SetValue) |
ICodecAPI::SetValueWithNotify SetValueWithNotify メソッドはコーデックのプロパティを設定し、その結果変更された他のプロパティの一覧を返します。 (ICodecAPI.SetValueWithNotify) |
ICodecAPI::UnregisterForEvent UnregisterForEvent メソッドは、指定したエンコーダー イベントのアプリケーションの登録を解除します。 (ICodecAPI.UnregisterForEvent) |
注釈
このインターフェイスは、コーデック (エンコーダーまたはデコーダー) にプロパティを設定するための一般的なメカニズムを定義します。 コーデック プロパティはキーと値のペアで、キーは GUID で、値は VARIANT です。 VARIANT データの解釈は、プロパティ GUID によって異なります。 コーデック プロパティ GUID の一覧については、「 Codec API のプロパティ」を参照してください。
コーデック プロファイル
コーデックでは、必要に応じて、プロファイルと機能の情報をシステム レジストリに格納できます。 この情報により、アプリケーションはデバイスの列挙中にデバイスに対してクエリを実行できます。 既定のプロファイルは、次のレジストリ キーに格納されます。HKEY_LOCAL_MACHINE Software Classes CLSID Category Profiles各プロファイルは、既定の文字列がプロファイルのテキスト説明であるレジストリ キーです。 各値には GUID 名があり、その後に数値 GUID 値を含む文字列値が続きます。 例:
C++ |
---|
HLKM\Software\Classes\CLSID\<category>\Profiles\DVD default "HQ DVD" REG_SZ {...} = "0" REG_SZ {...} = "1234" |
既定のコーデック機能は HLKM\Software\Classes\CLSID< に格納されます。category>\Instance<CLSID>\Capabilities をフィルター処理します。 各値には GUID 名があり、その後に数値 GUID 値を含む文字列値が続きます。 例:
C++ |
---|
HLKM\Software\Classes\CLSID\<category>\Instance\<My DVD encoder>\Capabilities default "My DVD encoder" REG_SZ_MULTI {...} |
要件
サポートされている最小のクライアント | SP2 を使用した Windows XP [デスクトップ アプリ |UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2003 R2 [デスクトップ アプリ |UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | strmif.h (Dshow.h を含む) |