We experience issues with the hardware jpeg encoding in our application (virtual memory keeps increasing).
There seems to be a related post here: Libjpeg encode leak - Jetson & Embedded Systems / Jetson Xavier NX - NVIDIA Developer Forums Which was reported solved.
Just to test this I ran the sample:
./jpeg_encode /usr/src/jetson_multimedia_api/data/Picture/nvidia-logo.yuv 1920 1080 encode_test.jpg -quality 90 -f 1 -s 10000000 --dbg-level 3
Which at some point in time seems to crash:
…
[DEBUG] (NvJpegEncoder.cpp:117) :Succesfully encoded Buffer fd=967
[DEBUG] (NvJpegEncoder.cpp:65) jpenenc (0xaaaLb065475e0) destroyed
[DEBUG] (NvJpegEncoder.cpp:117) :Succesfully encoded Buffer fd=969
[DEBUG] (NvJpegEncoder.cpp:65) jpenenc (0xaaab065475e0) destroyed
[DEBUG] (NvJpegEncoder.cpp:117) :Succesfully encoded Buffer fd=971
[DEBUG] (NvJpegEncoder.cpp:65) jpenenc (0xaaab065475e0) destroyed
[DEBUG] (NvJpegEncoder.cpp:117) :Succesfully encoded Buffer fd=973
[DEBUG] (NvJpegEncoder.cpp:65) jpenenc (0xaaab065475e0) destroyed
[DEBUG] (NvJpegEncoder.cpp:117) :Succesfully encoded Buffer fd=975
[DEBUG] (NvJpegEncoder.cpp:65) jpenenc (0xaaab065475e0) destroyed
NVMAP_IOC_GET_FD failed: Bad address
NvRmStream: Channel submission failed (err=196623)
NvRmStream: Flush failed (err=196623)
JPEGEncFeedFrame 1796: Stream flush failed with error = 196623
Segmentation fault (core dumped)
This is on a Xavier NX with Jetpack 5.1.1 L4T: 35.3.1
Im not sure this example is related to my application crash, but I suppose it shouldnt crash.
[edit: the input image can be created using the encode sample:
sudo ./jpeg_decode num_files 1 …/…/data/Picture/nvidia-logo.jpg …/…/data/Picture/nvidia-logo.yuv
]