KS 筛选器

筛选器是一组节点,用于封装要对数据流执行的处理任务。 引脚 用作筛选器上的输入和输出管道。

简单的筛选器可以包含一个数据接收器引脚和一个数据源引脚。 该筛选器接收数据接收器引脚上的传入数据,在内部对其进行处理,并写入数据源引脚。 在下图中,引脚显示为粗线段。 在内部,滤波器将数据接收引脚连接到一个内部处理单元,节点然后连接到数据源引脚。

说明简单 ks 滤波器的示意图。

另一台设备可能会合并或拆分引脚之间的数据流。 例如,音频混音器支持多个数据接收器引脚。 混音器将它们合并成单个流,并将该流写入数据源引脚。 下图显示数据流。

混音器的示意图。

该图描述了筛选器引脚之间的内部关系。 更复杂的筛选器可能会封装多个节点来转换流经筛选器的数据。

筛选器使用 KSPROPSETID_Topology 属性集指定引脚与内部节点之间的内部连接。

KSPROPERTY_TOPOLOGY_CONNECTIONS属性查询 KS 筛选器节点之间的所有连接。 此属性返回 KSTOPOLOGY_CONNECTION数组。 每个KSTOPOLOGY_CONNECTION结构都表示筛选器内的单个数据路径连接。 在上面的混音器图中,KSTOPOLOGY_CONNECTION结构序列可能如下所示:

//    FromNode,       FromNodePin,     ToNode,        ToNodePin,
{
 {  KSFILTER_NODE,        0,            0,               0     },
 {       0,               1,       KSFILTER_NODE,        1     }
}