ModalAI Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login
    1. Home
    2. Amither
    A
    • Profile
    • Following 0
    • Followers 0
    • Topics 1
    • Posts 3
    • Best 0
    • Controversial 0
    • Groups 0

    Amither

    @Amither

    0
    Reputation
    8
    Profile views
    3
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    Amither Unfollow Follow

    Latest posts made by Amither

    • RE: Problem with bitrate and omx encoder

      Hi,
      In addition, when trying to work with the OMX h264enc plugin provided by Qualcomm, I am facing the following issues -

      • The picture is completely distorted as can be seen here -
        https://www.youtube.com/watch?v=niex_WXB6iI
        The CLI command is
      sudo gst-rtsp-launch "( qtiqmmfsrc camera=1 device=hires latency=0 ! video/x-raw,width=640,height=480,format=NV12,framerate=30/1 ! omxh264enc qos=1 ! video/x-h264, profile=(string)high, width=(int)640, height=(int)480, framerate=(fraction)30/1, format=(string)NV12, interlace-mode=(string)progressive, chroma-format=(string)4:2:0,profile-level-id=428014 !  h264parse ! rtph264pay name=pay0 pt=96 )"
      
      • I did manage to receive a clear stream by using Qualcomm's SDK and Qmmf server - https://www.youtube.com/watch?v=e0B045-gBUA
        with the following CLI command
      sudo gst-rtsp-launch "( qtiqmmfsrc camera=1 device=hires video_0::bitrate=1200000 ! video/x-h264,width=640,height=480,format=NV12,framerate=30/1 ! h264parse ! rtph264pay name=pay0 pt=96  )"
      

      In case that i tried to use voxlsrc with omxh264enc that rides over voxl-camera-server.
      I see grainy picture, omxh264enc cant handle low bitrate in that situation.

      https://www.youtube.com/watch?v=UXO9PGNwfE8

      voxlsrc device=hires ! video/x-raw,width=640,height=480,format=NV12,framerate=30/1 ! videoconvert ! omxh264enc control-rate=2 target-bitrate=1200000  ! video/x-h264,width=640,height=480,profile=main ! h264parse ! rtph264pay name=pay0 pt=96
      

      Our scenario requires having two different streams, one is encoded and the other is a raw output.
      Our current setups works with Gstreamer and v4l2src, v4l2h264enc. Since VOXL uses a Qualcomm based board I tried converting the current implementation to use Gstreamer with Qmmfsrc, voxlsrc (my own plugin), omxh264enc.

      My question is how can i make the omxh264enc work with qmmfsrc or voxlsrc ?

      I hope this clarifies the situation.
      Thanks,
      Amit

      posted in VOXL-CAM
      A
      Amither
    • RE: Problem with bitrate and omx encoder

      Hi @Chad-Sweet,
      I tried to configuring higher resolution by editing /etc/modalai/voxl-camera-server.conf to higher resolution (720P) as follows, however, the output stays the same.

      voxl2:/$ cat /etc/modalai/voxl-camera-server.conf 
      {
      	"version":	0.1,
      	"cameras":	[{
      			"name":	"tracking",
      			"enabled":	true,
      			"frame_rate":	30,
      			"type":	"ov7251",
      			"camera_id":	0,
      			"ae_desired_msv":	60,
      			"ae_filter_alpha":	0.600000023841858,
      			"ae_ignore_fraction":	0.20000000298023224,
      			"ae_slope":	0.05000000074505806,
      			"ae_exposure_period":	1,
      			"ae_gain_period":	1
      		}, {
      			"name":	"hires",
      			"enabled":	true,
      			"frame_rate":	30,
      			"type":	"imx214",
      			"camera_id":	1,
      			"preview_width":	1280,
      			"preview_height":	720,
      			"snapshot_width":	3840,
      			"snapshot_height":	2160
      		}]
      }
      

      Hi @Eric-Katzfey,
      We are working with Ethernet which should provide the best output. I tried implementing a simple plugin for Gstreamer which will allow me to pull a video stream from the camera server. I am sharing the repo if you find this useful -
      https://github.com/amit-hers/Voxl-Plugin.

      Thanks,
      Amit

      posted in VOXL-CAM
      A
      Amither
    • Problem with bitrate and omx encoder

      Hi,

      I have recently started exploring the video interface of the VOXL2, utilising the Hires camera setup. Unfortunately, some issues arose when working with the provided OMX encoder.
      When using the preinstalled voxl-streamer application with bitrate of 1MB and resolution of 640x480, format NV12, the output image is grainy.
      I tried writing my own Gstreamer plugin (voxlsrc) which encodes frames using omxh264enc and sends through RTP.

      gst-launch-1.0 voxlsrc device=hires ! video/x-raw,width=640,height=480,format=NV12,framerate=30/1 ! videoconvert ! omxh264enc control-rate=2 target-bitrate=1000000  ! video/x-h264,width=640,height=480,profile=main ! h264parse ! rtph264pay
      

      When using my own computer, I am able to produce a clear image by simply replacing the encoder to x264enc (CPU encoder) and 1MB bitrate.

      gst-launch-1.0 v4l2src ! videoscale ! videoconvert !  video/x-raw,width=640,height=480,framerate=30/1,format=NV12 ! x264enc tune=zerolatency bitrate=1000 ! h264parse ! avdec_h264 ! xvimagesink sync=false
      

      When using voxl-portal or voxl-streamer with bitrate
      10Mb or higher we see clearly picture.

      Bitrate is a key element in our system, while we are unable to support the current bit rate (10Mb or higher). Is there a method to reduce the current bitrate and still maintain a clear picture?

      Links for output pictures : https://postimg.cc/gallery/3RR7j5V

      Thanks,
      Amit Hershkovich.

      posted in VOXL-CAM
      A
      Amither