3

我们正在开发一个基于 Qt 的应用程序,其中包括使用 Phonon 的视频播放。我们使用具有 MJPEG 压缩的 .avi 文件(因为我们需要快速查找特定帧)。

在开发机器(运行 Windows 7)上一切正常 - Phonon 使用 DirectShow 后端,DirectShow 使用标准 MJPEG 编解码器从quartz.dll.

但是 Windows 7 上的一些测试人员报告说视频播放中断,我在其中一台机器上快速浏览了一下,并没有看到任何特别之处,但是:

  • InstalledCodecs实用程序报告 MJPEG 编解码器存在并启用
  • Windows Media Player可以正常播放文件(但我认为它使用不同的后端,而不是 DirectShow)。
  • Media Player Classic配置为使用DirectShow和标准 MJPEG 插件抱怨没有可用的编解码器。
  • 我们的软件确实坏了,显然是出于同样的原因,不管它是什么。

phonon 后端安装在插件目录中,该目录添加到我在日志中看到的搜索路径中,因此应该加载它。我在开发机器上重命名了 QtSDK,以确保只有已安装的 qt 插件可用于应用程序,并且它继续在那里工作。

我将不胜感激任何关于下一步看哪里的建议。

我最终想知道的是:

  • 可能是什么问题呢
  • 安装程序或应用程序本身如何检测到问题
  • 如何解决问题 - 自动或通过指示用户
4

1 回答 1

0

我最近遇到了类似的问题,但它与各种视频文件格式有关,不一定只是 MPEG 压缩。

我找到的解决方案是安装一个整体编解码器包。这对少数计算机上的设置做得很好。如果您要部署到很多用户,您可能希望找到您需要的确切编解码器并确保 phonon 可以找到它们。

K-Lite 编解码器包下载

于 2012-09-25T22:15:55.157 回答