Skip to main content
Installs GStreamer and PyGObject, which the ZED camera pipeline for teleop --cameras and collect-data needs. That pipeline captures and encodes the cameras on the Jetson’s GPU and hardware video encoder.
The one-command install and axol provision run it for you. The ZED camera plugins themselves come from gst.build-zed, which runs right after this command.

What it does

  1. Installs the GStreamer packages with apt: gstreamer1.0-tools, gstreamer1.0-plugins-base, gstreamer1.0-plugins-bad, gir1.2-gstreamer-1.0, gir1.2-gst-plugins-base-1.0, libgirepository1.0-dev, gobject-introspection, libcairo2-dev and pkg-config.
  2. Builds PyGObject (pygobject>=3.50,<3.52) into the axol environment. PyGObject has to be built against the system libraries, so it can’t be a normal dependency.
  3. Checks that PyGObject imports and that the GStreamer elements Axol needs are present, including the Jetson’s hardware encoder (nvvidconv, nvv4l2h264enc). It fails if any are missing.
The hardware encoder elements ship with the Jetson system image and can’t be installed with apt. On a first install, the ZED camera plugins are reported as missing in an informational note, because gst.build-zed hasn’t run yet. Video to the headset still uses aiortc, a normal Python dependency. This command doesn’t install GStreamer’s WebRTC support.
gst.install runs only on a Jetson. It skips computers without apt-get and computers where everything is already installed. On other computers, and on a Jetson where this setup isn’t available, Axol uses the ZED SDK camera path, which has higher latency.
Rebuilding the axol environment, such as during a release upgrade, removes PyGObject. Run axol provision afterward to put it back.