Neuigkeiten für Media Foundation
Microsoft Media Foundation wurde in Windows Vista als Ersatz für DirectShow eingeführt. DirectShow wird natürlich weiterhin in Windows 7 unterstützt, aber Entwickler werden ermutigt, Media Foundation in ihren neuen digitalen Medienanwendungen zu verwenden.
Die Verbesserungen von Media Foundation können wie folgt zusammengefasst werden:
- Bessere Formatunterstützung, einschließlich MPEG-4
- Unterstützung für Aufnahmegeräte und Hardwarecodecs
- Ein vereinfachtes Programmiermodell
- Verbesserungen an der Plattform
Bessere Formatunterstützung
Die Media Foundation-Audio-/Videopipeline wurde in Windows Vista implementiert, unterstützte jedoch nur einen begrenzten Satz von Formaten und Dateicontainern, was bedeutete, dass einige Anwendungen auf ältere Technologien wie DirectShow zurückgreifen mussten. In Windows 7 umfasst Media Foundation die folgenden neuen Codecs, Medienquellen und Mediensenken:
- AAC-Decoder
- AAC-Encoder
- AVI-/WAVE-Dateiquelle
- DV-Videodecoder
- H.264-Videodecoder
- H.264-Videoencoder
- MJPEG-Decoder
- MP3-Dateisenke*
- MP4-/3GP-Dateiquelle
- MP4-/3GP-Dateisenke
Hinweis
Die MP3-Dateisenke enthält keinen MP3-Audio-Encoder.
Weitere Informationen finden Sie unter Unterstützte Medienformate in Media Foundation.
Hardwaregeräteunterstützung
Media Foundation unterstützt jetzt die folgenden Arten von Hardwaregeräten in der Audio-/Videopipeline:
- UVC 1.1-Videoaufnahmegeräte wie Webcams
- Audioaufnahmegeräte
- Hardware-Encoder und -Decoder
- Hardwarevideoprozessoren, z. B. Farbraumkonverter
Hardwarecodecs können eine sehr schnelle Videotranscodierung durchführen. Beispielsweise kann eine Anwendung Windows Media Video (WMV)-Dateien auf ein Mobiltelefon übertragen, das nur 3GP-Dateien unterstützt. Mithilfe eines Hardware-Encoders kann die Anwendung die Datei im Hintergrund transcodieren, bevor sie auf das Gerät übertragen wird.
Hardwaregeräte werden in Media Foundation durch ein Proxyobjekt dargestellt und werden wie softwarebasierte Komponenten in der Pipeline verwendet.
Vereinfachtes Programmiermodell
In Windows Vista hat Media Foundation einen relativ niedrigen Satz von APIs verfügbar gemacht. Diese APIs sind flexibel, aber zu komplex für einfache Aufgaben. Windows 7 fügt neue allgemeine APIs hinzu, die das Schreiben von Medienanwendungen in C++ vereinfachen. Diese neuen allgemeinen APIs umfassen Folgendes.
API | Beschreibung |
---|---|
Quellreader | Der Quellreader ruft unformatierte oder decodierte Daten aus einer Mediendatei ab. Sie können z. B. den Quellreader verwenden, um Miniaturansichtbitmaps aus einer Videodatei abzurufen oder die Wellenformdaten in einer Audiodatei zu analysieren. Sie können den Quellreader auch verwenden, um Livedaten von einem Audio- oder Videoaufnahmegerät abzurufen. |
Sink Writer | Mit dem Sink Writer können Sie Mediendateien erstellen, indem Sie nicht komprimierte oder codierte Daten übergeben. Beispielsweise können Sie ihn verwenden, um eine Videodatei neu zu codieren oder Livevideos von einer Webcam in eine Datei aufzunehmen. |
Transcode API | Dieses Feature unterstützt die am häufigsten verwendeten Audio-/Videocodierungsszenarien. |
Sie können weiterhin die APIs auf niedriger Ebene in Media Foundation verwenden. Sie können dies tun, wenn Sie mehr Kontrolle über die Audio-/Videopipeline benötigen.
Plattformverbesserungen
Windows 7 enthält zahlreiche Verbesserungen an den zugrunde liegenden Media Foundation-Plattform-APIs. Erweiterte Anwendungen können diese APIs direkt verwenden; andere Anwendungen profitieren indirekt. Die Verbesserungen umfassen:
- Änderungen in der Videopipeline zur Reduzierung des Stromverbrauchs und der Videospeicherauslastung.
- DXVA-HD: Microsoft DirectX Video Acceleration High Definition (DXVA-HD) ist eine neue API für die hardwarebeschleunigte Videoverarbeitung. DXVA-HD bietet ein flexibleres Kompositionsmodell als die vorherige DXVA-Videoverarbeitungs-API und eignet sich besser für HD-Videoformate.
- Ein neuer Mechanismus zum Aufzählen von Quellen und Decodern, der Werte und eine Liste mit bevorzugten/blockierten Einträgen enthält. Dieses Feature verbessert die Gesamtsicherheit des Systems. Weitere Informationen finden Sie in den folgenden Themen:
SDK-Änderungen
- Neue Header und Bibliotheksdateien: Media Foundation-Header und -Bibliotheken
- DLL- und LIB-Änderungen: Bibliotheksänderungen in Windows 7
- Neue SDK-Beispiele:
- Verbesserungen bei TopoEdit:
- Unterstützung für Transcodierung. Siehe Erstellen einer Transcodierungstopologie mit TopoEdit.
- Unterstützung für Audio- und Videoaufnahme. Siehe Topologiemenü.
Neu in Windows 8
Zu den neuen Updates für Media Foundation mit Windows 8 gehören:
- Die IMFCaptureEngine steuert mindestens ein Aufnahmegerät. Eine Liste der Attribute finden Sie unter Capture Engine-Attribute. Andere neue Schnittstellen zur Medienaufnahme sind IMFCapturePhotoSink, IMFCapturePreviewSink, IMFCaptureRecordSink, IMFCaptureSink und IMFCaptureSource.
- Die folgenden Media Foundation-Klassenerweiterungen sind neu für Windows 8:
- Die Direct3D 11 Video-API ist neu für Windows 8. Windows 8-Desktop-Apps können weiterhin die Direct3D 9 Video-API verwenden, Windows Store-Apps müssen jedoch die neue Direct3D 11 Video-API verwenden. Weitere Informationen zu Microsoft Direct3D 11 Video finden Sie unter Unterstützen der Direct3D 11-Videodecodierung in Media Foundation.
- Es wurden Aktualisierungen und Verbesserungen an Media Foundation-Arbeitswarteschlangen vorgenommen. Weitere Informationen finden Sie unter Verbesserungen bei Arbeitswarteschlangen und Threading.
- H.264 UVC 1.5-Kamera-Encoder.
- Eine Liste der Media Foundation-API, die mit Windows Store-Apps verwendet werden kann, finden Sie unter Win32 und COM für Windows Store-Apps (Multimedia).
- Media Foundation ist nicht in den N- und KN-Editionen von Windows 8 enthalten. Weitere Informationen finden Sie unter Microsoft Windows Media Feature Pack für N- und KN-Versionen aller Windows 8-Editionen.
Zugehörige Themen