跳转到内容

Media Foundation

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

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

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

外部链接