【发布时间】:2013-10-16 11:19:45
【问题描述】:
我要做什么
我正在尝试使用 VS2008 使用 DirectShow 框架和 VC++ 语言创建一个示例 USB 相机流应用程序(或多或少像 amcap 的剥离版本)。以下是我用来构建的过滤器图信息。
过滤图
网络摄像头(捕获引脚)- 智能 Tee(预览引脚)- 将单色 Y8 转换为 YUY2 的转换过滤器 - 视频混合渲染。
其他信息
- 网络摄像头以 640x480、Y8 @ 30FPS 流式传输。
- 在 Windows 7 Professional、Intel i3 上测试 - 运行良好,能够以 30FPS 的速度传输 VGA。
- 视频捕捉过滤器中没有可用的预览图钉。
问题
使用相同的过滤器图设置,我在 Windows 8 Intel i3 PC 上遇到问题。但是,如果我用 Microsoft SDK 中提供的 Infinte Tee 示例替换 Smart Tee 过滤器,它运行良好。为什么智能 tee 过滤器在 Windows 8 中不起作用?
编辑: 问题是我无法在 Windows 8 上将视频捕获过滤器连接到智能 tee 过滤器,但能够在 Windows 7 上连接。我尝试通过 graphedit 工具。 Windows 8 正在尝试为 Y8 媒体子类型形成下图(YUY2 工作正常)。
网络摄像头(捕获引脚) - 将单色 Y8 转换为 YUY2 的变换滤镜 - 智能 Tee(预览引脚) - 视频混合渲染。
当我运行图表时,graphedit 异常关闭。
如果我没有注册转换过滤器,我在连接 Capture 过滤器和 smart tee 时会收到此错误。 '这些过滤器无法就连接达成一致。验证输入和输出引脚的类型兼容性。找不到中间过滤器的组合来建立连接。 (返回码 = 0x80040217)'.
另外,如果我使用 Infinte tee 滤镜,每隔几分钟就会出现帧率下降。 Windows 7 和 Windows 8 上的智能三通过滤器有什么区别?什么可以替代智能三通?
提前感谢您的帮助。
【问题讨论】:
-
你写“我面临问题”到底是什么意思?
-
您好 Roman,我已经更新了我的帖子以说明问题。请原谅不清楚的帖子。
标签: visual-studio-2008 windows-8 camera directshow platform-sdk