Приложение потокового видео Qt: не найден сервис для qt.mediaplayer - PullRequest
0 голосов
/ 18 октября 2019

Я пытаюсь сделать очень простое приложение QT QML для потоковой передачи видео с камеры Ethernet (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 Core Library версия 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 Ответ

0 голосов
/ 22 октября 2019

Хорошо, после нескольких попыток я обнаружил, я думаю, проблему: QT был построен статически в моем случае, поэтому он должен явно импортировать используемые плагины. После проверки предварительных условий установки мультимедиа qt

https://doc.qt.io/qt-5/linux-requirements.html#multimedia-dependencies

И всех необходимых библиотек gstreaming

Я явно добавил в свой файл .pro мультимедийные плагины (я уже думал, что QTCreatorдобавляет все необходимые ссылки, но, очевидно, я был неправ ...)

QT += multimedia multimediawidgets

И теперь, кажется, работает нормально, наконец-то

...