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 ProfilesJedes 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" |
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 {...} |
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) |