Qt 视频流应用程序:未找到 qt.mediaplayer 的服务
Posted
技术标签:
【中文标题】Qt 视频流应用程序:未找到 qt.mediaplayer 的服务【英文标题】:Qt video streaming application: no service found for qt.mediaplayer 【发布时间】:2019-10-18 14:49:35 【问题描述】:我正在尝试制作一个非常简单的 QT QML 应用程序来从以太网摄像机(Axis m3045v)流式传输视频: 在 windows 10 下一切正常,但是一旦我在 Debian 10 下移植代码,应用程序就无法显示视频流并返回此错误...
Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer"
我已经按照其他类似问题中的建议安装了 gstreaming(GStreamer 核心库版本 1.16.1)和 libqt5multimedia5-plugins,但没有得到任何结果
可能我仍然缺少一些非常基本的东西,但是作为 Linux 初学者,我在这里被阻止了
这里是 QML 代码:
import QtQuick 2.12
import QtQuick.Controls 2.5
import QtQuick.Window 2.12
import QtMultimedia 5.12
ApplicationWindow
visible: true
title: qsTr("test")
width: 1920
height: 1080
Video
id: videostream
source: "rtsp://user::password@my_ip_address/axis-media/media.amp"
autoPlay: true
autoLoad: true
anchors.top: parent.top
width: parent.width
height: parent.height
提前感谢您的帮助
编辑:我在两个系统中都使用 QT Creator
【问题讨论】:
【参考方案1】:好的 经过几次尝试,我猜想是这个问题: 在我的情况下,QT 是静态构建的,因此它需要显式导入使用的插件。 检查qt多媒体安装先决条件后
https://doc.qt.io/qt-5/linux-requirements.html#multimedia-dependencies
以及所有需要的 gstreaming 库
我在我的 .pro 文件中明确添加了多媒体插件(我以为 QTCreator 已经添加了所有需要的引用,但显然我错了......)
QT += multimedia multimediawidgets
现在看来终于可以正常工作了
【讨论】:
以上是关于Qt 视频流应用程序:未找到 qt.mediaplayer 的服务的主要内容,如果未能解决你的问题,请参考以下文章
QT5:未找到 QTQuick.Controls 2.12 版
Beaglebone Black 和 Qt 上的 ALSA 问题:-lasound 未找到