使用dustynv/deepstream:r35.4.1时GStreamer Nvidia插件报file too short错误求助
问题:Jetson AGX Orin上Deepstream Docker镜像中GStreamer NVIDIA插件为空文件导致加载失败
环境信息
- 硬件:Jetson AGX ORIN
- Tegra版本:R35 (release), REVISION: 5.0, GCID: 35550185, BOARD: t186ref, EABI: aarch64
- Docker基础镜像:
dustynv/deepstream:r35.4.1
问题现象
CMake编译GStreamer应用无报错,但发起请求时出现大量插件加载警告,提示NVIDIA相关GStreamer插件文件过短:
(gst-plugin-scanner:30): GStreamer-WARNING **: 09:03:30.211: Failed to load plugin [13/961] b/aarch64-linux-gnu/gstreamer-1.0/libgstnveglstreamsrc.so': /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnveglstreamsrc.so: file too short (gst-plugin-scanner:30): GStreamer-WARNING **: 09:03:30.211: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvtee.so': /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvtee.so: file too short (gst-plugin-scanner:30): GStreamer-WARNING **: 09:03:30.211: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvjpeg.so': /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvjpeg.so: file too short (gst-plugin-scanner:30): GStreamer-WARNING **: 09:03:30.212: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvidconv.so': /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvidconv.so: file too short (gst-plugin-scanner:30): GStreamer-WARNING **: 09:03:30.212: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvv4l2camerasrc.so': /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvv4l2camerasrc.so: file too short (gst-plugin-scanner:30): GStreamer-WARNING **: 09:03:30.212: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvarguscamerasrc.so': /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvarguscamerasrc.so: file too short (gst-plugin-scanner:30): GStreamer-WARNING **: 09:03:30.212: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvcompositor.so': /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvcompositor.so: file too short (gst-plugin-scanner:30): GStreamer-WARNING **: 09:03:30.212: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideosinks.so': /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideosinks.so: file too short (gst-plugin-scanner:30): GStreamer-WARNING **: 09:03:30.212: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvegltransform.so': /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvegltransform.so: file too short (gst-plugin-scanner:30): GStreamer-WARNING **: 09:03:30.212: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideo4linux2.so': /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideo4linux2.so: file too short (gst-plugin-scanner:30): GStreamer-WARNING **: 09:03:30.212: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvivafilter.so': /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvivafilter.so: file too short (gst-plugin-scanner:30): GStreamer-WARNING **: 09:03:30.212: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideosink.so': /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideosink.so: file too short (gst-plugin-scanner:30): GStreamer-WARNING **: 09:03:30.212: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnveglglessink.so': /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnveglglessink.so: file too short
检查插件目录后确认,所有NVIDIA相关GStreamer插件文件大小均为0:
-rw-r--r-- 1 root root 10336 Aug 1 2023 libgstnavigationtest.so -rw-r--r-- 1 root root 27416 Nov 28 2023 libgstnetsim.so -rw-r--r-- 1 root root 43808 Nov 16 2018 libgstnrtp.so -rwxr-xr-x 1 root root 0 Aug 3 2023 libgstnvarguscamerasrc.so* -rwxr-xr-x 1 root root 0 Aug 3 2023 libgstnvcompositor.so* -rwxr-xr-x 1 root root 0 Aug 3 2023 libgstnvdrmvideosink.so* -rwxr-xr-x 1 root root 0 Aug 3 2023 libgstnveglglessink.so* -rwxr-xr-x 1 root root 0 Aug 3 2023 libgstnveglstreamsrc.so* -rwxr-xr-x 1 root root 0 Aug 3 2023 libgstnvegltransform.so* -rwxr-xr-x 1 root root 0 Aug 3 2023 libgstnvivafilter.so* -rwxr-xr-x 1 root root 0 Aug 3 2023 libgstnvjpeg.so* -rwxr-xr-x 1 root root 0 Aug 3 2023 libgstnvtee.so* -rwxr-xr-x 1 root root 0 Aug 3 2023 libgstnvv4l2camerasrc.so* -rwxr-xr-x 1 root root 0 Aug 3 2023 libgstnvvidconv.so* -rwxr-xr-x 1 root root 0 Aug 3 2023 libgstnvvideo4linux2.so* -rwxr-xr-x 1 root root 0 Aug 3 2023 libgstnvvideosink.so* -rwxr-xr-x 1 root root 0 Aug 3 2023 libgstnvvideosinks.so* -rw-r--r-- 1 root root 14616 Nov 28 2023 libgstofa.so -rw-r--r-- 1 root root 218136 Jul 26 2022 libgstogg.so
已尝试的方法
- 将本地Jetson机器上的对应插件文件复制到Docker容器替换空文件,无效
- 尝试同仓库的其他镜像(如pytorch镜像),问题依旧
解决方案
1. 重新拉取镜像并验证完整性
空文件多由镜像拉取中断或损坏导致,清理本地镜像后重新拉取:
docker rmi dustynv/deepstream:r35.4.1 docker pull dustynv/deepstream:r35.4.1
拉取完成后立即运行容器,检查插件文件大小是否恢复正常。
2. 手动重装GStreamer NVIDIA插件包
进入容器后执行以下命令,重新安装相关插件包:
apt update apt install --reinstall gstreamer1.0-nvidia* libgstreamer1.0-nvidia*
安装完成后再次检查插件文件大小。
3. 检查Docker存储驱动兼容性
Jetson设备上部分存储驱动可能出现文件写入异常,可尝试:
- 重启Docker服务:
systemctl restart docker - 切换存储驱动为aufs(需先安装依赖):
修改apt install aufs-tools/etc/docker/daemon.json添加配置:
重启Docker后重新拉取镜像。{ "storage-driver": "aufs" }
4. 替换为NVIDIA官方DeepStream镜像
若第三方镜像持续存在问题,使用NVIDIA官方匹配版本的镜像:
docker pull nvcr.io/nvidia/deepstream-l4t:6.3-r35.4.1
该镜像与Jetson R35.4.1版本完全适配,插件完整性更有保障。
内容的提问来源于stack exchange,提问作者Karim Dhrif
相关产品推荐
相关产品推荐

