Drive Orin doesn't have nvJPEG library

Please provide the following info (tick the boxes after creating this topic):
Software Version
DRIVE OS 6.0.8.1
DRIVE OS 6.0.6
DRIVE OS 6.0.5
DRIVE OS 6.0.4 (rev. 1)
DRIVE OS 6.0.4 SDK
other

Target Operating System
Linux
QNX
other

Hardware Platform
DRIVE AGX Orin Developer Kit (940-63710-0010-300)
DRIVE AGX Orin Developer Kit (940-63710-0010-200)
DRIVE AGX Orin Developer Kit (940-63710-0010-100)
DRIVE AGX Orin Developer Kit (940-63710-0010-D00)
DRIVE AGX Orin Developer Kit (940-63710-0010-C00)
DRIVE AGX Orin Developer Kit (not sure its number)
other

SDK Manager Version
1.9.3.10904
other

Host Machine Version
native Ubuntu Linux 20.04 Host installed with SDK Manager
native Ubuntu Linux 20.04 Host installed with DRIVE OS Docker Containers
native Ubuntu Linux 18.04 Host installed with DRIVE OS Docker Containers
other

Hi! I want to use nvJPEG to compress images using GPU on NVIDIA DRIVE Orin. Unfortunately it doesn’t have nvjpeg libraries. I know there is nvmedia library and Image JPEG Encoder (ijpe), but I didn’t find any C++ samples for it. There are command line samples which execute it as binary executables and API reference docs. But honestly I don’t think that’s enough for developing C++ based applications. My questions are:

  1. Is it possible to use nvJPEG on NVIDIA Drive Orin? On my Jetson AGX Xavier I saw a libnvjpeg.so. Obviously there is a nvJPEG build for Tegra devices. Could I just simply copy it to NVIDIA Drive and build stuff depending on it? It would also be nice if I could have the source code of nvJPEG and build it on NVIDIA Drive.
  2. If nvJPEG is not feasible, is there any C++ samples for image compression using nvmedia?

Any advice is appreciated. Thanks in advance!

Dear @yuchen.liu1,
nvJPEG is not supported on Orin. You can refer to NvMedia JPEG reference sample and check building application per your need.

Thanks for the apply. I would assume Jetson AGX Xavier and Drive AGX Xavier still supports nvJPEG, but Orin doesn’t support it any more. Is there a reason for that?

Besides, I only found the API reference for NvMedia but didn’t find any C++ samples. Could you share me a link if possible? Thanks

Dear @yuchen.liu1,

Please check /drive/drive-linux/samples/nvmedia_6x on docker container.

It was never supported on Tegra platforms. Please see Nvjpeg_status_execution_failed if it helps.

Thanks for the quick reply. I didn’t know there was a docker container for Nvidia DRIVE OS. I just downloaded it and will check the samples.

On CUDA 11.4 documentation, it says CUDA 11.4 is supported by NVIDIA Jetson. There is also a confusing footnote, saying

(4) Only Tesla V100 and T4 GPUs are supported for CUDA 11.4 on Arm64 (aarch64) POWER9 (ppc64le).

So as far as I understand, although Jetson is listed here, it doesn’t have full support of CUDA Toolkit. Otherwise nvJPEG would be available.