我有一些使用Visual Studio 2010(C++)编译的代码,其中Qt用于GUI和Phonon以显示一些视频。
我在Windows XP机器中编译并运行代码,一切正常。视频和控件显示正确,在其他 Windows XP 计算机中也是如此。但是在我尝试使用Windows 7机器的那一刻,视频没有显示。Phonon 控件已加载,我可以调整 Phonon VideoWidget 的大小,但没有显示任何内容。我正在使用SetFile方法来指示文件位置,并且我也尝试过(当然,没有运气)在MediaObject中使用setCurrentSource(尽管它在Windows XP中有效)。
我已经尝试了文件的不同位置(绝对/相对),但似乎没有任何效果。此外,在XP中,当找不到视频时,会显示警告消息,而在Windows 7中没有错误消息,但也不会显示视频。如果我尝试与其他播放器一起打开视频,它们工作正常(我也尝试使用不同格式的视频)。
知道可能出了什么问题吗?Phonon 和 Windows 7 是否缺少一些东西?谢谢!
将应用程序部署到另一台计算机时,请确保不要忘记复制 Phonon 后端。不仅是其中包含的DLL(对我来说是ds后端),还有目录本身。
那是
-Application Directory
¦-myexe.exe
¦-phonon_backend
¦-phonon_ds94.dll
此外,Windows(我认为是Mac)上的Phonon后端使用了QtOpenGL模块。所以也不要忘记复制这个。它可以进入应用程序目录。
在任何情况下,您都可以通过添加少量代码来显示(可能写入文件)哪些 mimetype 可用,从而帮助自己。如果它没有吐出任何东西,则您的后端有问题。(嗯,你的应用程序...
这是我使用 Phonon 在我的应用程序中播放视频时必须做的事情。由于我前段时间才快速将其添加到我的应用程序中,因此我不能 100% 确定这是执行此操作的唯一(甚至正确)方法,因此任何有不同见解的人都可以随意对此发表评论。