NVIDIA-ISAAC-ROS / isaac_ros_compression

NVIDIA-accelerated data compression
https://developer.nvidia.com/isaac-ros-gems
Apache License 2.0
53 stars 7 forks source link

Missing nvbufsurface.so on x86 #15

Closed nhahn closed 3 weeks ago

nhahn commented 1 month ago

I'm running a version of this on X86 with an NGC TensorRT image, but it's unable to find the libnvbufsurface.so library. I know this gets mounted on the Orin devices through the container toolkit, and it's primarily used for the Jetson multimedia API, but how is it leveraged on x86? I would assume the decoder / encoder would be NVDEC / NVENC based.

nhahn commented 3 weeks ago

Found it — it comes along with nvv4l2 that gets installed in the x86 docker image. Here’s the key part:

# Install nvv4l2 for GXF Multimedia h264 codec
RUN --mount=type=cache,target=/var/cache/apt \
apt-get update && apt-get install -y \
        nvv4l2 \
&& ln -s /usr/lib/x86_64-linux-gnu/libnvcuvid.so.1 /usr/lib/x86_64-linux-gnu/libnvcuvid.so \
&& ln -s /usr/lib/x86_64-linux-gnu/libnvidia-encode.so.1 /usr/lib/x86_64-linux-gnu/libnvidia-encode.so