Closed dakejahl closed 11 months ago
Ahhh I see this is because the Orin Nano does not have a hardware video encoder. Should I just use the gst-ros-bridge gstreamer plugin and create a gstreamer pipeline off of the ros2 topic /image_raw from argus_camera? What is the recommended way to integrate h264 compression and video streaming nicely with isaac_ros?
Hello, could you expand on your use case of using gstreamer with Isaac ROS? Orin Nano doesn't have a hardware encoder, hence isaac_ros_h264_encoder/decoder
won't help here.
Hi thanks for the quick response. I am using a Jetson Orin Nano to test out vision applications on a drone such as vslam and vio. Additionally I want to stream one or more of the cameras over the network, ideally with an overlay of key points or object detection boxes. After more reading I ended up with this pipeline that uses the /image_raw topic to encode h264 and stream to the client:
gst-launch-1.0 --gst-plugin-path=install/gst_bridge/lib/gst_bridge/ rosimagesrc ros-topic="/image_raw" ! queue max-size-buffers=1 ! videoconvert ! "video/x-raw,format=I420" ! x264enc bitrate=2000 tune=zerolatency speed-preset=ultrafast ! "video/x-h264,stream-format=byte-stream" ! rtph264pay config-interval=1 pt=96 ! udpsink host=192.168.0.16 port=5600 sync=false
The original question boils down to is x264enc the best selection for performance. Without a hardware encoder my understanding is yes since this is just a software encoder element.
I am trying to encode h264 using an imx219 on Jetson Orin Nano running 35.3.1 and Jetpack 5.1.1. I am starting the argus_camera node to interface with the camera.
I then open another shell and try to launch the encoder and encounter this error
I noticed the note
However I am unsure if the
isaac_ros_argus_camera
node converts it already before publishing to /left/image_raw. The imx219 outputs in RG10 format. I even tried remapping the topic name since the encoder expects /image_raw but I still get the crash atFailed to create encoder