我现在在做一个小项目主要是完成视频采集,并将采集到的数据使用流的方式发送到监控中心(客户端程序)并能使用dshow控件正常接收并播放传过来的视频流?
其中Dshow控件中ASDWrite控件我不知道如何使用?有谁熟悉这方面的请帮帮忙!!!

解决方案 »

  1.   

    FilterGraph.ClearGraph;
      FilterGraph.Active := false;
      Filter.BaseFilter.Moniker := SysDev.GetMoniker(TMenuItem(Sender).tag);
      FilterGraph.Active := true;
      with FilterGraph as ICaptureGraphBuilder2 do
      begin
        CheckDSError(RenderStream(@PIN_CATEGORY_CAPTURE , nil, Filter as IBaseFilter, nil, ASFWriter as IbaseFilter));
        CheckDSError(RenderStream(@PIN_CATEGORY_PREVIEW , nil, Filter as IBaseFilter, nil, VideoWindow as IbaseFilter));
      end;
      FilterGraph.Play;
      

  2.   

    我也想知道,楼主说的“采集到的数据使用流的方式发送到监控中心(客户端程序)”如何个发送法,现在有一个这样的图像信号到达工作站的客户机上,如何在DELPHI中转化为实像呢?
      

  3.   

    发送不是问题,关键是如何播放,不过那段代码已经把播放问题解决了。你只要利用TCPIP之类的把流文件传过就可以了。做语音系统时就实现过这样功能。
      

  4.   

    ASFWrite?
    用Windows Media Encoder可以直接创建本地发布点,或者把录制的内容发布到Windows Media Service服务器上供点播或者组播