跳转到内容

Media Foundation

本页使用了标题或全文手工转换
维基百科,自由的百科全书

这是本页的一个历史版本,由Chchwy留言 | 贡献2013年7月29日 (一) 06:38编辑。这可能和当前版本存在着巨大的差异。

Media Foundation是微軟在Windows上推出的新一代多媒體應用庫,目的是提供Windows平台一個統一的多媒體影音解決方案,開發者可以透過Media Foundation播放影片和聲音文件、進行影音編碼或者多媒體文件轉碼等等工作。Media Foundation 是DirectShow為主的舊式多媒體應用程序接口的替代者與繼承者,在微軟的計畫下將逐步汰換[DirectShow]]技術。Media Foundation要求Windows Vista或更高版本,不支援較早期的Windows版本如Windows XP。

Media Foundation 長於高質量的音頻和視頻播放,高清內容(如HDTV, 高清電視)和數字版權管理(DRM)訪問控制。Media Foundation在不同的Windows版本上能力不同,在Windows Vista上僅支持WMV格式,但到了Windows 7後添加了H264編碼支持。Windows 8上則多了數種更高品質的設定。

架構

Media Foundation 架構

Media Foundation (以下簡稱MF) 架構分為控制層(Control layer),核心層(Core layer)與平台層(Platform layer)。大部分MF功能均由核心層提供,開發者則由控制層來控制行為。一般開發者僅須了解控制層與核心層,幾乎不須接觸平台層。

Media Foundation提供了兩種編程模型,第一種是以Media Session為主的媒體管道模型(Media pipeline)。但是媒體管道模型太過複雜,且曝露過多底層細節,故微軟於 Windows 7 上推出第二種編成模型,內含SinkWriter、SourceReader、以及Transcode API三部分,大大簡化了MF的使用難度。

媒體管道(pipeline)分三個組成部分:媒體來源(Media Source),媒體接收器(Media Sink)和媒體平台變換(Media Foundation Transforms)。

媒體平台變換

媒體平台變換(Media Foundation Transforms)推出了一個革新式的技術 DirectX Media Objects (DMOs)。混合DMO的/ MFT的對象也可以創建。應用程序可以使用MFTs內的管道,或直接使用它們作為獨立的對象。其種類如下:

  • 音頻和視頻編解碼器
  • 音頻和視頻效果
  • Multiplexers 和 demultiplexers
  • Tees
  • 色彩空間轉換器
  • Sample-rate converters
  • 視頻定標器(Video scalers)

微軟建議開發人員編寫MFTs,取代DirectShow篩選器[1]

增強型視頻渲染器

Media Foundation 使用 Enhanced Video Renderer (EVR)作為渲染器。它可以組合多達16個同步流(simultaneous streams),第一流是一個參考流(reference stream)。

相對於DirectShow的優勢

MF提供了以下好處:

  • 可擴展的高清晰度內容和數字版權管理保護(DRM-protected)的內容。
  • 允許DirectX視頻加速用於之外DirectShow的基礎設施。支持DXVA 2.0。
  • MF的可擴展性(extensibility),使不同的內容保護系統一起運作。
  • 使用多媒體類別計劃程序服務(MMCSS),是一個新的系統服務在Windows Vista。

應用支援

Media Foundation 首次適用於 Windows Vista, 可見諸於 media playback applications.

注釋

  1. ^ Migrating from DirectShow to Media Foundation and comparison of the two

外部連結