Freigeben über


Arbeiten mit Codecs

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde von MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation abgelöst. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code mediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet, wenn möglich. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet werden.]

Microsoft Windows stellt mehrere Codecs als Betriebssystemkomponenten bereit. Die verfügbaren Codecs enthalten immer diejenigen, die mit der Version von DirectX ausgeliefert werden, und Windows Medienwiedergabe in der Windows-Version enthalten war. Zusätzliche Codecs können installiert werden, wenn neuere Versionen von DirectX oder Windows Medienwiedergabe oder windows Media SDK-Runtimes installiert werden. Dritte können zusätzliche Codecs auf einem Hostsystem installieren; Diese Codecs können nur mit einer bestimmten Anwendung funktionieren, oder sie können die allgemeine Verwendung durch jede DirectShow-Anwendung unterstützen.

Codecs können auf eine von drei verschiedenen Arten implementiert werden:

  • Als installierbarer Audio- oder Videocodec vom Typ Video für Windows, der vom VideoKomprimierungs-Manager (VCM) oder audio compression manager (ACM) geladen wird. Im Allgemeinen gilt diese Technologie als veraltet, und ihre Verwendung wird nicht empfohlen. Installierbare Codecs werden über den AVI Decompressor Wrapperfilter an DirectShow-Filtergraphen beteiligt.
  • Als DirectShow-Filter. Viele Codecs von Drittanbietern werden als native DirectShow-Filter implementiert. Ein solcher Filter ist der Frauenhofer MP3-Dekomprimierungsfilter. Im Allgemeinen können diese Filter auf die übliche Weise dem Filterdiagramm hinzugefügt werden. Eine Ausnahme von dieser Regel besteht darin, dass einige Windows Media™ Audio- oder Windows Media Video-Codecs sowie der Microsoft MPEG-4-Codec einem Filterdiagramm nicht manuell hinzugefügt werden können. Diese Filter können nur von den Filtern ASF Reader und ASF Writer hinzugefügt werden.
  • Als DirectX-Medienobjekte (DMOs). DMOs sind die empfohlene Möglichkeit zum Implementieren von Codecs, da sie entweder in einem DirectShow-Filterdiagramm mit dem DMO Wrapper-Filter oder unabhängig in jeder anderen nicht DirectShow-basierten Streaminganwendung verwendet werden können. Einige Codecs für Windows Media Audio und Windows Media Video sind als DMOs implementiert. Wie bei den Windows Media-Filtern können diese DMOs nicht außerhalb des Kontexts des Windows Media SDK verwendet werden. Das bedeutet, dass sie in DirectShow nur über den ASF Reader- oder ASF Writer-Filter zu einem Diagramm hinzugefügt werden können.

In GraphEdit werden alle diese verschiedenen Codectypen zusammen unter den folgenden Kategorien angezeigt:

  • Audiokompressor
  • Videokompressor
  • DirectShow-Filter

Viele dieser Codecs werden jedoch von Drittanbietern oder anderen Microsoft-Anwendungen oder Betriebssystemkomponenten installiert und sind nicht für die Verwendung durch andere DirectShow-Anwendungen vorgesehen. Die Liste der in GraphEdit sichtbaren Codecs hängt auch davon ab, welche Version von Windows auf dem Hostsystem ausgeführt wird und welche Version des DirectShow SDK installiert ist.