top of page

How to Stream GigE Cameras Using Isaac ROS on NVIDIA Jetson AGX Orin

Robotic and vision-based systems require reliable high-bandwidth camera interfaces with deterministic performance and low latency. GigE cameras are widely used in such applications due to their long cable support, stable data transmission, and suitability for distributed vision architectures.

This blog explains how GigE cameras can be integrated with NVIDIA Jetson AGX Orin using NVIDIA Isaac ROS, enabling RTSP-based video streaming into a ROS 2 environment. The focus is on building a scalable camera pipeline that converts Ethernet video streams into ROS 2 image topics for real-time edge vision and robotics workloads.


Why Jetson AGX Orin?

Jetson AGX Orin is a powerful edge AI platform designed for compute-intensive robotics and AI workloads. It combines a high-performance CPU, a next-generation NVIDIA GPU, and dedicated AI accelerators in a single embedded system. This makes it well suited for running Isaac ROS pipelines such as visual SLAM, object detection, depth estimation, and multi-camera perception.

A key advantage of Jetson AGX Orin is its ability to perform on-device inference with low latency and no cloud dependency. This is critical for real-world robotic systems where real-time response, reliability, and safety are essential. When paired with Isaac ROS, Jetson AGX Orin enables robots to process sensor data locally, make fast decisions, and operate efficiently in dynamic environments.


System Requirements for Isaac ROS on Jetson AGX Orin

To run NVIDIA Isaac ROS efficiently, the system must meet the following hardware and software requirements. These ensure proper GPU acceleration, container support, and stable runtime behavior for robotics workloads. To know more about Isaac ROS, check out our dedicated blog - What is NVIDIA® Isaac ROS?

Hardware Platform

  • Jetson AGX Orin

Software Stack

  • JetPack Version: JetPack 6.1

  • Kernel Version: 5.15.148-tegra

Isaac ROS is designed to leverage NVIDIA’s acceleration stack on Jetson platforms. To use the container-based development and runtime environment provided by Isaac ROS, the NVIDIA Container Toolkit must be installed and configured on the Jetson device. This enables GPU access inside Docker containers and is a mandatory requirement before working with Isaac ROS packages.

Before proceeding further, ensure that Isaac ROS is properly installed and verified on Jetson AGX Orin. For a step-by-step installation and setup guide, refer to our dedicated blog on How to Install NVIDIA Isaac ROS on Jetson AGX Orin.

Streaming INNOVA-662CRS Camera Using Isaac ROS on Jetson AGX Orin

This section describes how a Vadzo's INNOVA-662CRS GigE camera (IMX662 sensor) can be streamed over RTSP and integrated into a ROS 2 environment running Isaac ROS on Jetson AGX Orin. The goal is to convert the camera’s RTSP video stream into a standard ROS 2 image topic so it can be consumed by GPU-accelerated perception pipelines.

The streaming approach uses a custom RTSP bridge that receives the Ethernet-based video stream and publishes it as a ROS 2 topic. Once available in ROS 2, the stream behaves like any other camera input and can be visualized, recorded, or processed using Isaac ROS components.

RTSP-based GigE camera integration with Jetson AGX Orin using Isaac ROS pipeline
Fig: Streaming Architecture

The above flow chart explains the complete end-to-end data flow of the IMX662 camera streaming pipeline. The camera streams live video using RTSP over Ethernet with a static IP configuration.

The Jetson AGX Orin receives this stream and the RTSP Bridge node converts it into ROS 2 image messages. These images are published on the /isaac/camera_raw topic and visualized using rqt_image_view for verification.


Integrating the RTSP Bridge into the Isaac ROS Workspace

To enable RTSP streaming inside the Isaac ROS environment, the RTSP bridge package must be added to the existing Isaac ROS workspace. This allows the package to be built and executed within the same containerized ROS 2 setup. To get access to the RTSP bridge package free of cost, please reach out to support@vadzoimaging.com.

Run the following command on the host system (outside the container):

1. cp -r rtsp_bridge /mnt/nova_ssd/workspaces/isaac_ros-dev/src

This places the RTSP bridge package alongside other Isaac ROS packages in the workspace.


Accessing the Isaac ROS Development Container

Isaac ROS workflows are executed inside a Docker-based development container that includes ROS 2 and NVIDIA acceleration support. Launch the container using:

1. cd ${ISAAC_ROS_WS}/src/isaac_ros_common && \
2. ./scripts/run_dev.sh -d ${ISAAC_ROS_WS}

Once the container starts, you should see a prompt similar to:

1. admin@nvidia-desktop:/workspaces/isaac_ros-dev$

All subsequent commands are executed inside this container unless stated otherwise.


Installing RTSP and GStreamer Dependencies

RTSP streaming relies on GStreamer for video decoding and pipeline handling. The following packages must be installed inside the container to support RTSP ingestion and ROS 2 image publishing.

 1. sudo apt-get update
 2. sudo apt install -y gstreamer1.0-tools
 3. sudo apt install -y gstreamer1.0-plugins-base gstreamer1.0-plugins-good \
 4. gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav
 5. sudo apt install -y \
 6.     python3-gi \
 7.     python3-gi-cairo \
 8.     gir1.2-gtk-3.0 \
 9.     gir1.2-gstreamer-1.0 \
10.     gir1.2-gst-plugins-base-1.0

These dependencies allow the RTSP bridge to decode the incoming stream and publish frames as ROS 2 image messages.


Building the RTSP Bridge Package

After installing the required dependencies, the RTSP bridge package can be built within the Isaac ROS workspace.

1. rm -rf build/ install/ log/
2. colcon build --symlink-install --packages-select rtsp_bridge
3. source install/setup.bash

This completes the build process for the RTSP bridge.


Camera Connection and Static IP Configuration

Connect the INNOVA-662CRS camera’s Ethernet cable directly to the Jetson AGX Orin and disconnect any other Ethernet connections to avoid conflicts.

Configure a static IP address on the Jetson for the Ethernet interface connected to the camera:

1. sudo ifconfig <ethernet_interface> <ip_addr> up

Ethernet interface selection

  • mgbe0 → Camera connected to Port 0

  • mgbe1 → Camera connected to Port 1

Example

1. sudo ifconfig mgbe0 192.168.201.10 up

Ensure that the Jetson IP address is in the same subnet as the camera.


Updating RTSP Bridge Configuration for Camera IP

The RTSP bridge contains the camera’s IP address in its configuration. By default, the camera IP is set to 192.168.201.251. If the camera IP is changed, update it in the following files:

1. /mnt/nova_ssd/workspaces/isaac_ros-dev/src/rtsp_bridge/config/gscam.yaml
2. /mnt/nova_ssd/workspaces/isaac_ros-dev/src/rtsp_bridge/launch/rtsp_bridge.launch.py
3. /mnt/nova_ssd/workspaces/isaac_ros-dev/src/rtsp_bridge/rtsp_bridge/gst_image_bridge.py

This ensures the RTSP bridge connects to the correct camera endpoint.


Rebuilding the RTSP Bridge After Configuration Changes

If only RTSP-related configurations are modified, rebuilding the entire workspace is unnecessary. Rebuild only the RTSP bridge package:

1. rm -rf build/ install/ log/
2. colcon build --symlink-install --packages-select rtsp_bridge
3. source install/setup.bash

Running the RTSP Stream in ROS 2

Start the RTSP bridge node inside the container:

1. ros2 run rtsp_bridge gst_image_bridge

Expected console output:

1. [INFO] [rtsp_bridge]: Connecting to RTSP...
2. [INFO] [rtsp_bridge]: Streaming to /isaac/camera_raw

This confirms that the RTSP stream is being published as a ROS 2 image topic.

Note: Do not close this terminal. Keep the RTSP bridge running.

Visualizing the Live Camera Stream

Open another terminal and enter the Isaac ROS Development Container.

To view the video stream, run:

1. ros2 run rqt_image_view rqt_image_view

In the rqt_image_view window, select the topic:

1. /isaac/camera_raw

Expected Result: If the setup is correct, the live IMX662 video stream will be visible inside ROS 2, confirming that RTSP streaming is working successfully.

Scalable Edge Camera Integration with Isaac ROS

This setup demonstrates a practical and scalable approach to integrating the INNOVA-662CRS GigE Ethernet camera into an Isaac ROS–based robotic pipeline using RTSP streaming. By converting the camera’s Ethernet video stream into a standard ROS 2 image topic, the camera becomes natively compatible with GPU-accelerated perception and AI workflows on Jetson AGX Orin.

The solution highlights how our GigE cameras can be seamlessly deployed in modern, edge-based robotic systems, enabling real-time vision processing without reliance on cloud connectivity. This architecture provides the flexibility, performance, and scalability required for industrial robotics, autonomous machines, and intelligent vision applications operating entirely at the edge. For similar deployments, choosing a GigE camera with stable streaming and native compatibility with Jetson and ROS is essential.

Vadzo Imaging GigE Camera Portfolio

Vadzo Imaging offers a range of GigE cameras designed for reliable deployment in edge vision and robotics systems. Built for high-performance data transmission over Ethernet, our GigE cameras integrate seamlessly with Jetson platforms and ROS-based pipelines.

IMX662 Ultra Low Light 1080P GigE Camera
From$392.00
Buy Now
AR0234 Global Shutter 1080P GigE Camera
From$418.00
Buy Now
AR0521 Color 5MP Low Light GigE Camera
From$392.00
Buy Now

For technical queries, integration support, or product-related assistance, contact us at support@vadzoimaging.com. To get access to the RTSP bridge package free of cost, please reach out to us through the same.


bottom of page