ModalAI Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Streaming Stereo Camera

    Ask your questions right here!
    4
    21
    1343
    Loading More Posts
    • 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.
    • KrisK
      Kris @tom
      last edited by Kris

      @tom Thank you for your reply.
      This is what I have setup in my voxl-streamer.conf

      {            
              "input-pipe":   "tracking",                    
              "bitrate":      1000000,                
              "rotation":     0,
              "decimator":    1,
              "port": 8900                               
      } 
      
      

      The services that are running are;

      voxl:~$ voxl-inspect-services
      Scanning services...
      
       Service Name             |  Enabled  |   Running   |  CPU Usage
      -------------------------------------------------------------------
       docker-autorun           | Disabled  | Not Running |  
       docker-daemon            | Disabled  | Not Running |  
       modallink-relink         | Disabled  | Not Running |  
       voxl-camera-server       |  Enabled  |   Running   |     5.1%
       voxl-cpu-monitor         |  Enabled  |   Running   |     1.7%
       voxl-dfs-server          | Disabled  | Not Running |  
       voxl-imu-server          |  Enabled  |   Running   |     0.0%
       voxl-lepton-server       | Disabled  | Not Running |  
       voxl-mavcam-manager      |  Enabled  |   Running   |     1.7%
       voxl-mavlink-server      |  Enabled  |   Running   |     5.1%
       voxl-modem               | Disabled  | Not Running |  
       voxl-portal              |  Enabled  |   Running   |     0.0%
       voxl-qvio-server         |  Enabled  |   Running   |     6.8%
       voxl-rangefinder-server  | Disabled  | Not Running |  
       voxl-remote-id           | Disabled  | Not Running |  
       voxl-streamer            |  Enabled  |   Running   |     0.0%
       voxl-tag-detector        | Disabled  | Not Running |  
       voxl-tflite-server       | Disabled  | Not Running |  
       voxl-time-sync           | Disabled  | Not Running |  
       voxl-uvc-server          | Disabled  | Not Running |  
       voxl-vision-hub          |  Enabled  |   Running   |     3.4%
       voxl-wait-for-fs         |  Enabled  |  Completed  |  
      
      

      My vision-hub.conf

      {                                                                               
              "config_file_version":  1,                                              
              "en_localhost_mavlink_udp":     false,                                  
              "localhost_udp_port_number":    14551,                                  
              "en_vio":       true,                                                   
              "vio_pipe":     "qvio",                                                 
              "secondary_vio_pipe":   "ov",                                           
              "en_reset_vio_if_initialized_inverted": true,                           
              "vio_warmup_s": 3,                                                      
              "send_odom_while_failed":       true,                                   
              "en_set_clock_from_gps":        true,                                   
              "en_force_onboard_mav1_mode":   true,                                   
              "en_reset_px4_on_error":        true,                                   
              "horizon_cal_tolerance":        0.5,                                    
              "offboard_mode":        "trajectory",                                   
              "follow_tag_id":        0,                                              
              "figure_eight_move_home":       false,                                  
              "robot_radius": 0.300000011920929,                                      
              "collision_sampling_dt":        0.1,                                    
              "max_lookahead_distance":       1,                                      
              "en_tag_fixed_frame":   false,                                          
              "fixed_frame_filter_len":       5,                                      
              "en_transform_mavlink_pos_setpoints_from_fixed_frame":  false,          
              "en_voa":       true,                                            
              "voa_upper_bound_m":    -0.15000000596046448,                           
              "voa_lower_bound_m":    0.15000000596046448,                            
              "voa_voa_memory_s":     1,                                              
              "voa_max_pc_per_fusion":        100,                                    
              "voa_pie_max_dist_m":   20,                                             
              "voa_pie_min_dist_m":   0.25,                                           
              "voa_pie_under_trim_m": 1,                                              
              "voa_pie_threshold":    3,                                              
              "voa_send_rate_hz":     20,                                             
              "voa_pie_slices":       36,                                             
              "voa_pie_bin_depth_m":  0.15000000596046448,                            
              "voa_inputs":   [{                                                      
                              "enabled":      true,                                   
                              "type": "point_cloud",                                  
                              "input_pipe":   "dfs_point_cloud",                      
                              "frame":        "stereo_l",                             
                              "max_depth":    8,                                      
                              "min_depth":    0.300000011920929,                      
                              "cell_size":    0.079999998211860657,                   
                              "threshold":    4,                                      
                              "x_fov_deg":    68,                                     
                              "y_fov_deg":    56,                                     
                              "conf_cutoff":  0                                       
                      }, {                                                            
                              "enabled":      true,                                   
                              "type": "point_cloud",                                  
                              "input_pipe":   "stereo_front_pc",                      
                              "frame":        "stereo_front_l",                       
                              "max_depth":    8,                                      
                              "min_depth":    0.300000011920929,                      
                              "cell_size":    0.079999998211860657,                   
                              "threshold":    4,                                      
                              "x_fov_deg":    68,                                     
                              "y_fov_deg":    56,                                     
                              "conf_cutoff":  0                                       
                      }, {                                                            
                              "enabled":      true,                                   
                              "type": "point_cloud",                                  
                              "input_pipe":   "stereo_rear_pc",                       
                              "frame":        "stereo_rear_l",                        
                              "max_depth":    8,                                      
                              "min_depth":    0.300000011920929,                      
                              "cell_size":    0.079999998211860657,                   
                              "threshold":    4,                                      
                              "x_fov_deg":    68,                                     
                              "y_fov_deg":    56,                                     
                              "conf_cutoff":  0                                       
                      }, {                                                            
                              "enabled":      true,                                   
                              "type": "tof",                                          
                              "input_pipe":   "tof",                                  
                              "frame":        "tof",                                  
                              "max_depth":    6,                                      
                              "min_depth":    0.15000000596046448,                    
                              "cell_size":    0.079999998211860657,                   
                              "threshold":    3,                                      
                              "x_fov_deg":    106.5,                                  
                              "y_fov_deg":    85.0999984741211,                       
                              "conf_cutoff":  125                                     
                      }, {                                                            
                              "enabled":      true,                                   
                              "type": "rangefinder",                                  
                              "input_pipe":   "rangefinders",                         
                              "frame":        "body",                                 
                              "max_depth":    8,                                      
                              "min_depth":    0.300000011920929,                      
                              "cell_size":    0.079999998211860657,                   
                              "threshold":    4,                                      
                              "x_fov_deg":    68,                                     
                              "y_fov_deg":    56,                                     
                              "conf_cutoff":  0                                       
                      }]                                                              
      }                                                                               
      

      Then when I go to run voxl-streamer, it works at first but when I open VLC it does not work.

      voxl:~$ voxl-streamer -i tracking
      existing instance of voxl-streamer found, attempting to stop it
      Waiting for pipe tracking to appear
      Found Pipe
      detected following stats from pipe:
      w: 640 h: 480 fps: 30 format: RAW8
      Stream available at rtsp://127.0.0.1:8900/live
      A new client rtsp://192.168.110.159:40472(null) has connected, total clients: 1
      Camera server Connected
      ERROR:   New frame rejected, status = -2
      rtsp client disconnected, total clients: 0
      no more rtsp clients, closing source pipe intentionally
      
      (voxl-streamer:3746): GLib-GObject-WARNING **: instance with invalid (NULL) class pointer
      
      (voxl-streamer:3746): GLib-GObject-CRITICAL **: g_signal_emit_by_name: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
      ERROR:   New frame rejected, status = -2
      A new client rtsp://192.168.110.159:40484(null) has connected, total clients: 1
      WARNING, _stop_helper_and_remove_pipe timed out joining read thread
      rtsp client disconnected, total clients: 0
      no more rtsp clients, closing source pipe intentionally
      A new client rtsp://192.168.110.159:60720(null) has connected, total clients: 1
      Camera server Connected
      rtsp client disconnected, total clients: 0
      no more rtsp clients, closing source pipe intentionally
      
      
      

      I am not sure why I am not able to do this.

      192.168.110.152 is my current Seeker IP.
      192.168.110.159 is my current host PC IP.

      What I would really like to do is connect my stereo stream with QGroundControl instead of VLC. But I haven't even gotten VLC to stream it yet....

      tomT 1 Reply Last reply Reply Quote 0
      • tomT
        tom admin @Kris
        last edited by

        @Kris It looks like voxl-streamer is already running in the background and then you're running it again in the terminal manually, hence the existing instance of voxl-streamer found, attempting to stop it

        You should be able to pull up the stream if the service is running, no need to run it manually like that

        KrisK 1 Reply Last reply Reply Quote 0
        • KrisK
          Kris @tom
          last edited by Kris

          @tom Thank you.

          I tried it again without manually running voxl-streamer.
          First I made sure it was on by inspecting my services.
          When I confirmed that it was on, I tried to input the rtsp:// in the Open Network Stream in VLC, but it failed.
          Here is the error message in VLC

          Connection failed:
          VLC could not connect to "192.168.110.152:8900".
          Your input can't be opened:
          VLC is unable to open the MRL 'rtsp://192.168.110.152:8900/live'. Check the log for details.
          Connection failed:
          VLC could not connect to "127.0.0.1:8900".
          Your input can't be opened:
          VLC is unable to open the MRL 'rtsp://127.0.0.1:8900/live'. Check the log for details.
          Connection failed:
          VLC could not connect to "192.168.110.159:8900".
          Your input can't be opened:
          VLC is unable to open the MRL 'rtsp://192.168.110.159:8900/live'. Check the log for details.
          
          

          Can you confirm that I should be using the rtsp://192.168.110.152:8900/live for the VLC network stream?
          Or should it be rtsp://127.0.0.1:8900/live ?

          voxl:~$ voxl-streamer -i tracking
          Waiting for pipe tracking to appear
          Found Pipe
          detected following stats from pipe:
          w: 640 h: 480 fps: 30 format: RAW8
          Stream available at rtsp://127.0.0.1:8900/live
          
          

          Here is my settings in voxl-mavcam-manager

          {
                  "snapshot_pipe_name":   "tracking",      
                  "video_record_pipe_name":       "tracking",           
                  "default_uri":  "rtsp://192.168.110.152:8900/live",
                  "enable_auto_ip":       true
          }
          
          
          KrisK 1 Reply Last reply Reply Quote 0
          • KrisK
            Kris @Kris
            last edited by

            I am not able to view any video when executing the voxl-mavcam-manager either.

            voxl:~$ voxl-mavcam-manager
            =================================================================
            Parameters as loaded from config file:
            snapshot_pipe_name:        tracking
            video_record_pipe_name:    tracking
            default_uri:               rtsp://192.168.110.152:8900/live
            enable_auto_ip:            1
            =================================================================
            Camera name for qgc: Camera 0
            Mavlink server Connected
            Got camera information request
            auto-detected RTSP URI: rtsp://192.168.110.152:8900/live
            Got camera information request
            auto-detected RTSP URI: rtsp://192.168.110.152:8900/live
            Got camera information request
            auto-detected RTSP URI: rtsp://192.168.110.152:8900/live
            
            
            KrisK 1 Reply Last reply Reply Quote 0
            • KrisK
              Kris @Kris
              last edited by

              voxl-streamer error.jpg

              tomT 1 Reply Last reply Reply Quote 0
              • tomT
                tom admin @Kris
                last edited by

                @Kris Again, you've ran through voxl-configure-sku and voxl-configure-mpa there is no reason to start a service manually. In your first post you could see that voxl-mavcam-manager was already running as a service.

                What do your video stream settings look like in QGC? Do you have it setup correctly to expect an rtsp stream?

                KrisK 1 Reply Last reply Reply Quote 0
                • KrisK
                  Kris @tom
                  last edited by

                  @tom
                  Yes, I have ran through the voxl-configure-sku and the voxl-configure-mpa.
                  This is what my video stream seetings look like in QGC, if its the correct location.

                  QGC1.jpg

                  QGC2.jpg

                  tomT 1 Reply Last reply Reply Quote 0
                  • tomT
                    tom admin @Kris
                    last edited by

                    @Kris 27359e0b-c763-47ba-9635-adf90f5bcca1-image.png

                    The video stream settings are under "General", you'll want to enter the RTSP URI there

                    KrisK 3 Replies Last reply Reply Quote 0
                    • KrisK
                      Kris @tom
                      last edited by

                      @tom Thank you so much, I just found it and I will try it.

                      1 Reply Last reply Reply Quote 0
                      • KrisK
                        Kris @tom
                        last edited by

                        @tom
                        I am sorry, it is still not working....

                        QGC3.png

                        KrisK 1 Reply Last reply Reply Quote 0
                        • KrisK
                          Kris @Kris
                          last edited by

                          QGC4.png

                          QGC5.jpg

                          1 Reply Last reply Reply Quote 0
                          • KrisK
                            Kris @tom
                            last edited by

                            QGC6.jpg

                            tomT 1 Reply Last reply Reply Quote 0
                            • tomT
                              tom admin @Kris
                              last edited by

                              @Kris What do you see with systemctl status voxl-streamer?

                              KrisK 4 Replies Last reply Reply Quote 0
                              • KrisK
                                Kris @tom
                                last edited by Kris

                                @tom This is what I see.

                                voxl:~$ systemctl status voxl-streamer
                                ● voxl-streamer.service - voxl-streamer
                                   Loaded: loaded (/usr/bin/voxl-streamer; enabled; vendor preset: enabled)
                                   Active: active (running) since Tue 2024-03-05 01:18:42 UTC; 13min ago
                                  Process: 17793 ExecStartPre=/bin/sleep 5 (code=exited, status=0/SUCCESS)
                                 Main PID: 17800 (voxl-streamer)
                                   CGroup: /system.slice/voxl-streamer.service
                                           └─17800 /usr/bin/voxl-streamer
                                
                                Mar 05 01:31:34 apq8096 voxl-streamer[17800]: A new client rtsp://192.168.11...1
                                Mar 05 01:31:34 apq8096 voxl-streamer[17800]: Camera server Connected
                                Mar 05 01:31:34 apq8096 voxl-streamer[17800]: rtsp client disconnected, tota...0
                                Mar 05 01:31:34 apq8096 voxl-streamer[17800]: no more rtsp clients, closing ...y
                                Mar 05 01:31:34 apq8096 voxl-streamer[17800]: A new client rtsp://192.168.11...1
                                Mar 05 01:31:34 apq8096 voxl-streamer[17800]: Camera server Connected
                                Mar 05 01:31:34 apq8096 voxl-streamer[17800]: rtsp client disconnected, tota...0
                                Mar 05 01:31:34 apq8096 voxl-streamer[17800]: no more rtsp clients, closing ...y
                                Mar 05 01:31:34 apq8096 voxl-streamer[17800]: A new client rtsp://192.168.11...1
                                Mar 05 01:31:34 apq8096 voxl-streamer[17800]: Camera server Connected
                                Hint: Some lines were ellipsized, use -l to show in full.
                                
                                
                                voxl:~$ systemctl status voxl-streamer -l
                                ● voxl-streamer.service - voxl-streamer
                                   Loaded: loaded (/usr/bin/voxl-streamer; enabled; vendor preset: enabled)
                                   Active: active (running) since Tue 2024-03-05 01:18:42 UTC; 14min ago
                                  Process: 17793 ExecStartPre=/bin/sleep 5 (code=exited, status=0/SUCCESS)
                                 Main PID: 17800 (voxl-streamer)
                                   CGroup: /system.slice/voxl-streamer.service
                                           └─17800 /usr/bin/voxl-streamer
                                
                                Mar 05 01:33:33 apq8096 voxl-streamer[17800]: no more rtsp clients, closing source pipe intentionally
                                Mar 05 01:33:33 apq8096 voxl-streamer[17800]: A new client rtsp://192.168.110.159:48596(null) has connected, total clients: 1
                                Mar 05 01:33:33 apq8096 voxl-streamer[17800]: Camera server Connected
                                Mar 05 01:33:33 apq8096 voxl-streamer[17800]: rtsp client disconnected, total clients: 0
                                Mar 05 01:33:33 apq8096 voxl-streamer[17800]: no more rtsp clients, closing source pipe intentionally
                                Mar 05 01:33:33 apq8096 voxl-streamer[17800]: A new client rtsp://192.168.110.159:48604(null) has connected, total clients: 1
                                Mar 05 01:33:33 apq8096 voxl-streamer[17800]: Camera server Connected
                                Mar 05 01:33:33 apq8096 voxl-streamer[17800]: rtsp client disconnected, total clients: 0
                                Mar 05 01:33:33 apq8096 voxl-streamer[17800]: no more rtsp clients, closing source pipe intentionally
                                Mar 05 01:33:33 apq8096 voxl-streamer[17800]: A new client rtsp://192.168.110.159:48606(null) has connected, total clients: 1
                                
                                
                                1 Reply Last reply Reply Quote 0
                                • KrisK
                                  Kris @tom
                                  last edited by

                                  voxl:~$ systemctl status voxl-mavcam-manager -l
                                  ● voxl-mavcam-manager.service - voxl-mavcam-manager
                                     Loaded: loaded (/usr/bin/voxl-mavcam-manager; enabled; vendor preset: enabled)
                                     Active: failed (Result: signal) since Tue 2024-03-05 01:18:39 UTC; 20min ago
                                    Process: 17657 ExecStart=/bin/bash -c /usr/bin/voxl-mavcam-manager (code=killed, signal=ABRT)
                                   Main PID: 17657 (code=killed, signal=ABRT)
                                  
                                  Mar 05 01:18:39 apq8096 bash[17657]: snapshot_pipe_name:        tracking
                                  Mar 05 01:18:39 apq8096 bash[17657]: video_record_pipe_name:    tracking
                                  Mar 05 01:18:39 apq8096 bash[17657]: default_uri:               rtsp://192.168.110.152:8900/live
                                  Mar 05 01:18:39 apq8096 bash[17657]: enable_auto_ip:            0
                                  Mar 05 01:18:39 apq8096 bash[17657]: =================================================================
                                  Mar 05 01:18:39 apq8096 bash[17657]: Camera name for qgc: Camera 0
                                  Mar 05 01:18:39 apq8096 bash[17657]: Mavlink server Connected
                                  Mar 05 01:18:39 apq8096 systemd[1]: voxl-mavcam-manager.service: Main process exited, code=killed, status=6/ABRT
                                  Mar 05 01:18:39 apq8096 systemd[1]: voxl-mavcam-manager.service: Unit entered failed state.
                                  Mar 05 01:18:39 apq8096 systemd[1]: voxl-mavcam-manager.service: Failed with result 'signal'.
                                  
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • KrisK
                                    Kris @tom
                                    last edited by

                                    voxl:~$ voxl-inspect-sku
                                    
                                    family code:   MRB-D0003 (seeker)
                                    compute board: 1 (voxl1)
                                    hw version:    7
                                    cam config:    7
                                    SKU:           MRB-D0003-1-V7-C7
                                    
                                    
                                    1 Reply Last reply Reply Quote 0
                                    • KrisK
                                      Kris @tom
                                      last edited by

                                      voxl-inspect-mavlink mavlink_sys_status

                                      |   ID  |      Mavlink MSG Name       |Counter|  Hz  |
                                      |-------|-----------------------------|-------|------|
                                      |     1 | sys_status                  |    92 |  5.0 |
                                      
                                      
                                      Alex KushleyevA 1 Reply Last reply Reply Quote 0
                                      • Alex KushleyevA
                                        Alex Kushleyev ModalAI Team @Kris
                                        last edited by Alex Kushleyev

                                        @Kris , please try the following:

                                        • verify the ip address of voxl2
                                          • when you adb into voxl2, the ip address is printed
                                          • you can use ifconfig to check the ip address
                                        • make sure voxl-streamer is running (it looks like it is based on output of systemctl status voxl-streamer
                                        • ping your voxl2 ip from your host machine (just to make sure it can reach voxl2)
                                        • download ffmpeg / ffplay to your host machine
                                          • perhaps something in VLC is not working, but ffmpeg / ffplay usually works
                                          • on linux OS should be able to do it using apt-get ffmpeg
                                          • for other OS you can find direct download : https://www.ffmpeg.org/download.html

                                        play the video on the host machine (replace voxl2-ip with actual ip address)

                                        ffplay rtsp://<voxl2-ip>:8900/live
                                        
                                        ModeratorM 1 Reply Last reply Reply Quote 0
                                        • ModeratorM
                                          Moderator ModalAI Team @Alex Kushleyev
                                          last edited by

                                          Typically hires is the only pipe with encoding enabled by default, but in this case tracking is being used. Can you make sure encoding is enabled for the tracking camera in voxl-camera-server.conf ?

                                          Or, can you just see if hires_enc is working in QGC first? That's what we ship by default on a fresh install hires_enc to QGC should by enabled by default.

                                          1 Reply Last reply Reply Quote 0
                                          • First post
                                            Last post
                                          Powered by NodeBB | Contributors