在 Windows 上用 QML 播放 RTSP 视频

Raf*_*SCS 5 video qt stream rtsp qml

我正在尝试将 QML 中的 RTSP 流播放到 Video 标签中,如下所示:

Repeater {
    model: 8

    Video {
        Layout.fillWidth: true
        Layout.fillHeight: true

        fillMode: VideoOutput.Stretch

        source: Controller.urlCanal(index + 1)
        autoPlay: true
        autoLoad: true

        CustomBorder {
            commonBorder: true
            color: "#228e14"
            commonBorderWidth: 3
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这应该显示 8 个视频屏幕,但我收到错误消息:

DirectShowPlayerService::doSetUrlSource: 未解决的错误代码 800c000d

网址:

rtsp://192.168.50.10:8082/user=admin&password=admin&channel=7&stream=0.sdp?real_stream

QML 支持 RTSP 吗?如果是这样,我做错了什么?如果没有,我怎么能让这个工作?

PS.:我也试过将 MediaPlayer 与 VideoOutput 一起使用,但我得到了同样的错误。

先感谢您

小智 2

Qt本身不支持RTSP。尝试使用第三方库,例如 OpenCV 或 FFMPEG。我使用 OpenCV,然后从后端 C++ 代码创建了一个插件来创建 OpenCV 相机元素,然后在 QML 中显示 RTSP 源。