JPEG parameter struct mismatch: library thinks size is 728, caller expects 720

I’ve settled a CSI-camera and try to use nvgstcapture-1.0 to open it. But the error shows

JPEG parameter struct mismatch: library thinks size is 728, caller expects 720

Here is libjpeg version show by apt list | grep libjpeg for your information:

libjpeg-dev/focal,now 8c-2ubuntu8 arm64 [installed]
libjpeg-progs/focal 1:9d-1 arm64
libjpeg-tools/focal 0.0~git20190821.87636f3b26b4-1.1 arm64
libjpeg-turbo-progs/focal-updates,focal-security 2.0.3-0ubuntu1.20.04.3 arm64
libjpeg-turbo-test/focal-updates,focal-security 2.0.3-0ubuntu1.20.04.3 arm64
libjpeg-turbo8-dbg/focal-updates,focal-security 2.0.3-0ubuntu1.20.04.3 arm64
libjpeg-turbo8-dev/focal-updates,focal-security,now 2.0.3-0ubuntu1.20.04.3 arm64 [installed,automatic]
libjpeg-turbo8/focal-updates,focal-security,now 2.0.3-0ubuntu1.20.04.3 arm64 [installed,automatic]
libjpeg62-dev/focal 1:6b2-3 arm64
libjpeg62/focal 1:6b2-3 arm64
libjpeg8-dbg/focal 8c-2ubuntu8 arm64
libjpeg8-dev/focal,now 8c-2ubuntu8 arm64 [installed,automatic]
libjpeg8/focal,now 8c-2ubuntu8 arm64 [installed,automatic]
libjpeg9-dev/focal 1:9d-1 arm64
libjpeg9/focal 1:9d-1 arm64

Do you know How to fix this?
Here is the environment:
Environment:
Jetpack: 5.1.3
python: 3.8
Gstreamer: 1.16.3
OpenCV:4.5.4
System: Ubuntu 20.04

What’s the camera output size?

It’s 1280*720.

Hi,
Please try gst-launch-1.0 command to check if the issue is specific to nvgstcapture-1.0:

$ gst-launch-1.0 nvarguscamerasrc ! fakesink

The sigsegv happens in this case:

Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Caught SIGSEGV
Spinning.  Please run 'gdb gst-launch-1.0 4298' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.

Hi,
We don’t expect the error on default Jetpack release. Please clean gstreamer cache and see if you can successfully run the command.

How to clean gstreamer cache? I’m a new user and not familiar with gstreamer.

Hi,
Please try

$ rm ~/.cache/gstreamer-1.0/registry.aarch64.bin

Clearing cache doesn’t help. After clearing the cache and run gst-launch-1.0 nvarguscamerasrc ! fakesink
SIGSEGV still repeats:

(gst-plugin-scanner:11054): GStreamer-WARNING **: 11:21:18.496: Failed to load plugin ‘/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstlibav.so’: /lib/aarch64-linux-gnu/libgomp.so.1: cannot allocate memory in static TLS block

(gst-plugin-scanner:11054): GStreamer-WARNING **: 11:21:18.566: Failed to load plugin ‘/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstchromaprint.so’: /lib/aarch64-linux-gnu/libgomp.so.1: cannot allocate memory in static TLS block
Setting pipeline to PAUSED …
Pipeline is live and does not need PREROLL …
Setting pipeline to PLAYING …
New clock: GstSystemClock
Caught SIGSEGV
Spinning. Please run ‘gdb gst-launch-1.0 11053’ to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.

Hi,
Please re-flash the system to 5.1.3 through SDKManager and try again. It would be great to have a clean system and check if the issue still occurs.

Is is possible to re-flash system directly via ubuntu in jetson instead of SDK manager in a host computer? It’s because now I don’t have available host linux system.

No, you need to have a host PC with Ubuntu.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.