广播驱动体系(BDA) 系列讲座:四
来源:互联网 发布:物联网书籍推荐 知乎 编辑:程序博客网 时间:2024/04/28 17:22
BAD的目标是不管硬件或者接收信号如何变,它的整体架构可以不做大调整,为此BDA引入功能拓扑图的概念,它把类似DirectShow Filter的结构作为节点(Node),包含在一个receiver filter中,因此一个filter可以做很多工作,这取决于该filter包含了哪些node,以及这些node都具备哪些功能。Functional Topology只是描述了一个结构,具体工作分发给了拓扑图中的各个node。在我们的程序中,外部可见的一个filter:tunner filter,实际上包含了两个node,tuner 和demodulator。拓扑图中的node不是随便什么类型都可以的,只有在BDA Node Category GUIDs列表中列明的node类型,才可以加到图中去,node的各项功能也都是用注册分发例程的方法完成。
BDA Node Category GUIDs:
KSNODE_BDA_RF_TUNER
KSNODE_BDA_QAM_DEMODULATOR
KSNODE_BDA_QPSK_DEMODULATOR
KSNODE_BDA_8VSB_DEMODULATOR
KSNODE_BDA_OPENCABLE_POD
KSNODE_BDA_PID_FILTER
KSNODE_BDA_IP_SINK
每种node都有特定的GUID,当network provider filter连上tunner filter时,它会根据GUID寻找相应的node并生成实例。Tunner filter中还使用Template topology 来描述各个PIN和 NODE的类型以及连接方式等信息。
如上图所示,整幅图是一个Functional Topology,tunner node和 demodualator node是两个node,它们都有特定的GUID,他们都是在network provider filter连上tunner filter时动态生成的。pin1和tunner node相连而不和demodulator相连,tunner node在 demodulator node之前而不是之后等等信息是Template topology决定好的,整个图的连接也是在network provider filter连上tunner filter时根据Template topology动态完成的。
不过一个filter里包含几个node不是硬性规定的,比如上面这幅图,可以是一个filter里包含两个node,也可以拆分成两个filter,每个filter包含一个node,看自己喜欢。
我们常用的node有Network Provider,Tuner,Demodulator和Capture,Network Provider目前有很多现成的filter可用,可能做DMB的时候需要去修改这部分,大部分时候直接拿来用就可以;tunner和 demodulator现在是放在同一个filter里,叫tunner filter;capture filter是最核心的部分,负责从硬件读取数据和往后传数据,一般单独做成一个filter。BDA还提供了很多其他的node,帮我们做了很多工作。比如PID Filter NODE实际上做的是demultiplexer filter的工作,不过目前为止我都不用PID Filter NODE,而是用DirectShow中的demultiplexer filter。
- 广播驱动体系(BDA) 系列讲座:四
- 广播驱动体系(BDA) 系列讲座:一
- 广播驱动体系(BDA) 系列讲座:二
- 广播驱动体系(BDA) 系列讲座:三
- 广播驱动体系(BDA) 系列讲座:五
- 广播驱动体系(BDA) 系列讲座:六
- 广播驱动体系(BDA) 系列讲座:七
- BDA(广播驱动架构)技术文章转载【和电视卡有关】
- ASP系列讲座(四)使用脚本语言
- XML技术系列讲座(四)
- BDA讲座系列,发表文章太慢,本人已经转移到百度空间中
- BDA 驱动开发
- bda驱动学习笔记
- 转载BDA驱动学习笔记(1--3)
- 转载BDA驱动学习笔记(4--6)
- Eclipse零起步系列讲座 (四~六)(转贴)
- [转]BDA驱动学习笔记
- 基于微软广播驱动体系的数字电视技术及其应用程序
- Skyline6右键菜单的汉化
- 成功编译9x DEMOD BDA驱动程序
- Flash Media Server 4.5入门—第六部分:初学者HTTP动态流技术向导
- linux distro timeline
- 支持HTML5的浏览器
- 广播驱动体系(BDA) 系列讲座:四
- 学习工具索引
- 设计模式-迭代器模式
- js的定时器
- SQL Server,Oracle,DB2索引建立语句的对比
- Berg Insight:2016年,全球七分之一的广告来自移动平台
- web框架之Spring-MVC环境搭建
- oracle 的伪列rownum,排序order by分析
- 广播驱动体系(BDA) 系列讲座:五