ICodecAPI-Schnittstelle (strmif.h)

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde durch MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation ersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]

Die ICodecAPI-Schnittstelle legt Einstellungen für einen Encoder- oder Decoderfilter fest und ruft sie ab.

Hinweis

In strmif.h deklarierte APIs werden für Universelle Windows-Plattform-Apps (UWP) nicht unterstützt. Um ICodecAPI in einer UWP-App zu verwenden, verwenden Sie die in icodecapi.h deklarierte Version.

Vererbung

Die ICodecAPI-Schnittstelle erbt von der IUnknown-Schnittstelle . ICodecAPI verfügt auch über folgende Membertypen:

Methoden

Die ICodecAPI-Schnittstelle verfügt über diese Methoden.

 
ICodecAPI::GetAllSettings

Die GetAllSettings-Methode ruft die aktuellen Eigenschaften des Codecs ab und schreibt sie in einen Stream. (ICodecAPI.GetAllSettings)
ICodecAPI::GetDefaultValue

Die GetDefaultValue-Methode ruft den Standardwert einer Codeceigenschaft ab. (ICodecAPI.GetDefaultValue)
ICodecAPI::GetParameterRange

Die GetParameterRange-Methode ruft den Wertebereich für eine Codeceigenschaft ab. (ICodecAPI.GetParameterRange)
ICodecAPI::GetParameterValues

Die GetParameterValues-Methode ruft die Liste der möglichen Werte für eine Codeceigenschaft ab. (ICodecAPI.GetParameterValues)
ICodecAPI::GetValue

Die GetValue-Methode ruft den aktuellen Wert einer Codeceigenschaft ab.
ICodecAPI::IsModifiable

Die IsModifiable-Methode fragt ab, ob eine Codeceigenschaft aufgrund der aktuellen Konfiguration des Codecs geändert werden kann. (ICodecAPI.IsModifiable)
ICodecAPI::IsSupported

Die IsSupported-Methode fragt ab, ob ein Codec eine bestimmte Eigenschaft unterstützt. (ICodecAPI.IsSupported)
ICodecAPI::RegisterForEvent

Die RegisterForEvent-Methode registriert die Anwendung, um Ereignisse vom Codec zu empfangen. (ICodecAPI.RegisterForEvent)
ICodecAPI::SetAllDefaults

Die SetAllDefaults-Methode setzt alle Codeceigenschaften auf ihre Standardwerte zurück. (ICodecAPI.SetAllDefaults)
ICodecAPI::SetAllDefaultsWithNotify

Die SetAllDefaultsWithNotify-Methode setzt alle Codeceigenschaften auf ihre Standardwerte zurück und gibt eine Liste der geänderten Eigenschaften zurück. (ICodecAPI.SetAllDefaultsWithNotify)
ICodecAPI::SetAllSettings

Die SetAllSettings-Methode liest Codeceigenschaften aus einem Stream und legt sie für den Codec fest. (ICodecAPI.SetAllSettings)
ICodecAPI::SetAllSettingsWithNotify

Die SetAllSettingsWithNotify-Methode liest Codeceigenschaften aus einem Stream, legt sie für den Codec fest und gibt eine Liste der geänderten Eigenschaften zurück. (ICodecAPI.SetAllSettingsWithNotify)
ICodecAPI::SetValue

Die SetValue-Methode legt den Wert einer Codeceigenschaft fest. (ICodecAPI.SetValue)
ICodecAPI::SetValueWithNotify

Die SetValueWithNotify-Methode legt eine Eigenschaft für einen Codec fest und gibt eine Liste anderer Eigenschaften zurück, die sich dadurch geändert haben. (ICodecAPI.SetValueWithNotify)
ICodecAPI::UnregisterForEvent

Die UnregisterForEvent-Methode hebt die Registrierung der Anwendung für ein angegebenes Encoderereignis auf. (ICodecAPI.UnregisterForEvent)

Hinweise

Diese Schnittstelle definiert einen generischen Mechanismus zum Festlegen von Eigenschaften für einen Codec (Encoder oder Decoder). Eine Codec-Eigenschaft ist ein Schlüssel-Wert-Paar, wobei der Schlüssel eine GUID und der Wert ein VARIANT-Wert ist. Die Interpretation der VARIANT-Daten hängt von der Eigenschafts-GUID ab. Eine Liste der CODEC-Eigenschaften-GUIDs finden Sie unter Codec-API-Eigenschaften.

Codecprofile

Codecs können optional Profil- und Funktionsinformationen in der Systemregistrierung speichern. Diese Informationen ermöglichen es Anwendungen, das Gerät während der Geräteaufzählung abzufragen. Standardprofile werden im folgenden Registrierungsschlüssel gespeichert:
HKEY_LOCAL_MACHINE
   Software
      Classes
         CLSID
            Category
               Profiles
Jedes Profil ist ein Registrierungsschlüssel, dessen Standardzeichenfolge eine Textbeschreibung des Profils ist. Jeder Wert hat einen GUID-Namen, gefolgt von einem Zeichenfolgenwert, der den numerischen GUID-Wert enthält. Beispiel:
C++
  HLKM\Software\Classes\CLSID\<category>\Profiles\DVD
    default "HQ DVD"
    REG_SZ {...} = "0"
    REG_SZ {...} = "1234"
wobei {...} eine Eigenschafts-GUID ist, die die Anwendung ihrer Benutzeroberfläche zuordnen kann. Microsoft erwägt derzeit die Definition einer Reihe von Standardprofilen.

Standardcodecfunktionen werden unter HLKM\Software\Classes\CLSID< category>\Instance< Filtern Sie CLSID>\Capabilities. Jeder Wert hat einen GUID-Namen, gefolgt von einem Zeichenfolgenwert, der den numerischen GUID-Wert enthält. Beispiel:

C++
HLKM\Software\Classes\CLSID\<category>\Instance\<My DVD encoder>\Capabilities
     default "My DVD encoder"
     REG_SZ_MULTI {...}
wobei {...} eine Eigenschafts-GUID ist, die die Anwendung ihrer Benutzeroberfläche zuordnen kann.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP mit SP2 [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 R2 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile strmif.h (include Dshow.h)

Weitere Informationen

Decodereinstellungen für Windows Media Center Edition

Encoder-API