Loading libnvidia-encode.so.1 did not get max API version

Hello:

Issue with not getting the correction API version to run nvh265enc on my GeForce GTX 1060.

Successfully built and installed Gstreamer 1.19 (via the gst-build meson project) at /usr. Using,
gst-inspect-1.0 --version
The log showed,
nvenc gstnvenc.c:937:gst_nvenc_load_library: Maximum supported API version by driver: 11.0

Launching a pipeline in my code, the log showed,
nvenc gstnvenc.c:937:gst_nvenc_load_library: Maximum supported API version by driver: 9.1

And, nvh265enc, is not available at this API version. Have to add, /usr/lib/x86_64-linux-gnu, to LD_LIBRARY_PATH, in order to get the correct API version (11.0).

However, adding, /usr/lib/x86_64-linux-gnu, to, LD_LIBRARY_PATH, caused dll incompatible issues in some module(s) in my code.

Is there another way to load the, libnvidia-encode, module without change the env variable, LD_LIBRARY_PATH?

Please advise. Thank you.

Hi.
Sorry, I am not sure this is NVIDIA driver issue or gstreamer setup issue.
Are you able to build and run NVIDIA Video Codec SDK sample application correctly on the system? If this is something specific to gstreamer, I encourage you to also seek help from their forum.

Thanks.

Hi, Mandar:

Many thanks for your response. Just found the root cause of the issue, my apology for not updating the thread sooner.

It turned out that, in my build configuration, an older version of libnvcuvid.so was used. And, thus, libnvidia-encode.so.1 was linked to this dll when the Gstreamer pipeline was instantiated. The Nvidia API version was at 9.1 and the nvcodec would not be able to offer the nvh265enc feature.

Please kindly close this ticket.