NvJpegDecoder issue with Arducam cameras

Hello,

I have a Jetson Orin NX 16GB with Jetpack 6.0 on the board. I am working with Arducam B0249 camera and a MIPI CSI-2 to USB adapter as well as Arducam UB0213. Both cameras seem to have the same issue.

I have a code that is based on the jetson_multimedia_api samples and uses NvJpegDecoder to decode the MJPEG stream from my cameras. Previously I had exactly the same code on my Jetson Nano with Jetpack 4.6 and everything worked perfectly fine, then I adopted it to the new version of NvJpegDecoder on Jetson Orin NX and started having issues.

The thing is that when I run my camera at 1920x1080 resolution, I have only ~11FPS. I also get from your decoder logs that suggest kind of reinitializing the decoder at every frame (I may be wrong here). Here are the logs:

NvMMLiteOpen : Block : BlockType = 277
NvMMLiteBlockCreate : Block : BlockType = 277
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6109> Consume the extra signalling for EOS
NvMMLiteOpen : Block : BlockType = 277
NvMMLiteBlockCreate : Block : BlockType = 277
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6109> Consume the extra signalling for EOS
NvMMLiteOpen : Block : BlockType = 277
NvMMLiteBlockCreate : Block : BlockType = 277
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6109> Consume the extra signalling for EOS
NvMMLiteOpen : Block : BlockType = 277
NvMMLiteBlockCreate : Block : BlockType = 277
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6109> Consume the extra signalling for EOS
NvMMLiteOpen : Block : BlockType = 277
NvMMLiteBlockCreate : Block : BlockType = 277
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6109> Consume the extra signalling for EOS
NvMMLiteOpen : Block : BlockType = 277
NvMMLiteBlockCreate : Block : BlockType = 277
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6109> Consume the extra signalling for EOS
NvMMLiteOpen : Block : BlockType = 277
NvMMLiteBlockCreate : Block : BlockType = 277
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6109> Consume the extra signalling for EOS
NvMMLiteOpen : Block : BlockType = 277
NvMMLiteBlockCreate : Block : BlockType = 277
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6109> Consume the extra signalling for EOS
NvMMLiteOpen : Block : BlockType = 277
NvMMLiteBlockCreate : Block : BlockType = 277
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6109> Consume the extra signalling for EOS
NvMMLiteOpen : Block : BlockType = 277
NvMMLiteBlockCreate : Block : BlockType = 277
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6109> Consume the extra signalling for EOS

Still, the image is fine and I get no error. On Jetson Nano I had stable 30FPS with the same code.
I started my investigation and realized, that the issue is only at the 1080p. When I get lower or even higher resolution, everything works fine. At 2560x1440 I even got ~28FPS.
When I dumped my frame, I saw that it has proper JPEG headers at every resolution, so this is not the issue.

Of course, my first thought was that there is a bug in my code, so I compiled the 12_v4l2_camera_cuda sample and run my Arducam camera with it and there are those strange logs about extra EOS as well.

Please help. Jetson Nano cannot have better performance at MJPEG decoding than Orin NX…

Hi,
Are you able to upgrade to Jetpack 6.0GA 6.1 and give it a try? Certain issues are discovered and fixed in later Jetpack release.

I think I already have Jetpack 6.0GA. This is what I get after typing sudo apt show nvidia-jetpack :

Package: nvidia-jetpack
Version: 6.0+b106
Priority: standard
Section: metapackages
Source: nvidia-jetpack (6.0)
Maintainer: NVIDIA Corporation
Installed-Size: 199 kB
Depends: nvidia-jetpack-runtime (= 6.0+b106), nvidia-jetpack-dev (= 6.0+b106)
Homepage: http://developer.nvidia.com/jetson
Download-Size: 29,3 kB
APT-Manual-Installed: yes
APT-Sources: https://repo.download.nvidia.com/jetson/common r36.3/main arm64 Packages
Description: NVIDIA Jetpack Meta Package

Or did you mean Jetpack 6.1?

Hi,
You are right. It was a typo. Please try Jetpack 6.1.

Hi,
I have upgraded my Orin NX to Jetpack 6.1, but with no luck - the issue is still there.

Hi,
Please try the sample:

/usr/src/jetson_multimedia_api/samples/12_v4l2_camera_cuda

We run it to launch AVerMedia CAM513 and Logitech BRIO 4K USB cameras. And don’t observe the issue. Please try and see whether the issue is still there.

Hi,
Log from running the Arducam B0249 camera with MIPI CSI-2 to USB adapter:

ubuntu@ubuntu-desktop:/usr/src/jetson_multimedia_api/samples/12_v4l2_camera_cuda$ sudo ./v4l2_camera_cuda -d /dev/video4 -s 1920x1080 -f MJPEG -n 30 -c
[INFO] (NvEglRenderer.cpp:110) <renderer0> Setting Screen width 1920 height 1080
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
...
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
^CQuit due to exit command from user!
----------- Element = renderer0 -----------
Total Profiling time = 8.66487
Average FPS = 14.1952
Total units processed = 124
Num. of late units = 123
-------------------------------------
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
App run was successful

And log from running Arducam UB0213:

ubuntu@ubuntu-desktop:/usr/src/jetson_multimedia_api/samples/12_v4l2_camera_cuda$ sudo ./v4l2_camera_cuda -d /dev/video2 -s 1920x1080 -f MJPEG -n 30 -c
[INFO] (NvEglRenderer.cpp:110) <renderer0> Setting Screen width 1920 height 1080
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
^CQuit due to exit command from user!
NvMMLiteOpen : Block : BlockType = 277 
NvMMLiteBlockCreate : Block : BlockType = 277 
----------- Element = renderer0 -----------
Total Profiling time = 3.8812
Average FPS = 14.1709
Total units processed = 56
Num. of late units = 55
-------------------------------------
NVMMLITE_NVVIDEODEC, <NvVideoBufferProcessing:6121> Consume the extra signalling for EOS 
App run was successful

As you can see, the average FPS is much less than expected and we have a lot of lines about the extra signalling for EOS.

Hi,
This looks similar to
Jpeg decode very slow for non-yuv420p jpg

We are checking why decoder gets created and destroyed continually. Will update.

Hi

Please try the attached lib mentioned in

https://forums.developer.nvidia.com/t/jpeg-decode-very-slow-for-non-yuv420p-jpg/319175/5

Thanks