gpt4 book ai didi

c++ - Qt 5 和 LibVLC

转载 作者:行者123 更新时间:2023-11-30 02:24:51 24 4
gpt4 key购买 nike

我正在从事一个涉及接收、显示和转播多个本地网络视频流的项目。 LibVLC 似乎是可行的方法,我想在 Qt Creator/C++/OSX 10.12.1 中使用它,我还需要该项目可以在我安装了 Qt 的一些 Windows 10 机器上编译。

我通过从 projects.tano.si/vlc-qt 安装官方 QT-LibVLC 包装器成功测试了一些功能。不幸的是,包装器缺少许多对我的项目必不可少的 LibVLC 方法,因此我决定安装完整的 LibVLC。

现在我一直在研究如何让 LibVLC 工作。我遵循了所有指示 https://wiki.videolan.org/OSXCompile/#Apple_Software用于安装和库构建,一切顺利。

然后我在 QT 中开始了一个新项目,尝试添加 INCLUDEPATH += 。 vlc 和 LIBS +=-lvlc 路径到 Qt 中的 .pro 文件,但它不起作用。此外,将路径添加到 VLC 构建文件夹的“Framework”文件夹也不起作用。

有谁知道这个魔术是怎么来的吗?对不起,我知道我有点天真,但仅此而已......预先感谢您的任何回答!

更新:

感谢 eyllanesc 的建议,此结构现在适用于编译器:

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = testVLC
TEMPLATE = app

DEFINES += QT_DEPRECATED_WARNINGS

SOURCES += \
player.cpp \
main.cpp

HEADERS += \
player.h


macx: LIBS += -L$$PWD/../../../../Users/macbookpro15retina/Documents/vlc/build/vlc_install_dir/lib/ -lvlc.5

INCLUDEPATH += $$PWD/../../../../Users/macbookpro15retina/Documents/vlc/build/vlc_install_dir/include
DEPENDPATH += $$PWD/../../../../Users/macbookpro15retina/Documents/vlc/build/vlc_install_dir/include

不幸的是,应用程序已启动,但 VLC 实例未初始化。看来我的 VLC 安装有问题。

已解决:

经过一些调整后,项目编译并正确启动。我不明白为什么,但是必须在实例化 VLC 之前设置环境变量 VLC_PLUGIN_PATH,否则 VLC 拒绝初始化:

//set environment variable VLC_PLUGIN_PATH
int s = setenv ("VLC_PLUGIN_PATH", "/Users/macbookpro15retina/Documents/vlc/build/vlc_install_dir/lib/vlc/plugins", 1);

// Initialize libVLC
vlcInstance = libvlc_new(0, NULL);

实际上如果在QtCreator的Build Environment中设置它根本不起作用。

最佳答案

为我们的应用程序添加库的一种简单方法是借助 Qt Creator,它有一个助手,只需右键单击您的项目名称即可使用它:

enter image description here

然后选择添加库选项。

enter image description here

然后小助手打开了:

enter image description here

并选择导入类型,在您的情况下,建议使用External Library

enter image description here

然后您查找项目的位置并接受。

注意:在 Linux 中,可以使用快捷方式 Ctrl + E 打开此工具

关于c++ - Qt 5 和 LibVLC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45121618/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com