1 2 3 Previous Next 36 Replies Latest reply on Jun 29, 2017 1:13 PM by Intel Corporation

    QGC / GStreamer error

    rohanK23

      Hi,

       

      This worked over the weekend. Not today.

       

      I followed all the steps in WiFi Streaming · intel-aero/meta-intel-aero Wiki · GitHub  to connect the RTF with QGC on my ubuntu laptop. I could see video over the weekend. Today I get this error after starting the QGC app and before doing a gst-launch on the drone.

       

      Settings location "/home/rohan/.config/QGroundControl.org/QGroundControl.ini" Is writable?: true

      Filter rules "qt.network.ssl.warning=false\n*Log.debug=false\n"

      MAVLinkLogManagerLog: MAVLink logs directory: "/home/rohan/.local/share/QGroundControl.org/QGroundControl/MAVLinkLogs"

      Map Cache in: "/home/rohan/.cache/QGCMapCache300" / "qgcMapCache.db"

      Orphaned log file count 0

      LinkManager mavlinkStatus:channel:flags 0xea9028 1 2

      qml: Serial Port not present

      LinkManager mavlinkStatus:channel:flags 0xea9050 2 2

      QGCMessageBox (unit testing) "MAVLink Protocol" "There is a MAVLink Version or Baud Rate Mismatch. Please check if the baud rates of QGroundControl and your autopilot are the same."

      Switching outbound to mavlink 2.0 due to incoming mavlink 2.0 packet: 0xea9050 2 2

      Segmentation fault (core dumped)

       

       

      Over on the RTF drone I see this after the gst-launch command:

      root@intel-aero:~# gst-launch-1.0 v4l2src  device=/dev/video13 do-timestamp=true ! video/x-raw, format=YUY2, width=640, height=480, framerate=15/1 ! autovideoconvert ! vaapih264enc ! rtph264pay !  udpsink host=192.168.8.2 port=5600

      Setting pipeline to PAUSED ...

      error: XDG_RUNTIME_DIR not set in the environment.

      libva info: VA-API version 0.39.0

      libva info: va_getDriverName() returns 0

      libva info: Trying to open /usr/lib/dri/i965_drv_video.so

      libva info: Found init function __vaDriverInit_0_39

      libva info: va_openDriver() returns 0

      Pipeline is live and does not need PREROLL ...

      Got context from element 'vaapiencodeh264-0': gst.vaapi.Display=context, gst.vaapi.Display=(GstVaapiDisplay)NULL;

      Setting pipeline to PLAYING ...

      New clock: GstSystemClock

      ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data flow error.

      Additional debug info:

      ../../../../gstreamer-1.8.2/libs/gst/base/gstbasesrc.c(2948): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:

      streaming task paused, reason not-negotiated (-4)

      Execution ended after 0:00:00.222356206

      Setting pipeline to PAUSED ...

      Setting pipeline to READY ...

      Setting pipeline to NULL ...

      Freeing pipeline ...

       

       

      Please advice.

       

      best

      Rohan

        • 1. Re: QGC / GStreamer error
          rohanK23

          I disabled the MAVLink router by running

          /etc/init.d/mavlink-routerd.sh stop

           

          The error went away and I can see video on QGC.

           

          Any idea why I saw this today and not over the weekend ?

           

          best

          Rohan

          • 2. Re: QGC / GStreamer error
            Intel Corporation
            This message was posted on behalf of Intel Corporation

            Hi Rohan,

            I'm glad to know that you were able to fix your issue! Honestly, I don't know the root of the error that cause the GStreamer to fail, there can be several reasons. If you ever encounter this error again, please let us know and we will be happy to help.

            Have a great day! 

            Best Regards,
            -Jose P.

            • 3. Re: QGC / GStreamer error
              rohanK23

              Hi,

               

              I have been getting this error again all day today on my QGC application window (on ubuntu machine):

              There is a MAVLink Version or Baud Rate Mismatch. Please check if the baud rates of QGroundControl and your autopilot are the same."

               

              Previously when I ran "/etc/init.d/mavlink-routerd.sh stop" on my Aero Intel board, the error went away.

               

              My application is running on the Intel Aero board and is trying to setup a connection with my ubuntu laptop and send video frames over via GStreamer to display on QGC. But I cannot seem to get past the above error.

               

              MartyG : any suggestions ?

               

              best

              Rohan

              • 4. Re: QGC / GStreamer error
                rohanK23

                I rebooted the board and the error seemed to go away.

                • 5. Re: QGC / GStreamer error
                  MartyG

                  Glad that the error went away for you. 

                  • 6. Re: QGC / GStreamer error
                    rohanK23

                    It has come back again today

                     

                    Not quite sure whats going on here. Here are my steps

                     

                    I bring up the QGC app.

                    Run the mavlink-router stop script from the board

                    Run my application on the board and get the same error

                     

                    Rohan

                    • 7. Re: QGC / GStreamer error
                      MartyG

                      I went right back to your original message and the line: Switching outbound to mavlink 2.0 due to incoming mavlink 2.0 packet: 0xea9050 2 2

                       

                      Someone said in reply to a person who had that Mavlink error, in a message dated September 2016, "Did you turn on Mavlink 2.0?  If so, QGC doesn't support it yet."

                       

                      As I am not an Aero / MavLink expert, I do not know if that statement is true or not, but it seemed worth highlighting it to you.

                      • 8. Re: QGC / GStreamer error
                        rohanK23

                        I actually run the stop script on the Aero to disable mavlink. I also deleted the mavlink files so there is no chance of it getting turned on.

                         

                        This is from the wiki that I follow

                        Disable MAVLINK Router:

                        Run below command (at every reboot) to disable MAVLINK Router to free up HSUART

                        root@intel-aero:~# /etc/init.d/mavlink_routerd.sh stop

                        OR permanently disable MAVLINK Router by deleting following files:

                        /etc/rc[1-5].d/S71mavlink_routerd

                         

                        I do not do anything on QGC for mavlink.

                        • 9. Re: QGC / GStreamer error
                          MartyG

                          Regarding the internal data flow error, it was suggested that this error can be caused if your video has more than 2 frames, and can be fixed by using a "tee multiplexer" component.

                           

                          videotestsrc not working with gstreamer 1.0 · Issue #83 · umlaeute/v4l2loopback · GitHub

                           

                          Apologies again for not being very useful on this topic! 

                          • 10. Re: QGC / GStreamer error
                            rohanK23

                            I am processing 80 frames at the moment. But I doubt thats the issue. The same setup worked yesterday.

                            • 11. Re: QGC / GStreamer error
                              MartyG

                              Sadly I can't do any more today as I have to go to bed, as it is midnight.  Keep on at it - we'll get there in the end! 

                              • 12. Re: QGC / GStreamer error
                                rohanK23

                                 

                                 

                                Goodnight.

                                • 13. Re: QGC / GStreamer error
                                  rohanK23

                                  Just a fyi..

                                   

                                  This is the error message I get in my application:

                                  error: XDG_RUNTIME_DIR not set in the environment.

                                  libva info: VA-API version 0.39.0

                                  libva info: va_getDriverName() returns 0

                                  libva info: Trying to open /usr/lib/dri/i965_drv_video.so

                                  libva info: Found init function __vaDriverInit_0_39

                                  libva info: va_openDriver() returns 0

                                   

                                  It looks like this is issued when I run the gst_element_set_state( pipeline, GST_STATE_PLAYING ); command.  If I run get_element_state_get_name() I see it is NULL. Not sure why it wont let me set the state to PLAYING and give me the error.

                                   

                                  I do not get the mavlink messages now. I deleted the mavlink files. This seems to be GStreamer/QGC related. Any idea how I can get past this ?

                                   

                                  Note:

                                  QGC is running on ubuntu 16.04 laptop workstation

                                  application running GStreamer running on Intel Aero (running Yocto)

                                   

                                  Rohan

                                   

                                  intel_corp   -> Can you comment on this ?

                                  • 14. Re: QGC / GStreamer error
                                    MartyG

                                    There seem to be a large number of possible causes for the 'XDG_RUNTIME_DIR not set in the environment' error.  One reason that occurred more than once was with people who were running from root.  If they ran from a "normal" terminal then the error did not occur.

                                    1 2 3 Previous Next