- 博客(6)
- 收藏
- 关注
原创 Media Foundation学习笔记(六)Media Foundation的架构 Media Session
Media Session是管理数据流的对象。 接口:IMFMediaSession。 创建对象:MFCreateMediaSession、MFCreatePMPMediaSession(创建支持受保护内容的MedisSession,PMP全称是Protected Media Path)。 一般一个应用使用MediaSession是以下流程:1) 创建一个to
2014-02-27 20:00:56 2318
原创 Media Foundation学习笔记(五)Media Foundation的架构 Pipeline
Pipeline层是直接产生和处理媒体数据的层,它由“Media Sources”、“MFTs”和“Media Sinks”组成。大多数应用程序不需要直接调用Pipeline层对象的方法,而只需要使用如“Media Session”、“Source Reader”和“SinkWriter”这些上层的对象。Media SourcesMedia Source
2014-02-27 16:57:31 2949
原创 Media Foundation学习笔记(四)Media Foundation的架构 Platform API
Media Foundation Platform API 初始化HRESULT hr = MFStartup(MF_VERSION);注意:如果应用程序编译时使用的和系统上Media Foundation的dll不匹配的头文件,MFStartup会返回MF_E_BAD_STARTUP_VERSION错误! MFShutdown(); 异步方法在Media Fo
2014-02-17 17:50:32 3238
原创 Media Foundation学习笔记(三)Media Foundation的架构 基本对象类型
基本对象类型Attributes 一个Attribute就是一个“键”-“值”对,其中“键”是一个GUID,“值”是一个PROPVARIANT。在Media Foundation中,Attributes被广泛地用于配置对象、描述媒体格式、查询对象属性和其他目的。“值”只能是这7种类型:UINT32、UINT64、64-bits浮点数、GUID、null结尾的宽字符串、字节数组和IU
2014-02-14 15:52:51 5316
原创 Media Foundation学习笔记(二)Media Foundation的架构 概览
概览下面的图表展示了Media Foundation架构的一个上层视图: 如上所示,Media Foundation提供了2种编程模型: 第一种,Media Pipeline模式。如图表左边部分所示,使用一个端到端Pipeline,类似DShow中使用GraphBuilder、Filter的模式。 第二种:Souce Reader & Sink Writer模式。
2014-02-12 17:24:42 5881 2
原创 Media Foundation学习笔记(一)重要概念
学习Media Foundation之前需要理解以下几个重要概念。(一)流定义:一个使用一致类型的媒体数据序列。例如:视频、音频、文本、脚本命令、静止图片等。通常一个媒体文件包含一个或者多个流。 (二)压缩 目的:通过移除冗余数据来减小数据流的大小。分为有损和无损压缩2种压缩方式。 (三)媒体容器 一个容器至少包含以下部分:文件头:描述流的数目,
2014-02-12 17:14:21 3959 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人