Windows XP 上的 Phonon 无法加载肯定存在的 DS 后端

发布于 2024-09-14 17:09:56 字数 6626 浏览 6 评论 0原文

我在 WinXP 上遇到声子直接显示后端问题。基本上它对我来说根本不起作用,我已经尝试过 4.7.0 SDK 和从源代码构建的版本。在这两种情况下,phonon_ds94.dll 都位于 /plugins/phonon_backend/ 目录中。我的系统是 WinXP,我使用 VS 2008。

下面是我如何创建视频播放器:

vp = new Phonon::VideoPlayer(this);
...
vp->play(QUrl("..."));

是我得到的输出:

WARNING: Phonon::createPath: Cannot connect  Phonon::MediaObject ( no objectName ) to  Phonon::VideoWidget ( no objectName ).

这是我在调试运行 qt-creator 期间得到的输出:

Exception at 0x7c812afb, code: 0x406d1388: Startup complete, flags=0x0


Exception at 0x7c812afb, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be continued)

at:
0     kernel32!RaiseException 0x7c812afb
1     VSFilter!DllGetClassObject 0x24f8a76
2     VSFilter!DllGetClassObject 0x24a77f4
3     VSFilter 0x248459e
4     VSFilter!DllGetClassObject 0x251ac7c
5     VSFilter 0x248a53e
6     ole32!CoCreateInstance 0x775007b6


Exception at 0x7c812afb, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be     continued)

at:
0     kernel32!RaiseException 0x7c812afb
1     VSFilter!DllGetClassObject 0x24f8a76
2     VSFilter!DllGetClassObject 0x24a77f4
3     VSFilter 0x248459e
4     VSFilter!DllGetClassObject 0x251ac7c
5     VSFilter 0x248a53e
6     ole32!CoCreateInstance 0x77501ee6
7     ntdll!RtlAllocateHeap 0x7c9101db
8     VSFilter!DllGetClassObject 0x24f8b43
9     ntdll!RtlAllocateHeap 0x7c9101db
10    VSFilter!DllGetClassObject 0x24f8b43
11    VSFilter!DllGetClassObject 0x2516646
12    VSFilter!DllGetClassObject 0x2517c6b
13    USER32!GetWindowLongW 0x7e4189cd
14    USER32!DispatchMessageW 0x7e418a10
15    kernel32!ValidateLocale 0x7c839ad8
16    kernel32!GetModuleFileNameA 0x7c80b730


Exception at 0x7c812afb, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be     continued)

at:
0     kernel32!RaiseException 0x7c812afb
1     VSFilter!DllGetClassObject 0x24f8a76
2     VSFilter!DllGetClassObject 0x24a77f4
3     VSFilter 0x248459e
4     VSFilter!DllGetClassObject 0x251ac7c
5     VSFilter 0x248a53e
6     ole32!CoCreateInstance 0x77501ee6
7     ntdll!RtlAllocateHeap 0x7c9101db
8     VSFilter!DllGetClassObject 0x24f8b43
9     ntdll!RtlAllocateHeap 0x7c9101db
10    VSFilter!DllGetClassObject 0x24f8b43
11    VSFilter!DllGetClassObject 0x2516646
12    VSFilter!DllGetClassObject 0x2517c6b
13    USER32!GetWindowLongW 0x7e4189cd
14    USER32!DispatchMessageW 0x7e418a10
15    kernel32!ValidateLocale 0x7c839ad8
16    kernel32!GetModuleFileNameA 0x7c80b730


Exception at 0x7c812afb, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be continued)

at:
0     kernel32!RaiseException 0x7c812afb
1     VSFilter!DllGetClassObject 0x24f8a76
2     VSFilter!DllGetClassObject 0x24a77f4
3     VSFilter 0x248459e
4     VSFilter!DllGetClassObject 0x251ac7c
5     VSFilter 0x248a53e
6     ole32!CoCreateInstance 0x77501ee6
7     ntdll!RtlAllocateHeap 0x7c9101db
8     VSFilter!DllGetClassObject 0x24f8b43
9     ntdll!RtlAllocateHeap 0x7c9101db
10    VSFilter!DllGetClassObject 0x24f8b43
11    VSFilter!DllGetClassObject 0x2516646
12    VSFilter!DllGetClassObject 0x2517c6b
13    USER32!GetWindowLongW 0x7e4189cd
14    USER32!DispatchMessageW 0x7e418a10
15    kernel32!ValidateLocale 0x7c839ad8
16    kernel32!GetModuleFileNameA 0x7c80b730


Exception at 0x7c812afb, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be continued)

at:
0     kernel32!RaiseException 0x7c812afb
1     VSFilter!DllGetClassObject 0x24f8a76
2     VSFilter!DllGetClassObject 0x24a77f4
3     VSFilter 0x248459e
4     VSFilter!DllGetClassObject 0x251ac7c
5     VSFilter 0x248a53e
6     ole32!CoCreateInstance 0x77501ee6
7     ntdll!RtlAllocateHeap 0x7c9101db
8     VSFilter!DllGetClassObject 0x24f8b43
9     ntdll!RtlAllocateHeap 0x7c9101db
10    VSFilter!DllGetClassObject 0x24f8b43
11    VSFilter!DllGetClassObject 0x2516646
12    VSFilter!DllGetClassObject 0x2517c6b
13    USER32!GetWindowLongW 0x7e4189cd
14    USER32!DispatchMessageW 0x7e418a10
15    kernel32!ValidateLocale 0x7c839ad8
16    kernel32!GetModuleFileNameA 0x7c80b730


Exception at 0x7c812afb, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be continued)

at:
0     kernel32!RaiseException 0x7c812afb
1     VSFilter!DllGetClassObject 0x24f8a76
2     VSFilter!DllGetClassObject 0x24a77f4
3     VSFilter 0x248459e
4     VSFilter!DllGetClassObject 0x251ac7c
5     VSFilter 0x248a53e
6     ole32!CoCreateInstance 0x77501ee6
7     ntdll!RtlAllocateHeap 0x7c9101db
8     VSFilter!DllGetClassObject 0x24f8b43
9     ntdll!RtlAllocateHeap 0x7c9101db
10    VSFilter!DllGetClassObject 0x24f8b43
11    VSFilter!DllGetClassObject 0x2516646
12    VSFilter!DllGetClassObject 0x2517c6b
13    USER32!GetWindowLongW 0x7e4189cd
14    USER32!DispatchMessageW 0x7e418a10
15    kernel32!ValidateLocale 0x7c839ad8
16    kernel32!GetModuleFileNameA 0x7c80b730


Exception at 0x7c812afb, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be     continued)

at:
0     kernel32!RaiseException 0x7c812afb
1     VSFilter!DllGetClassObject 0x24f8a76
2     VSFilter!DllGetClassObject 0x24a77f4
3     VSFilter 0x248459e
4     VSFilter!DllGetClassObject 0x251ac7c
5     VSFilter 0x248a53e
6     ole32!CoCreateInstance 0x77501ee6
7     ntdll!RtlAllocateHeap 0x7c9101db
8     VSFilter!DllGetClassObject 0x24f8b43
9     ntdll!RtlAllocateHeap 0x7c9101db
10    VSFilter!DllGetClassObject 0x24f8b43
11    VSFilter!DllGetClassObject 0x2516646
12    VSFilter!DllGetClassObject 0x2517c6b
13    USER32!GetWindowLongW 0x7e4189cd
14    USER32!DispatchMessageW 0x7e418a10
15    kernel32!ValidateLocale 0x7c839ad8
16    kernel32!GetModuleFileNameA 0x7c80b730


Exception at 0x7c812afb, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be     continued)

at:
0     kernel32!RaiseException 0x7c812afb
1     VSFilter!DllGetClassObject 0x24f8a76
2     VSFilter!DllGetClassObject 0x24a77f4
3     VSFilter 0x248459e
4     VSFilter!DllGetClassObject 0x251ac7c
5     VSFilter 0x248a53e
6     ole32!CoCreateInstance 0x77501ee6
7     ntdll!RtlAllocateHeap 0x7c9101db
8     VSFilter!DllGetClassObject 0x24f8b43
9     ntdll!RtlAllocateHeap 0x7c9101db
10    VSFilter!DllGetClassObject 0x24f8b43
11    VSFilter!DllGetClassObject 0x2516646
12    VSFilter!DllGetClassObject 0x2517c6b
13    USER32!GetWindowLongW 0x7e4189cd
14    USER32!DispatchMessageW 0x7e418a10
15    kernel32!ValidateLocale 0x7c839ad8
16    kernel32!GetModuleFileNameA 0x7c80b730

WARNING: Phonon::createPath: Cannot connect  Phonon::MediaObject ( no objectName ) to  Phonon::VideoWidget ( no objectName ).

在正常程序运行中,这 有人有什么想法吗?

I am experiencing problems with phonon direct show backend on WinXP. Basically it doesn't work at all for me I've tried it with both 4.7.0 SDK and with version built from sources. In both cases phonon_ds94.dll is located in /plugins/phonon_backend/ dir. My system is WinXP and I use VS 2008.

Here how I create video player:

vp = new Phonon::VideoPlayer(this);
...
vp->play(QUrl("..."));

On normal program run here is what I've got as its output:

WARNING: Phonon::createPath: Cannot connect  Phonon::MediaObject ( no objectName ) to  Phonon::VideoWidget ( no objectName ).

And this is what I've got as output during debug run qt-creator:

Exception at 0x7c812afb, code: 0x406d1388: Startup complete, flags=0x0


Exception at 0x7c812afb, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be continued)

at:
0     kernel32!RaiseException 0x7c812afb
1     VSFilter!DllGetClassObject 0x24f8a76
2     VSFilter!DllGetClassObject 0x24a77f4
3     VSFilter 0x248459e
4     VSFilter!DllGetClassObject 0x251ac7c
5     VSFilter 0x248a53e
6     ole32!CoCreateInstance 0x775007b6


Exception at 0x7c812afb, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be     continued)

at:
0     kernel32!RaiseException 0x7c812afb
1     VSFilter!DllGetClassObject 0x24f8a76
2     VSFilter!DllGetClassObject 0x24a77f4
3     VSFilter 0x248459e
4     VSFilter!DllGetClassObject 0x251ac7c
5     VSFilter 0x248a53e
6     ole32!CoCreateInstance 0x77501ee6
7     ntdll!RtlAllocateHeap 0x7c9101db
8     VSFilter!DllGetClassObject 0x24f8b43
9     ntdll!RtlAllocateHeap 0x7c9101db
10    VSFilter!DllGetClassObject 0x24f8b43
11    VSFilter!DllGetClassObject 0x2516646
12    VSFilter!DllGetClassObject 0x2517c6b
13    USER32!GetWindowLongW 0x7e4189cd
14    USER32!DispatchMessageW 0x7e418a10
15    kernel32!ValidateLocale 0x7c839ad8
16    kernel32!GetModuleFileNameA 0x7c80b730


Exception at 0x7c812afb, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be     continued)

at:
0     kernel32!RaiseException 0x7c812afb
1     VSFilter!DllGetClassObject 0x24f8a76
2     VSFilter!DllGetClassObject 0x24a77f4
3     VSFilter 0x248459e
4     VSFilter!DllGetClassObject 0x251ac7c
5     VSFilter 0x248a53e
6     ole32!CoCreateInstance 0x77501ee6
7     ntdll!RtlAllocateHeap 0x7c9101db
8     VSFilter!DllGetClassObject 0x24f8b43
9     ntdll!RtlAllocateHeap 0x7c9101db
10    VSFilter!DllGetClassObject 0x24f8b43
11    VSFilter!DllGetClassObject 0x2516646
12    VSFilter!DllGetClassObject 0x2517c6b
13    USER32!GetWindowLongW 0x7e4189cd
14    USER32!DispatchMessageW 0x7e418a10
15    kernel32!ValidateLocale 0x7c839ad8
16    kernel32!GetModuleFileNameA 0x7c80b730


Exception at 0x7c812afb, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be continued)

at:
0     kernel32!RaiseException 0x7c812afb
1     VSFilter!DllGetClassObject 0x24f8a76
2     VSFilter!DllGetClassObject 0x24a77f4
3     VSFilter 0x248459e
4     VSFilter!DllGetClassObject 0x251ac7c
5     VSFilter 0x248a53e
6     ole32!CoCreateInstance 0x77501ee6
7     ntdll!RtlAllocateHeap 0x7c9101db
8     VSFilter!DllGetClassObject 0x24f8b43
9     ntdll!RtlAllocateHeap 0x7c9101db
10    VSFilter!DllGetClassObject 0x24f8b43
11    VSFilter!DllGetClassObject 0x2516646
12    VSFilter!DllGetClassObject 0x2517c6b
13    USER32!GetWindowLongW 0x7e4189cd
14    USER32!DispatchMessageW 0x7e418a10
15    kernel32!ValidateLocale 0x7c839ad8
16    kernel32!GetModuleFileNameA 0x7c80b730


Exception at 0x7c812afb, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be continued)

at:
0     kernel32!RaiseException 0x7c812afb
1     VSFilter!DllGetClassObject 0x24f8a76
2     VSFilter!DllGetClassObject 0x24a77f4
3     VSFilter 0x248459e
4     VSFilter!DllGetClassObject 0x251ac7c
5     VSFilter 0x248a53e
6     ole32!CoCreateInstance 0x77501ee6
7     ntdll!RtlAllocateHeap 0x7c9101db
8     VSFilter!DllGetClassObject 0x24f8b43
9     ntdll!RtlAllocateHeap 0x7c9101db
10    VSFilter!DllGetClassObject 0x24f8b43
11    VSFilter!DllGetClassObject 0x2516646
12    VSFilter!DllGetClassObject 0x2517c6b
13    USER32!GetWindowLongW 0x7e4189cd
14    USER32!DispatchMessageW 0x7e418a10
15    kernel32!ValidateLocale 0x7c839ad8
16    kernel32!GetModuleFileNameA 0x7c80b730


Exception at 0x7c812afb, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be continued)

at:
0     kernel32!RaiseException 0x7c812afb
1     VSFilter!DllGetClassObject 0x24f8a76
2     VSFilter!DllGetClassObject 0x24a77f4
3     VSFilter 0x248459e
4     VSFilter!DllGetClassObject 0x251ac7c
5     VSFilter 0x248a53e
6     ole32!CoCreateInstance 0x77501ee6
7     ntdll!RtlAllocateHeap 0x7c9101db
8     VSFilter!DllGetClassObject 0x24f8b43
9     ntdll!RtlAllocateHeap 0x7c9101db
10    VSFilter!DllGetClassObject 0x24f8b43
11    VSFilter!DllGetClassObject 0x2516646
12    VSFilter!DllGetClassObject 0x2517c6b
13    USER32!GetWindowLongW 0x7e4189cd
14    USER32!DispatchMessageW 0x7e418a10
15    kernel32!ValidateLocale 0x7c839ad8
16    kernel32!GetModuleFileNameA 0x7c80b730


Exception at 0x7c812afb, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be     continued)

at:
0     kernel32!RaiseException 0x7c812afb
1     VSFilter!DllGetClassObject 0x24f8a76
2     VSFilter!DllGetClassObject 0x24a77f4
3     VSFilter 0x248459e
4     VSFilter!DllGetClassObject 0x251ac7c
5     VSFilter 0x248a53e
6     ole32!CoCreateInstance 0x77501ee6
7     ntdll!RtlAllocateHeap 0x7c9101db
8     VSFilter!DllGetClassObject 0x24f8b43
9     ntdll!RtlAllocateHeap 0x7c9101db
10    VSFilter!DllGetClassObject 0x24f8b43
11    VSFilter!DllGetClassObject 0x2516646
12    VSFilter!DllGetClassObject 0x2517c6b
13    USER32!GetWindowLongW 0x7e4189cd
14    USER32!DispatchMessageW 0x7e418a10
15    kernel32!ValidateLocale 0x7c839ad8
16    kernel32!GetModuleFileNameA 0x7c80b730


Exception at 0x7c812afb, code: 0xe06d7363: C++ exception, flags=0x1 (execution cannot be     continued)

at:
0     kernel32!RaiseException 0x7c812afb
1     VSFilter!DllGetClassObject 0x24f8a76
2     VSFilter!DllGetClassObject 0x24a77f4
3     VSFilter 0x248459e
4     VSFilter!DllGetClassObject 0x251ac7c
5     VSFilter 0x248a53e
6     ole32!CoCreateInstance 0x77501ee6
7     ntdll!RtlAllocateHeap 0x7c9101db
8     VSFilter!DllGetClassObject 0x24f8b43
9     ntdll!RtlAllocateHeap 0x7c9101db
10    VSFilter!DllGetClassObject 0x24f8b43
11    VSFilter!DllGetClassObject 0x2516646
12    VSFilter!DllGetClassObject 0x2517c6b
13    USER32!GetWindowLongW 0x7e4189cd
14    USER32!DispatchMessageW 0x7e418a10
15    kernel32!ValidateLocale 0x7c839ad8
16    kernel32!GetModuleFileNameA 0x7c80b730

WARNING: Phonon::createPath: Cannot connect  Phonon::MediaObject ( no objectName ) to  Phonon::VideoWidget ( no objectName ).

Does anyone has any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

谜兔 2024-09-21 17:09:56

我记得有一次对此感到沮丧。你的'phonon_ds94.dll'是用相同版本的Qt构建的吗?它必须与版本号匹配并且是正确的“调试”或“发布”构建类型。链接“调试”Qt 库的应用程序将不会加载“发布”插件,反之亦然。

另外,如果您正在针对调试 qt 库进行构建,您可以进入插件加载代码并查看为什么它没有获取您的声子后端。

I remember being frustrated by this at one point. Is your 'phonon_ds94.dll' built with the same version of Qt? It must both match the version number and be the right 'Debug' or 'Release' build type. An app linking against 'Debug' Qt libs will not load 'Release' plugins, and vice-versa.

Also, if you're building against debug qt libraries, you can step into the plugin loading code and see why it's not picking up your phonon backend.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文