Using GStreamer with E-CON NileCAM_30 following Jetson-inference


I am having trouble displaying video from my NileCAM_30 following the Jetson-Inference guide. The camera is a v4l2 device under dev/video0 directory. When I run ./imagenet-camera --camera=/dev/video0 --width=1920 --height=1080 in the terminal it will successfully connect to the camera but nothing shows up and I get EOS and streaming stopped, reason not-negotiated (-4). Here is the output from running the executable:

NileCAM30_TX2_error_log.txt (5.5 KB)

I am learning GStreamer so forgive my ignorance, but whenever I run

gst-launch-1.0 v4l2src device=/dev/video0 ! "video/x-raw, format=(string)UYVY, width=(int)2304,height=(int)1296" ! nvvidconv ! "video/x-raw(memory:NVMM), format=(string)I420, width=(int)1920,height=(int)1080" ! nvoverlaysink overlay-w=1920 overlay-h=1080 sync=false

in the terminal I can view video feed from the camera. There are many differences between that and the gstCamera pipeline string from the output log I attached.

Any help that helps me understand the differences between these would be greatly appreciated.


Hi ajschleg,
From your error log, it seems the imagenet-camera application runs a gstreamer pipeline in which v4l2 format is set to YUY2.
NileCAM30_TX2 supports UYVY format only. Please modify that parameter in the imagenet-camera source, and rebuild and run it to get the camera stream.

That worked thank you!

1 Like