DirectShow网络源过滤器-Net Source Filter

 

DirectShow的学习是痛苦的过程,对于一个写C#,JAVA而从没接触过VC的人学习FILTER的编写那更是超级痛苦。

项目中有网络实时监控的功能,软件UI是用C#实现的,回放是基于DIRECTSHOW做的,过滤器都是用的免费开源的。但网络监控难度就有点大了,H264格式传输,H264解码。。。传输好说,主要是解码显示,自己写解码显示几乎是不可能的任务。无奈,从头看VC,DIRECTSHOW。功夫不负人啊,泪奔T_T。

*暂时只有视频信息,后面要做的工作是加入音频、同步等,可配置支持为TCP。

一、架构

1、过滤器图表

 


2、项目结构

 


二、学习心得

      DSSDK中的FILTER例子一定要看,多看几遍,然后通过网上的学习资料自己试着写一个简单的过滤器。了解过滤器的工作模式:过滤器被添加进图表即是创建一个实例,RUN则是调用每个PIN上的RUN接口。数据处理思路:

1、获取要传递的数据

2、条用输出Pin的GetDeliveryBuffer方法,获取输出Pin上的一个待填充的sample

3、用准备好的数据填充这个sample

4、调用输出Pin上的Deliver将sample丢出

    发现VC代码看不懂没关系,慢慢看,看10遍。。。居然看明白了。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值