Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Qt6 Multimedia Streaming
Forum Updated to NodeBB v4.3 + New Features

Qt6 Multimedia Streaming

Scheduled Pinned Locked Moved Unsolved General and Desktop
7 Posts 6 Posters 231 Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    Molecular4943
    wrote on 15 May 2025, 01:01 last edited by
    #1

    Qt Gurus,

    I have designed an application that uses libVLC to overlay multicast TS/UDP video streams onto a QWindow. This approach works, but it is far from ideal from a development perspective. I noticed that Qt6 has a multimedia module that supports video playback from various sources (file, http, etc) and I was wondering if it could perhaps replace libVLC in my application.

    The main issue that I see so far is that I would have to somehow adapt the QMediaPlayer to support getting a video buffer from a multicast UDP socket instead of a URL. Looking at QMediaPlayer.setSourceDevice it may be possible for me to implement a socket that adds the video frames to an IO device, or to use the socket directly. Another potential issue is that the buffer format may not be compliant with what QMediaPlayer expects as input, not quite sure how I would fix that...

    Has anyone accomplished this or something similar using Qt6 Multimedia? Insights would be greatly appreciated!

    Thanks!
    M

    1 Reply Last reply
    0
    • K Offline
      K Offline
      Kent-Dorfman
      wrote on 15 May 2025, 04:01 last edited by
      #2

      It may have changed since I last futzed with it, but my understanding was that the Qt multimedia framework was a front-end for an underlying backend like libVLC, so unless the model has changed you're still stuck with a native backend library, probably that which you strive to get away from.

      S 1 Reply Last reply 15 May 2025, 05:22
      0
      • K Kent-Dorfman
        15 May 2025, 04:01

        It may have changed since I last futzed with it, but my understanding was that the Qt multimedia framework was a front-end for an underlying backend like libVLC, so unless the model has changed you're still stuck with a native backend library, probably that which you strive to get away from.

        S Offline
        S Offline
        SGaist
        Lifetime Qt Champion
        wrote on 15 May 2025, 05:22 last edited by
        #3

        @Kent-Dorfman it did have changed indeed.

        QtMultimedia got a very big overhaul for Qt 6. Since several releases, the default backend is powered by ffmpeg. While the native backend are still available, they won't be developed further.

        @Molecular4943 sorry I can't answer that one as I haven't done something like that. I think it's worth investing. Out of curiosity, what is your issue with libVLC ?

        Interested in AI ? www.idiap.ch
        Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

        M 1 Reply Last reply 15 May 2025, 19:30
        0
        • S SGaist
          15 May 2025, 05:22

          @Kent-Dorfman it did have changed indeed.

          QtMultimedia got a very big overhaul for Qt 6. Since several releases, the default backend is powered by ffmpeg. While the native backend are still available, they won't be developed further.

          @Molecular4943 sorry I can't answer that one as I haven't done something like that. I think it's worth investing. Out of curiosity, what is your issue with libVLC ?

          M Offline
          M Offline
          Molecular4943
          wrote on 15 May 2025, 19:30 last edited by
          #4

          @SGaist said in Qt6 Multimedia Streaming:

          Out of curiosity, what is your issue with libVLC ?

          I have no issues from a functionality perspective, it works as intended. It would be easier from a dependency management perspective if I could just use Qt6 dependencies.

          Additionally, it would be nice if I had more control over the socket for the video frames (preferably with QUdpSocket) because currently the streaming is handled simply by configuring libVLC urls: udp://@239.54.0.1:5566. This way, libVLC manages the connection instead which isn't ideal for me.

          I'm going to start playing around with Qt6 Multimedia to see if I can get something working using a UDP socket.

          Thanks for the input!
          M

          J R 2 Replies Last reply 16 May 2025, 11:34
          0
          • M Molecular4943
            15 May 2025, 19:30

            @SGaist said in Qt6 Multimedia Streaming:

            Out of curiosity, what is your issue with libVLC ?

            I have no issues from a functionality perspective, it works as intended. It would be easier from a dependency management perspective if I could just use Qt6 dependencies.

            Additionally, it would be nice if I had more control over the socket for the video frames (preferably with QUdpSocket) because currently the streaming is handled simply by configuring libVLC urls: udp://@239.54.0.1:5566. This way, libVLC manages the connection instead which isn't ideal for me.

            I'm going to start playing around with Qt6 Multimedia to see if I can get something working using a UDP socket.

            Thanks for the input!
            M

            J Offline
            J Offline
            JoeCFD
            wrote on 16 May 2025, 11:34 last edited by
            #5

            @Molecular4943 I do not think Qt multimedia has great features for streaming. You can use gstreamer directly with qml sink for better controls.
            https://github.com/GStreamer/gst-plugins-good/blob/master/tests/examples/qt/qmlsink/main.cpp

            VLC seems a good tool. But we decided to use gstreamer a few years ago. FFmpeg is a good option as well.

            1 Reply Last reply
            0
            • M Offline
              M Offline
              mrdebug
              wrote 30 days ago last edited by
              #6

              Why not use ffmpeg? It is better for rtsp, network streaming etc.
              https://github.com/denisgottardello/QtFFmpegPlayer

              Need programmers to hire?
              www.labcsp.com
              www.denisgottardello.it
              GMT+1
              Skype: mrdebug

              1 Reply Last reply
              0
              • M Molecular4943
                15 May 2025, 19:30

                @SGaist said in Qt6 Multimedia Streaming:

                Out of curiosity, what is your issue with libVLC ?

                I have no issues from a functionality perspective, it works as intended. It would be easier from a dependency management perspective if I could just use Qt6 dependencies.

                Additionally, it would be nice if I had more control over the socket for the video frames (preferably with QUdpSocket) because currently the streaming is handled simply by configuring libVLC urls: udp://@239.54.0.1:5566. This way, libVLC manages the connection instead which isn't ideal for me.

                I'm going to start playing around with Qt6 Multimedia to see if I can get something working using a UDP socket.

                Thanks for the input!
                M

                R Offline
                R Offline
                Ronel_qtmaster
                wrote 30 days ago last edited by Ronel_qtmaster
                #7

                @Molecular4943 you can try Opencv. With opencv you will have control over the frames. I use it to stream cameras url.I think it also support rstp

                1 Reply Last reply
                0

                3/7

                15 May 2025, 05:22

                • Login

                • Login or register to search.
                3 out of 7
                • First post
                  3/7
                  Last post
                0
                • Categories
                • Recent
                • Tags
                • Popular
                • Users
                • Groups
                • Search
                • Get Qt Extensions
                • Unsolved