Currently I’m trying to setup a project that can setup an RTSP stream with gstreamer from a robot that has a Theta V/Z1 camera connected to it such that the livestream can be streamed to another device on the network to visualize. The setup should run from a docker container on an Nvidia Jetson Xavier/Orin NX. Eventually I also want to include the known work-around that can power-on the camera through the USB API. The implementation is for an autonomous robot.
I’m wondering if anyone on this forum has experience running a livestream on the Theta camera from a docker container. The current model I use is a Theta V connected to a laptop.
Running the libuvc-theta-sample livestream with ./gst_viewer
and gstthetauvc gst-launch-1.0 thetauvcsrc mode=4K ! queue ! h264parse ! decodebin ! queue ! autovideosink sync=false
run fine on my Ubuntu 22.04 natively on a Lenovo P14s laptop.
However, when I port everything to a docker container, everything builds without issue. Only, when I run ./gst_viewer
, I get that Can't open THETA
.
And when I run the gst-launch-1.0 .....
command, the output is:
Setting pipeline to PAUSED ...
ERROR: from element /GstPipeline:pipeline0/GstThetauvcsrc:thetauvcsrc0: Theta not found.
Additional debug info:
gstthetauvcsrc.c(509): gst_thetauvcsrc_start (): /GstPipeline:pipeline0/GstThetauvcsrc:thetauvcsrc0
ERROR: pipeline doesn't want to preroll.
ERROR: from element /GstPipeline:pipeline0/GstThetauvcsrc:thetauvcsrc0: GStreamer error: state change failed and some element failed to post a proper error message with the reason for the failure.
Additional debug info:
../libs/gst/base/gstbasesrc.c(3556): gst_base_src_start (): /GstPipeline:pipeline0/GstThetauvcsrc:thetauvcsrc0:
Failed to start
ERROR: pipeline doesn't want to preroll.
Failed to set pipeline to PAUSED.
Setting pipeline to NULL ...
Freeing pipeline ...
Steps done.
$ libusb
gives the correct resultBus 003 Device 052: ID 05ca:2712 Ricoh Company, Ltd. RICOH THETA V
- ensured I copied
gstthetauvc.so
to/usr/lib/x86_64-linux-gnu/gstreamer-1.0/
- ran
sudo ldconfig
- seems like no other version of libuvc in the docker container
Is there anyone who could help me locate the issue?