Hardware decoding using Nvidia GPU in 6.1.1 VMS
We verified that hardware decoding is enabled on Nx Server:
"hardwareDecodingEnabled": true
"fullVersion": "6.1.1.42624-abe49318533b-default"
"systemRuntime": "Ubuntu 24.04.4 LTS"
The server runs in Docker with:
NVIDIA_VISIBLE_DEVICES=all
NVIDIA_DRIVER_CAPABILITIES=compute,utility,video
Inside the container, both libraries are available:
libcuda.so.1
libnvcuvid.so.1
Nx Media Server links against its bundled FFmpeg libraries:
libavformat.so.61
libavcodec.so.61
libavutil.so.59
libswscale.so.8
The bundled libavcodec contains CUVID/NVDEC decoders, including:
h264_cuvid
hevc_cuvid
av1_cuvid
mjpeg_cuvid
An external FFmpeg container using the same GPU setup successfully decodes the same H.264 RTSP stream with h264_cuvid and increases NVIDIA decoder utilization in nvidia-smi dmon.
However, when Nx motion detection is enabled, Nx Media Server does not increase decoder utilization. Also, /proc/<mediaserver_pid>/maps does not show libcuda.so.1 or libnvcuvid.so.1 loaded by the mediaserver process.
Can you confirm under which conditions Nx Server initializes NVIDIA NVDEC hardware decoding, and whether this is supported in Docker for motion detection and analytics plugins?
-
Hi,
We do support HW decoding, and it has been tested and works well across many users. Have you checked if it's enabled in your configuration?

Since this is more of a general usage question than a developer topic, we'll be moving this thread to the Nx Witness Software Suite category .
Thanks!
0
Please sign in to leave a comment.
Comments
1 comment