在线程中调用FilterGraph.Play是否安全

wenjiu5 2014-04-04 02:23:22
用DirectShow操作视频采集卡,有视频预览窗口,如果单独起一个线程并在这个线程中调用FilterGraph.Play是否安全?
有懂的指点一下,QQ:78562901
...全文
258 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
__cc__ 2014-04-04
  • 打赏
  • 举报
回复
引用 4 楼 wenjunlin2000 的回复:
我主要是担心视频预览这块出问题:因为用的是视频预览控件,我不知道控件本身是怎么实现的,我猜应该是有一个线程或者定时器不停的从采集卡取数据然后显示到窗口上,所以我担心如果我在UI以外的线程(即主线程以外的线程)调用FilterGraph.Play会不会导致不同的线程同时访问未受保护的数据。
数据的传递不会受UI的影响,Directshow肯定要保证数据流动时候的并发安全。至于控件内部,那就由控件内部保证线程安全。而且Play本身控制的不是数据,而是启动数据流。所以不用担心的。
wenjiu5 2014-04-04
  • 打赏
  • 举报
回复
引用 3 楼 neustar1 的回复:
[quote=引用 2 楼 wenjunlin2000 的回复:] 就是说在一个单独的线程中(而不是UI线程即主线程)调用FilterGraph.play会不会出问题
FiterGraph和UI没有关系的。[/quote]您有QQ吗,咱们QQ交流一下。
wenjiu5 2014-04-04
  • 打赏
  • 举报
回复
我主要是担心视频预览这块出问题:因为用的是视频预览控件,我不知道控件本身是怎么实现的,我猜应该是有一个线程或者定时器不停的从采集卡取数据然后显示到窗口上,所以我担心如果我在UI以外的线程(即主线程以外的线程)调用FilterGraph.Play会不会导致不同的线程同时访问未受保护的数据。
__cc__ 2014-04-04
  • 打赏
  • 举报
回复
引用 2 楼 wenjunlin2000 的回复:
就是说在一个单独的线程中(而不是UI线程即主线程)调用FilterGraph.play会不会出问题
FiterGraph和UI没有关系的。
wenjiu5 2014-04-04
  • 打赏
  • 举报
回复
就是说在一个单独的线程中(而不是UI线程即主线程)调用FilterGraph.play会不会出问题
__cc__ 2014-04-04
  • 打赏
  • 举报
回复
引用 楼主 wenjunlin2000 的回复:
用DirectShow操作视频采集卡,有视频预览窗口,如果单独起一个线程并在这个线程中调用FilterGraph.Play是否安全? 有懂的指点一下,QQ:78562901
安全?什么意思

2,543

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧