I am learning about Jetson Orin and trying to implement the AI Image classification following this tutorial with Jetson-Inference.
The Image classification works with the pictures. But when it is applied on the Jellyfish Video, it has some problem with video streaming
The error is sighted as below. [gstreamer] gstDecoder – failed to create pipeline
[gstreamer] (no element “nvv4l2decoder”)
[gstreamer] gstDecoder – failed to create decoder for file:///home/sesotec-ai-2/tk_ws/src/jetson-inference/build/aarch64/bin/jellyfish.mkv
Traceback (most recent call last):
File “./imagenet.py”, line 58, in
input = videoSource(args.input_URI, argv=sys.argv)
Exception: jetson.utils – failed to create videoSource device
I also checked for sesotec-ai-2@Sesotec-AI-2:~/tk_ws/src/recognition$ v4l2-ctl --list-devices
NVIDIA Tegra Video Input Device (platform:tegra-camrtc-ca):
/dev/media0
HD Pro Webcam C920 (usb-3610000.xhci-4.2):
/dev/video0
/dev/video1
/dev/media1
Hi @karishmathumu, it appears your system doesn’t have the nvv4l2decoder GStreamer element installed, which comes as part of JetPack-L4T - which Jetson device and version of JetPack-L4T are you running? Is it Jetson AGX Orin and JetPack 5.x?
Can you run this command on your system to check which NVIDIA GStreamer elements are installed?
I have went along with the next steps. I ran the image recognition program with the code you gave in the tutorial. It worked well with the black bear, polar bear and brown bear.
I wanted to then try with the images of my own. So I added two images to my github and downloaded them with wget, same as like the bear examples.
But when i ran the ./my.py sea.jpg. It has a huge error in RED and now the ‘sesotec-ai-2@Sesotec-AI-2:’ and every line is totally in RED color
Could you please tell me where I went wrong and how to rectify it please.
Hi @karishmathumu, it looks like you actually downloaded the HTML GitHub page of sea.jpg, and not the raw sea.jpg itself. If you navigate to the GitHub page of your image, right click on the Download button and copy the URL from there. It should have raw in it.
I think it worked. I forgot to add the number of the sea.
This time I ran it as, “./my.py sea.jpg.3” , as when i ran the wget (url) it displayed as
“2022-08-18 14:26:27 (2,37 MB/s) - ‘sea.jpg.3’ saved [98118/98118]”
About the issue with videos and camera, I found that the parts of tutorial involving, live camera or video image detection or video object detection. none of them working in my system . All of them are having the same issue of both:
Can you copy and paste the terminal log for running the command ./video-viewer /dev/video1 ?
It seems there is some problem with using your USB camera - not sure if it’s related to jetson-inference/jetson-utils or not. You might want to try viewing your USB camera on some other app on your Jetson to make sure it’s working okay first.
[gstreamer] opening gstCamera for streaming, transitioning pipeline to GST_STATE_PLAYING
[gstreamer] gstCamera failed to set pipeline state to PLAYING (error 0)
video-viewer: failed to capture video frame
video-viewer: shutting down…
video-viewer: shutdown complete