0

我正在为大学项目使用 MLT 框架。我将我的计算机升级到 QtCreator5,因为我无法启动任何 MLT 项目。

当我启动为 Qt4 创建的这个项目https://github.com/mltframework/BuildOnMe#include <Qt...>时,首先我用 Qt5 的语法更改了所有名称。

然后,当我启动项目时,我遇到了分段错误。当我调试时,它来自函数mlt_factory_init()

问题是我不能回到 Qt4,因为我已经使用 Qt5 的一些重要方面来改进我的项目,而且它是一台学校计算机,所以我不能迁移到 Ubuntu 16.04 LTS。

我真的被困在这一点上。

我试过这个:

->mlt_factory_init()被声明为将目录作为参数,所以我尝试将mlt_factory_init("/tmp/BuildOnMe/"). 我的应用程序已启动,但是当我调用任何视频源时,我遇到了同样的错误。

-> 我曾建议使用 MLT 0.9 创建自己的构建,但我只是不知道该怎么做,我想我误解了这一点。

Ubuntu MLT 版本为 6.3,因此 Qt5 没有问题,但我在任何地方都找不到我的 Debian 8 的 MLT 0.9.2-2 文档。

-> 我也尝试使用 debian 的 MLT 测试包,但是当我尝试apt-get install使用正确的语法时,我有很多依赖项可能会损坏我的发行版(200 个已删除的包,50 个新安装的包)我不是很自信用它。

如果您有任何想法,我将不胜感激您的帮助。

4

1 回答 1

0

您安装的 MLT 包括针对 Qt4 构建的 qt 模块/插件,并且不可能在同一进程中同时使用 Qt4 和 Qt5。您需要坚持使用 Qt4,针对 Qt5 构建自己的 MLT,或者直接删除已安装的 libmltqt.so。

于 2017-01-18T02:31:51.617 回答