Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. QML and Qt Quick
  4. Get frames from qml videoOutput and send to TcpSocket.
Forum Updated to NodeBB v4.3 + New Features

Get frames from qml videoOutput and send to TcpSocket.

Scheduled Pinned Locked Moved Unsolved QML and Qt Quick
22 Posts 2 Posters 3.4k Views 2 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.
  • SGaistS SGaist

    Why is it constrained to your application only ?

    If you have a recent enough version of Qt, you might be able to use QMediaPlayer.

    Otherwise, you can also build the pipeline yourself use the GStreamer API.

    S Offline
    S Offline
    sharath
    wrote on last edited by sharath
    #7

    @SGaist we have embedded device which has camera and GUI application and I want to view/control the liveview of that camera from my android/iOS application. So each video frames from my embedded device should transmit to mobile application.

    Qmediaplayer is only to play the media source if I'm not wrong.

    S 1 Reply Last reply
    0
    • SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by
      #8

      The link I provided shows you how to create a custom GStreamer pipeline where you can try to use a pipe so you can both show the stream on your device and have it streamed on the network.

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

      S 2 Replies Last reply
      0
      • SGaistS SGaist

        The link I provided shows you how to create a custom GStreamer pipeline where you can try to use a pipe so you can both show the stream on your device and have it streamed on the network.

        S Offline
        S Offline
        sharath
        wrote on last edited by sharath
        #9

        @SGaist thank you, I will look into it.

        1 Reply Last reply
        0
        • SGaistS SGaist

          The link I provided shows you how to create a custom GStreamer pipeline where you can try to use a pipe so you can both show the stream on your device and have it streamed on the network.

          S Offline
          S Offline
          sharath
          wrote on last edited by
          #10

          @SGaist gst-pipeline supports only after Qt5.12?

          1 Reply Last reply
          0
          • SGaistS Offline
            SGaistS Offline
            SGaist
            Lifetime Qt Champion
            wrote on last edited by
            #11

            Custom pipeline building in QMediaPlayer came in 5.12.2 like explained in the documentation.

            However nothing stops you from using other means to create the pipeline.

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

            S 1 Reply Last reply
            0
            • SGaistS SGaist

              Custom pipeline building in QMediaPlayer came in 5.12.2 like explained in the documentation.

              However nothing stops you from using other means to create the pipeline.

              S Offline
              S Offline
              sharath
              wrote on last edited by sharath
              #12

              @SGaist its very hard to understand GStreamer. How can i pass QML camera to Gstreamer? is there any example to stream live camera like sender and receiver? i know this is stupid question, but i'm not getting any input that from where to start.

              1 Reply Last reply
              0
              • SGaistS Offline
                SGaistS Offline
                SGaist
                Lifetime Qt Champion
                wrote on last edited by
                #13

                As I already wrote, don't do that in that order.

                Stream your camera using a dedicated software that will generate a real video stream.

                Even if it's not simple, GStreamer allows you to show the feed locally and send it over the network at the same time.

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

                S 1 Reply Last reply
                0
                • SGaistS SGaist

                  As I already wrote, don't do that in that order.

                  Stream your camera using a dedicated software that will generate a real video stream.

                  Even if it's not simple, GStreamer allows you to show the feed locally and send it over the network at the same time.

                  S Offline
                  S Offline
                  sharath
                  wrote on last edited by
                  #14

                  @SGaist If you provide some sample code that would really helpful.

                  1 Reply Last reply
                  0
                  • SGaistS Offline
                    SGaistS Offline
                    SGaist
                    Lifetime Qt Champion
                    wrote on last edited by
                    #15

                    Sample code of what ?

                    You do not even say what solution you want to implement.

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

                    1 Reply Last reply
                    1
                    • S sharath

                      @SGaist we have embedded device which has camera and GUI application and I want to view/control the liveview of that camera from my android/iOS application. So each video frames from my embedded device should transmit to mobile application.

                      Qmediaplayer is only to play the media source if I'm not wrong.

                      S Offline
                      S Offline
                      sharath
                      wrote on last edited by
                      #16

                      @sharath said in Get frames from qml videoOutput and send to TcpSocket.:

                      we have embedded device which has camera and GUI application and I want to view/control the liveview of that camera from my android/iOS application. So each video frames from my embedded device should transmit to mobile application.

                      i want to use Gstreamer to stream the video over network(TCP). give some example code so that i can start.

                      1 Reply Last reply
                      0
                      • SGaistS Offline
                        SGaistS Offline
                        SGaist
                        Lifetime Qt Champion
                        wrote on last edited by
                        #17

                        Here you have an example using the command line to stream a video feed from a RaspberryPi. The streaming part will work the same on a computer.

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

                        S 2 Replies Last reply
                        2
                        • SGaistS SGaist

                          Here you have an example using the command line to stream a video feed from a RaspberryPi. The streaming part will work the same on a computer.

                          S Offline
                          S Offline
                          sharath
                          wrote on last edited by
                          #18

                          @SGaist Thank you. i will go through it

                          1 Reply Last reply
                          0
                          • SGaistS SGaist

                            Here you have an example using the command line to stream a video feed from a RaspberryPi. The streaming part will work the same on a computer.

                            S Offline
                            S Offline
                            sharath
                            wrote on last edited by
                            #19

                            Hello @SGaist, i just running the following commands to undertand Gstreamer on command line.
                            To send current screen to network:

                            gst-launch-1.0 -v ximagesrc use-damage=false xname=/usr/lib/torcs/torcs-bin ! videoconvert ! videoscale ! video/x-raw,format=I420,width=800,height=600,framerate=25/1 ! jpegenc ! rtpjpegpay ! udpsink host=127.0.0.1 port=5000
                            

                            To receive:

                            gst-launch-1.0 udpsrc port=5000 ! application/x-rtp,encoding-name=JPEG,payload=26 ! rtpjpegdepay ! jpegdec ! autovideosink
                            

                            here its sharing my current screen using ximagesrc to network.
                            So how can i send only current camera live view through Gstreamer. whats the command for that?

                            1 Reply Last reply
                            0
                            • SGaistS Offline
                              SGaistS Offline
                              SGaist
                              Lifetime Qt Champion
                              wrote on last edited by
                              #20

                              Did you even try to search for "GStreamer camera source" ?

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

                              S 1 Reply Last reply
                              0
                              • SGaistS SGaist

                                Did you even try to search for "GStreamer camera source" ?

                                S Offline
                                S Offline
                                sharath
                                wrote on last edited by sharath
                                #21

                                Thank you @SGaist,

                                i tried below script on command line

                                gst-launch-1.0 -v v4l2src device=/dev/video0 ! 'video/x-raw-yuv,width=640,height=480' !  x264enc pass=qual quantizer=20 tune=zerolatency ! rtph264pay ! udpsink host=127.0.0.1 port=1234
                                
                                

                                Got below error.

                                (gst-launch-1.0:4420): GStreamer-WARNING **: 0.10-style raw video caps are being created. Should be video/x-raw,format=(string).. now.
                                WARNING: erroneous pipeline: could not link v4l2src0 to x264enc0
                                
                                1 Reply Last reply
                                0
                                • SGaistS Offline
                                  SGaistS Offline
                                  SGaist
                                  Lifetime Qt Champion
                                  wrote on last edited by
                                  #22

                                  @sharath said in Get frames from qml videoOutput and send to TcpSocket.:

                                  WARNING: erroneous pipeline: could not link v4l2src0 to x264enc0

                                  The first hit for that search on DuckDuckGo gives several example pipelines to test with your own setup.

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

                                  1 Reply Last reply
                                  1

                                  • Login

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