4

我有一个项目使用 libmpv 和 opengl 小部件(根据 libmpv 附带的示例)以及显示信息、图形和动画的 QtWebEngine 小部件(例如滚动代码)。

我发现在 Qt 的视频播放选项中,mpv 是最流畅和最可靠的。它可以完美流畅地播放任何高达 1080p 的视频。

然而,在播放视频时,QtWebEngine 中的任何动画都是不流畅和抖动的。当网页中有东西移动时,视频的流畅度也会稍差一些。

我正在测试的系统并没有为资源而苦苦挣扎(cpu 使用率约为 45%)。也没有任何视频解码,因为它正在播放原始视频(但在播放编码视频时,效果是相同的,无论是否启用硬件加速)。

我认为 mpv 小部件在处理帧时会中断 MainWindow 线程并导致它每隔几毫秒冻结一次。

据我所知,没有办法将 mpv 线程与 MainWindow 线程分开。

不知道能不能让mpv和webengine顺利协同工作。我觉得必须有某种方法可以在一个窗口中同时运行两个小部件,并且不会让它们相互混淆。

我正在使用 Ubuntu 18.04、QT 5.11 和来自 git 的最新 mpv 进行测试。

有没有人对首先尝试什么有任何建议或指示?我意识到这是一个有点宽泛的问题,但我对图形的了解是有限的。如果有人在概念层面上有建议(我不需要有人为我编写修复程序),我可以自己调查。

谢谢你。

4

0 回答 0