I have used the nvjpegdec element on xavier nx (Jetpack 4.6 - L4T 32.6.1).
I am using a gstreamer pipeline to visualize a camera in Qt
Xavier nx pipeline to visualize MJPEG http stream:
souphttpsrc location=http://192.168.1.2:8084/mjpeg is-live=1 timeout=3 do-timestamp=true ! multipartdemux ! nvjpegdec ! qtvideosink sync=0
To use gst-launch-1.0 xvimagesink can be used instead of qtvideosink
I have never had a problem with this pipeline and it works perfectly
I have upgraded from Xavier NX to Orin NX. The Orin NX has jetpack 5.1 and L4t 35.2.1
When I use the pipeline I get a segmentation fault.
This segmentation fault is not always occurring, and I have not been able to pinpoint why it is occurring.
souphttpsrc location=http://192.168.1.2:8084/mjpeg is-live=1 timeout=3 do-timestamp=true ! multipartdemux ! nvjpegdec ! qtvideosink sync=0
When I change the nvjpegdec to jpegdec (base gstreamer jpeg decoding). The segmentation fault never occurs
souphttpsrc location=http://192.168.1.2:8084/mjpeg is-live=1 timeout=3 do-timestamp=true ! multipartdemux ! jpegdec ! qtvideosink sync=0
Furthermore I have also tested the nvv4l2decoder:
This pipeline also works perfectly and renders the camera.
souphttpsrc location=http://192.168.1.2:8084/mjpeg is-live=1 timeout=3 do-timestamp=true ! multipartdemux ! jpegparse ! nvv4l2decoder mjpeg=1 ! nvvidconv ! qtvideosink sync=0
What is the error with nvjpegdec? I would love to keep using nvjpegdec instead of nvv4l2decoder because the nvv4l2decoder has a somewhat slower startup time.