【发布时间】:2019-07-10 22:42:55
【问题描述】:
我正在尝试运行测试管道:
cv::VideoCapture cap = cv::VideoCapture(" autovideosrc ! videoconvert ! appsink0 ", cv::CAP_GSTREAMER);
但它不会启动并返回下一个调试信息(见下文)。我使用mingw32 7.3.0编译了opencv。 Gstreamer 的版本也是 32 位的。有什么问题? win7、mingw 7.3.0、opencv 4.1.0、gstreamer 1.16.0
0:00:00.040498363 6904 1F44A7C0 WARN GST_PLUGIN_LOADING gstplugin.c:793:_priv_gst_plugin_load_file_for_registry: module_open failed: 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgstdecklink.dll': Не найдена указанная процедура.
(untitled2.exe:6904): GStreamer-WARNING **: 02:29:33.412: Failed to load plugin 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgstdecklink.dll': 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgstdecklink.dll':
The specified procedure was not found.
0:00:00.061620856 6904 1F44A7C0 WARN GST_PLUGIN_LOADING gstplugin.c:793:_priv_gst_plugin_load_file_for_registry: module_open failed: 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgstopenh264.dll': Не найдена указанная процедура.
(untitled2.exe:6904): GStreamer-WARNING **: 02:29:33.432: Failed to load plugin 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgstopenh264.dll': 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgstopenh264.dll':
The specified procedure was not found.
0:00:00.072668621 6904 1F44A7C0 WARN GST_PLUGIN_LOADING gstplugin.c:793:_priv_gst_plugin_load_file_for_registry: module_open failed: 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgstsoundtouch.dll': Не найдена указанная процедура.
(untitled2.exe:6904): GStreamer-WARNING **: 02:29:33.442: Failed to load plugin 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgstsoundtouch.dll': 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgstsoundtouch.dll':
The specified procedure was not found.
0:00:00.088487674 6904 1F44A7C0 WARN GST_PLUGIN_LOADING gstplugin.c:793:_priv_gst_plugin_load_file_for_registry: module_open failed: 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgstsrt.dll': Не найдена указанная процедура.
(untitled2.exe:6904): GStreamer-WARNING **: 02:29:33.465: Failed to load plugin 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgstsrt.dll': 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgstsrt.dll':
The specified procedure was not found.
0:00:00.089972159 6904 1F44A7C0 WARN GST_PLUGIN_LOADING gstplugin.c:793:_priv_gst_plugin_load_file_for_registry: module_open failed: 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgsttaglib.dll': Не найдена указанная процедура.
(untitled2.exe:6904): GStreamer-WARNING **: 02:29:33.465: Failed to load plugin 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgsttaglib.dll': 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgsttaglib.dll':
The specified procedure was not found.
0:00:00.097988553 6904 1F44A7C0 WARN GST_PLUGIN_LOADING gstplugin.c:793:_priv_gst_plugin_load_file_for_registry: module_open failed: 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgstwebrtcdsp.dll': Не найдена указанная процедура.
(untitled2.exe:6904): GStreamer-WARNING **: 02:29:33.475: Failed to load plugin 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgstwebrtcdsp.dll': 'E:\gstreamer\1.0\x86\lib\gstreamer-1.0\libgstwebrtcdsp.dll':
The specified procedure was not found.
0:00:00.107822720 6904 1F44A7C0 WARN filesrc gstfilesrc.c:533:gst_file_src_start:<source> error: No such file "C:\Users\Shmeisser\Documents\build-untitled2-Desktop_Qt_5_9_4_MinGW_32bit-Debug\ autovideosrc ! videoconvert ! appsink0"
0:00:00.107911655 6904 1F44A7C0 WARN basesrc gstbasesrc.c:3469:gst_base_src_start:<source> error: Failed to start
0:00:00.108341459 6904 1F44A7C0 WARN filesrc gstfilesrc.c:533:gst_file_src_start:<source> error: No such file "C:\Users\Shmeisser\Documents\build-untitled2-Desktop_Qt_5_9_4_MinGW_32bit-Debug\ autovideosrc ! videoconvert ! appsink0"
0:00:00.108391029 6904 1F44A7C0 WARN basesrc gstbasesrc.c:3469:gst_base_src_start:<source> error: Failed to start
0:00:00.108489004 6904 1F44A7C0 WARN filesrc gstfilesrc.c:533:gst_file_src_start:<source> error: No such file "C:\Users\Shmeisser\Documents\build-untitled2-Desktop_Qt_5_9_4_MinGW_32bit-Debug\ autovideosrc ! videoconvert ! appsink0"
0:00:00.108535367 6904 1F44A7C0 WARN basesrc gstbasesrc.c:3469:gst_base_src_start:<source> error: Failed to start
0:00:00.108575898 6904 1F44A7C0 WARN basesrc gstbasesrc.c:3824:gst_base_src_activate_push:<source> Failed to start in push mode
0:00:00.108603015 6904 1F44A7C0 WARN GST_PADS gstpad.c:1142:gst_pad_set_active:<source:src> Failed to activate pad
【问题讨论】:
-
您是如何构建/安装 GStreamer 的?在增加构建具有 GStreamer 支持的 OpenCV 并与之集成的复杂性之前,您甚至可以通过命令行中的
gst-launch-1.0.exe实用程序成功地测试 GStreamer 吗?无论如何,您的错误是抱怨无法加载插件。您是否还构建/安装了各种好/坏/丑插件集? -
@rob3c 我从官方网站为 mingw32 安装了 gstreamer 和 gstreamer-devel。在安装过程中,我选择了所有软件包,所以我安装了我能安装的所有东西。是的,我无法使用 opencv 运行的所有管道都可以使用 gst-launch-1.0.exe 成功运行
-
你的路径上有那个 lib 文件夹吗?
libstdc++-6.dll在您的系统上在哪里?如果将它复制到那些失败的库所在的位置会发生什么?如果 dll 或其任何依赖项无法加载,则 dll 将无法加载。在常规窗口中,您可以使用gflags.exe或等效的注册表设置来调试库加载失败,但我不确定 mingw 下的 gflags 会发生什么。
标签: opencv mingw gstreamer gstreamer-1.0