Freigeben über


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
               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. Zum Beispiel:
C++
  HLKM\Software\Classes\CLSID\<category>\Profiles\DVD
    default "HQ DVD"
    REG_SZ {...} = "0"
    REG_SZ {...} = "1234"
dabei ist {...} eine Eigenschafts-GUID, die die Anwendung der Benutzeroberfläche zuordnen kann. Microsoft betrachtet derzeit die Definition einer Reihe von Standardprofilen.

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 {...}
dabei ist {...} eine Eigenschafts-GUID, die die Anwendung der Benutzeroberfläche zuordnen kann.

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)

Siehe auch