基于DirectShow的卫星电视多路节目播放技术
[10-10 20:38:44] 来源:http://www.88dzw.com 电子制作 阅读:8561次
文章摘要:3.1 Filter链路Filter是DirectShow中最基本的组成部分,它是完成某个特定功能的COM组件。Filter依次连接起来,构成了Filter链路。DirectShow通过一个称为Filter Graph Manager(链路图管理器)的COM对象管理整个Filter链路。应用程序通过Filter Graph Manager来对链路的状态进行控制,如播放、暂停或停止等。按照功能,Filter可以分为Source Filter、Transform Filter、Rendering Filter三种类型。Source Filter用于获取数据。数据可以来自文件也可以是实时的数据源如网
基于DirectShow的卫星电视多路节目播放技术,标签:电子小制作,http://www.88dzw.com3.1 Filter链路
Filter是DirectShow中最基本的组成部分,它是完成某个特定功能的COM组件。Filter依次连接起来,构成了Filter链路。DirectShow通过一个称为Filter Graph Manager(链路图管理器)的COM对象管理整个Filter链路。应用程序通过Filter Graph Manager来对链路的状态进行控制,如播放、暂停或停止等。按照功能,Filter可以分为Source Filter、Transform Filter、Rendering Filter三种类型。
Source Filter用于获取数据。数据可以来自文件也可以是实时的数据源如网络、数据采集卡等。
Transform Filter接收Source Filter传送来的数据,对其进行处理,比如解复用操作、音像数据的分离或编码/解码等。
Rendering Filter的主要功能是将数据送往显卡、声卡进行多媒体演示或者输出到文件进行存储。
3.2 工作模式
DirectShow框架定义了两种工作模式:推模式(Push Mode)和拉模式(Pull Mode)。
推模式下,数据被Source Filter主动推向与其相连的Transform Filter,后者再将处理过的数据推向下行Filter。推模式通常使用在实时数据情况下。对于实时数据源,数据传输速率可能不是恒定的(例如网络媒体传输、视频采集卡等),因此采用推模式Source Filter可以根据数据源的实际状况决定如何将数据传给下行Filter。
拉模式下Source Filter被动的提供数据,与其相连的Transform Filter创建一个数据线程主动的向Source Filter索取数据,有一个“拉”的过程。工作在拉模式的Filter一般采用异步读取数据的方式。拉模式通常应用于本地文件播放以及媒体编辑等。
4 设计方案
4.1 原理及流程
卫星信号经天线接收、放大、变频后以中频信号的形式送入通用接收机。通用接收机对信号进行解调和信道编码的解码。输出的传输流数据流,首先经过PSI分析得到完整的PID映射关系,然后根据节目关联表信息将其中的视音频数据分离送往解码器,最终在显示终端上播放。工作流程如图2所示。
图2
从数据采集、分离到显示,可以在一条Filter链路上实现:Source Filter获得接收机输出的传输流数据;解复用Filter实现分析PSI、解复用功能,并将视频和音频数据送往解码器Filter。
完整的Filter链路图如图3所示。
图3
图中每一个方框表示一个Filter。Source Filter没有输入并且只有一个输出。与之相连的是解复用Filter,它有一个输入和多个视频、音频输出。视频数据被送往MPEG-2解码器Filter,音频数据送往音频解码器Filter。解码器的输出连接到了Render Filter。
4.2 Filter工作模式的选择
处理微机通过高速数据采集卡获得通用接收机的输出,因此对于Filter链路来说,数据源是一种实时源。所以选择推模式作为整个Filter链路的工作模式。
5 主要模块的设计和实现难点
5.1 Source Filter
Source Filter封装了采集卡的接口函数,采用双缓冲工作方式,通过轮询察看缓冲区是否已满。当缓冲区满时将数据送往与之相连的解复用Filter。
5.2 解复用Filter
解复用Filter是整个Filter链路的核心部分。它的功能是分析传输流的PSI,建立完整的PDI映射关系;然后从传输流中分离出每路节目的视频和音频数据,将它们送往相应的视频和音频解码器,同时接收应用程序的控制信息。解复用Filter对每一个传输流包的处理过程如图4所示。
《基于DirectShow的卫星电视多路节目播放技术》相关文章
- › 基于DisplayPort接口的HDCP软件实现及应用
- › 基于DirectShow的MPEG-4视频传输系统的研究与实现
- › 基于DirectShow的卫星电视多路节目播放技术
- 在百度中搜索相关文章:基于DirectShow的卫星电视多路节目播放技术
- 在谷歌中搜索相关文章:基于DirectShow的卫星电视多路节目播放技术
- 在soso中搜索相关文章:基于DirectShow的卫星电视多路节目播放技术
- 在搜狗中搜索相关文章:基于DirectShow的卫星电视多路节目播放技术