次の方法で共有


ICodecAPI インターフェイス (strmif.h)

[DirectShow での CodecAPI 機能の使用は推奨されなくなりました。 DirectShow の使用は、MediaPlayerIMFMediaEngine、および Media Foundation でのオーディオ/ビデオ キャプチャのに置き換わりました。 これらの機能は、Windows 11 および Windows 10 用に最適化されています。 DirectShow の代わりに、新しいコードで MediaPlayer IMFMediaEngine、および Media Foundation のオーディオ/ビデオ キャプチャ使用することを可能な限り強くお勧めします。 従来の 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 の一覧については、「コーデック 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"
{...} は、アプリケーションがユーザー インターフェイスにマップできるプロパティ GUID です。 Microsoft は現在、一連の標準プロファイルの定義を検討しています。

既定のコーデック機能は HLKM\Software\Classes\CLSID< に格納されます。カテゴリ>\Instance<CLSID>\Capabilities をフィルター処理します。 各値には GUID 名が付き、その後に数値 GUID 値を含む文字列値が続きます。 例えば:

C++
HLKM\Software\Classes\CLSID\<category>\Instance\<My DVD encoder>\Capabilities
     default "My DVD encoder"
     REG_SZ_MULTI {...}
{...} は、アプリケーションがユーザー インターフェイスにマップできるプロパティ GUID です。

必要条件

要件 価値
サポートされる最小クライアント Windows XP と SP2 [デスクトップ アプリ |UWP アプリ]
サポートされる最小サーバー Windows Server 2003 R2 [デスクトップ アプリ |UWP アプリ]
ターゲット プラットフォーム ウィンドウズ
ヘッダー strmif.h (Dshow.h を含む)

関連項目