如何解决没有这样的元素或插件'v4l2h264enc'
我正在尝试从使用this Dockerfile构建的Docker容器中使用GStreamer。
安装正常,我可以运行GStreamer。但是,我无法将元素v4l2h264enc
与不存在的错误一起使用。当我运行gst-inspect时,我得到:
root@95e1ff54cca5:~# gst-inspect-1.0 v4l2h264enc
No such element or plugin 'v4l2h264enc'
但是v4l2src
可以正常工作:
root@95e1ff54cca5:~# gst-inspect-1.0 v4l2src
Factory Details:
Rank primary (256)
Long-name Video (video4linux2) Source
Klass Source/Video
Description Reads frames from a Video4Linux2 device
Author Edgard Lima <edgard.lima@gmail.com>,Stefan Kost <ensonic@users.sf.net>
Plugin Details:
Name video4linux2
Description elements for Video 4 Linux
Filename /usr/lib/arm-linux-gnueabihf/gstreamer-1.0/libgstvideo4linux2.so
Version 1.18.0
License LGPL
Source module gst-plugins-good
Source release date 2020-09-08
Binary package GStreamer Good Plug-ins source release
Origin URL Unknown package origin
我已经检查了build
的{{1}}文件夹,并且我认为gst-plugins-good
库已编译(有一个名为v4l2h265enc
的文件)。我试图将文件所在的文件夹添加到gstv4l2h265enc.c.o
和LD_LIBRARY_PATH
上,但是没有用。
解决方法
我在使用gstreamer的raspberrypi 4上遇到了同样的问题,并通过启用内核端支持(通常称为“ v4l2m2m”)解决了该问题。
您可以检查它是否已激活,因为除了/ dev / video0之外,您还获得了新的/ dev / video字符设备文件。 (对我来说,这是3个新文件/ dev / video [10,11,12])。
检查是否已加载内核模块或使用以下模块加载它:
modprobe bcm2835-codec
然后gst-inspect-1.0 video4linux2
应该向您显示您要查找的元素,例如v4l2h264dec,v4l2h264enc,v4l2vp8dec等。(有时gst-inspect-1.0不会真正重试,但依赖于可能不会反映最近的更改:删除缓存可能会有所帮助。在我的安装中,我会rm ~/.cache/gstreamer-1.0/registry.armv8-a.bin
)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。