ICodecAPI-Schnittstelle (strmif.h)
[Die Verwendung des CodecAPI-Features mit DirectShow- wird nicht mehr empfohlen. Die DirectShow-Verwendung wurde durch MediaPlayer, IMFMediaEngineund Audio/Video Capture in Media Foundationersetzt. Diese Features wurden für Windows 11 und Windows 10 optimiert. Statt DirectShow-empfiehlt Microsoft dringend, wenn möglich, dass neuer Code MediaPlayer, IMFMediaEngineund Audio-/Videoaufnahme in Media Foundationverwendet. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, um die neuen APIs zu verwenden, falls möglich umgeschrieben werden.]
Die ICodecAPI Schnittstellensätze und Ruft Einstellungen für einen Encoder- oder Decoderfilter ab.
Anmerkung
IN strmif.h deklarierte APIs werden für UWP-Apps (Universelle Windows-Plattform) nicht unterstützt. Um ICodecAPI in einer UWP-App zu verwenden, verwenden Sie die in icodecapi.hdeklarierte Version.
Erbschaft
Die ICodecAPI- Schnittstelle erbt von der IUnknown--Schnittstelle. ICodecAPI- hat auch folgende Typen von Membern:
Methodik
Die ICodecAPI Schnittstelle hat diese Methoden.
ICodecAPI::GetAllSettings Die GetAllSettings-Methode ruft die aktuellen Eigenschaften des Codecs ab und schreibt sie in einen Datenstrom. (ICodecAPI.GetAllSettings) |
ICodecAPI::GetDefaultValue Die GetDefaultValue-Methode ruft den Standardwert einer Codec-Eigenschaft ab. (ICodecAPI.GetDefaultValue) |
ICodecAPI::GetParameterRange Die GetParameterRange-Methode ruft den Wertebereich für eine Codec-Eigenschaft ab. (ICodecAPI.GetParameterRange) |
ICodecAPI::GetParameterValues Die GetParameterValues-Methode ruft die Liste der möglichen Werte für eine Codec-Eigenschaft ab. (ICodecAPI.GetParameterValues) |
ICodecAPI::GetValue Die GetValue-Methode ruft den aktuellen Wert einer Codec-Eigenschaft ab. |
ICodecAPI::IsModifiable Die IsModifiable-Methode fragt ab, ob eine Codec-Eigenschaft 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 Datenstrom und legt sie für den Codec fest. (ICodecAPI.SetAllSettings) |
ICodecAPI::SetAllSettingsWithNotify Die SetAllSettingsWithNotify-Methode liest Codeceigenschaften aus einem Datenstrom, 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 Codec-Eigenschaft fest. (ICodecAPI.SetValue) |
ICodecAPI::SetValueWithNotify Die SetValueWithNotify-Methode legt eine Eigenschaft für einen Codec fest und gibt eine Liste mit anderen Eigenschaften zurück, die sich als Ergebnis geändert haben. (ICodecAPI.SetValueWithNotify) |
ICodecAPI::UnregisterForEvent Die UnregisterForEvent-Methode hebt die Registrierung der Anwendung für ein angegebenes Encoderereignis auf. (ICodecAPI.UnregisterForEvent) |
Bemerkungen
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 ist und der Wert ein VARIANT-ist. Die Interpretation der VARIANT Daten hängt von der Eigenschaften-GUID ab. Eine Liste der Codec-Eigenschaften-GUIDs finden Sie unter Codec-API-Eigenschaften.
Codecprofile
Codecs können Profil- und Funktionsinformationen optional in der Systemregistrierung speichern. Mit diesen Informationen können Anwendungen das Gerät während der Geräteaufzählung abfragen. 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. Zum Beispiel:
C++ |
---|
HLKM\Software\Classes\CLSID\<category>\Profiles\DVD default "HQ DVD" REG_SZ {...} = "0" REG_SZ {...} = "1234" |
Standardcodecsfunktionen werden unter HLKM\Software\Classes\CLSID< gespeichert. category>\Instance< Filter CLSID>\Capabilities. Jeder Wert hat einen GUID-Namen, gefolgt von einem Zeichenfolgenwert, der den numerischen GUID-Wert enthält. Zum Beispiel:
C++ |
---|
HLKM\Software\Classes\CLSID\<category>\Instance\<My DVD encoder>\Capabilities default "My DVD encoder" REG_SZ_MULTI {...} |
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows XP mit SP2 [Desktop-Apps | UWP-Apps] |
mindestens unterstützte Server- | Windows Server 2003 R2 [Desktop-Apps | UWP-Apps] |
Zielplattform- | Fenster |
Header- | strmif.h (include Dshow.h) |