【已解决】 GStreamer找不到编码器

问题:GStreamer 在加载某些插件时失败

bash 复制代码
xxx@ubuntu:/usr/lib/aarch64-linux-gnu/gstreamer-1.0$ gst-inspect-1.0 | grep h264  

(gst-plugin-scanner:936609): GStreamer-WARNING **: : Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvarguscamerasrc.so': libnvargus_socketclient.so: cannot open shared object file: No such file or directory

(gst-plugin-scanner:936609): GStreamer-WARNING **: : Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvidconv.so': libnvbufsurftransform.so.1.0.0: cannot open shared object file: No such file or directory

(gst-plugin-scanner:936609): GStreamer-WARNING **: : Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvcompositor.so': libnvbufsurftransform.so.1.0.0: cannot open shared object file: No such file or directory

(gst-plugin-scanner:936609): GStreamer-WARNING **: : Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvjpeg.so': libnvjpeg.so: cannot open shared object file: No such file or directory

(gst-plugin-scanner:936609): GStreamer-WARNING **: : Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvivafilter.so': libnvbufsurftransform.so.1.0.0: cannot open shared object file: No such file or directory

(gst-plugin-scanner:936609): GStreamer-WARNING **: : Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideo4linux2.so': libnvbufsurftransform.so.1.0.0: cannot open shared object file: No such file or directory

解决:

这个错误信息表明 GStreamer 在加载某些插件时失败,具体是因为在静态线程局部存储(TLS)块中无法分配内存。以下是一些可能的解决方案:

检查系统资源:确保你的系统有足够的内存和资源。如果系统资源紧张,可以尝试释放一些内存或重启计算机。

1.更新软件包:

确保你的操作系统及所有相关的软件包都是最新版本。你可以通过以下命令更新 Debian/Ubuntu 系统中的软件包:

bash 复制代码
sudo apt update
sudo apt upgrade

2.重新安装 GStreamer 和相关插件:

可能某些库文件损坏或者不兼容,你可以尝试重新安装 GStreamer 和它的插件。

bash 复制代码
sudo apt remove --purge gstreamer*
sudo apt install gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly

3.设置环境变量:尝试增加 LD_PRELOAD 环境变量来使用特定的库,例如:

bash 复制代码
export LD_PRELOAD=/usr/lib/aarch64-linux-gnu/libgomp.so.1

然后再运行 GStreamer 应用。

4.检查 TLS 配置:在某些情况下,如果使用的是特定编译选项或链接到不同的 C 库,可能会导致 TLS 问题。请确保编译时没有与线程相关的不兼容选项。

相关推荐
今夕资源网43 分钟前
OmniVoice 今夕整合包 本地语音TTS断网可用 修复了一些BUG 优化生成速度 极速秒生成
bug·语音克隆·omnivoice·断网可用·本地语音tts·语音tts
水饺编程11 小时前
第1章:下载 Linux 0.12 内核
linux·c语言·汇编·ubuntu
水饺编程11 小时前
第1章:开发环境搭建,在 Windows 中安装 Git
linux·c语言·汇编·git·ubuntu
сокол14 小时前
【Python-基础-环境搭建】Ubuntu Python 开发环境搭建:编译、pipenv、pyenv、远程连接
开发语言·python·ubuntu
刘胡子大叔1 天前
1Panel 部署 ThinkPHP8 踩坑实录
linux·ubuntu
刘胡子大叔1 天前
grep -n 行号辨换行
ubuntu
zhangrelay1 天前
ubuntu图形化和命令行查看硬件参数方式汇总-Surface Go
linux·笔记·学习·ubuntu
MicrosoftCloud1 天前
用户权限 02|/etc/passwd、/etc/shadow、/etc/group:三个文件讲透 Linux 用户体系
linux·运维·ubuntu·用户管理·权限·useradd
zhangrelay2 天前
机械臂末端规划智能模型的误区演示
linux·笔记·学习·ubuntu·ros2
水饺编程2 天前
第1章,了解乌班图环境,使用浏览器和邮箱
c语言·汇编·ubuntu