第二章(编程环境与平台)

编程环境与平台

课程要求自学(2小时):Windows运行机制。

链接:https://www.bilibili.com/video/av42464433/?spm_id_from=333.788.videocard.5

数据流

数据流: 数据流是同一类型的媒体数据的一种序列。

媒体容器

媒体容器(相当于文件):

  1. 文件头部:描述流的个数,以及每一个流的格式等。

  2. 索引:用于随机存取内容。

  3. 元数据:即数据的数据,也就是用于描述内容的数据(例如作者或标题)。

  4. 数据包头部:用于网络传输或随机存取Media Foundation使用术语“容器”来描述数据流、头部、索引、元数据等等的整个包。

Windows程序的核心是事件驱动和消息循环机制以及回调机制(窗口过程是典型的回调函数)

Media Foundation架构

Media Foundation架构

Media Session并不直接管理媒体数据,而是要借助Topology

Topology也是一个Media Foundation对象,用于表示媒体管道中的数据如何流动。

在Topology中,数据流所经过的处理模块称为节点(Node),如媒体源、转换器、输出节点

数据管道模式:

  • 通过Media Session控制其他组件

  • Media Source、MFT、Media Sink

  • MFT通常由MF平台自动处理

  • 应用不能直接处理数据

数据源模式:

  • Source Reader、Sink Writer控制数据

  • 程序处理MFT(Encoder/Decoder)

  • 应用可以直接处理数据

媒体信道

媒体信道包括三种类型的对象,以生成或处理媒体数据。

  • 媒体源(Media Source):将数据引入管道。一个媒体源可以从本地文件中获取数据,如以一个视频文件;也可以从网络流或是硬件捕获设备中获取数据。

  • Media Foundation变换(MFTs):在数据流中处理数据,编码器和译码器是作为MFT的实现。

  • 媒体信宿(Media Sink):使用数据;例如在显示屏上播放视频、播放音频、或是把数据写入一个媒体文件等。

Windows运行机制

链接:https://www.bilibili.com/video/av42464433/?spm_id_from=333.788.videocard.5

  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
  • Copyrights © 2023-2024 Guijie Wang
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信