Anaconda Gstreamer Gst包装缺少“jpegenc”

2024-10-04 11:36:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我最近一直在python中使用gstreamer。我在一个Python虚拟环境下工作

我遇到了一个问题,jpegenc似乎是一个无法访问的元素。
gst_parse_error: no element "jpegenc" (1)

根据请求,整个错误都被忽略了

File "---/gstreamer_test.py", line 15, in <module>
pipeline = Gst.parse_launch("v4l2src ! video/x-raw, framerate=30/1 , width=640,height=480 ! jpegenc ! appsink name=sink")
gi.repository.GLib.Error: gst_parse_error: no element "jpegenc" (1)

Gst inspect确认anaconda环境中未列出jpegenc。也就是说,如果我停用anaconda环境,正常的命令行gst inspect可以找到jepgenc

有人知道一个在Python内快速修复杰普根的方法吗?宁愿不从源头上构建

Python版本

Python 3.8.6 | packaged by conda-forge

Python版本

conda 4.9.2

软件包版本

gst-plugins-base          1.14.5               h0935bb2_2    conda-forge
gst-plugins-good          1.14.5               h08bb679_2    conda-forge
gstreamer                 1.18.3               h3560a44_0    conda-forge

Tags: no版本环境parsepluginserroranacondaelement
1条回答
网友
1楼 · 发布于 2024-10-04 11:36:00

目前我已经找到了一个有效的解决办法。然而,它并没有扩展到我希望涵盖的所有用例。我的网络摄像头可以生成mjpeg,它已经被编码为jpeg。因此,您所需要做的就是指定要从源中使用的输出类型,如下所示

pipeline = Gst.parse_launch("v4l2src ! image/jpeg,framerate=30/1 , width=640,height=480 ! appsink name=sink")

这意味着这仍然不能解决没有本机jpeg编码的相机的问题,或者对于我想要对传入的非jpeg流进行转码的情况

相关问题 更多 >