Closed ADRAndre closed 3 years ago
Can you increase the debugging level and share that? Before pleorasrc add --gst-debug=pleora*:9, or set the environment variable GST_DEBUG. Also what is the pixel format and resolution?
Hi Josh, thanks for helping.
The image below shows the device information you asked for.
And here is the output from powershell with --gst-debug=pleora*:9 added:
gst-launch-1.0 --gst-debug=pleora*:9 pleorasrc ! autovideoconvert ! autovideosink
0:00:00.071254500 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:1391:gst_pleorasrc_get_caps:<pleorasrc0> The caps before filtering are video/x-bayer, format=(string){ bggr16, grbg16, rggb16, gbrg16 }, endianness=(int)1234, bpp=(int){ 16, 14, 12, 10 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-bayer, format=(string){ bggr, grbg, rggb, gbrg }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw, format=(string){ GRAY16_LE, GRAY16_BE, GRAY8, UYVY, YUY2, RGB }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
0:00:00.084416500 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:1399:gst_pleorasrc_get_caps:<pleorasrc0> The caps after filtering are video/x-bayer, format=(string){ bggr16, grbg16, rggb16, gbrg16 }, endianness=(int)1234, bpp=(int){ 16, 14, 12, 10 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-bayer, format=(string){ bggr, grbg, rggb, gbrg }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw, format=(string){ GRAY16_LE, GRAY16_BE, GRAY8, UYVY, YUY2, RGB }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
0:00:00.096487500 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:1391:gst_pleorasrc_get_caps:<pleorasrc0> The caps before filtering are video/x-bayer, format=(string){ bggr16, grbg16, rggb16, gbrg16 }, endianness=(int)1234, bpp=(int){ 16, 14, 12, 10 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-bayer, format=(string){ bggr, grbg, rggb, gbrg }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw, format=(string){ GRAY16_LE, GRAY16_BE, GRAY8, UYVY, YUY2, RGB }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
0:00:00.110453300 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:1399:gst_pleorasrc_get_caps:<pleorasrc0> The caps after filtering are video/x-bayer, format=(string){ bggr16, grbg16, rggb16, gbrg16 }, endianness=(int)1234, bpp=(int){ 16, 14, 12, 10 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-bayer, format=(string){ bggr, grbg, rggb, gbrg }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw, format=(string){ GRAY16_LE, GRAY16_BE, GRAY8, UYVY, YUY2, RGB }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
Setting pipeline to PAUSED ...
0:00:00.312221600 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:1258:gst_pleorasrc_start:<pleorasrc0> start
0:00:00.362993500 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:567:gst_pleorasrc_find_device:<pleorasrc0> Finding device based on index: 0
0:00:01.409763500 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:670:gst_pleorasrc_find_device:<pleorasrc0> Info for device that will be opened:
0:00:01.413128400 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:447:gst_pleorasrc_print_device_info:<pleorasrc0> Found device 'NTx-Mini PT01-PBXMX1-32XG25 00:11:1c:04:4d:39 [192.168.6.122]'
0:00:01.417002600 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:475:gst_pleorasrc_print_device_info:<pleorasrc0> Device found on network interface 'Realtek Gaming GbE Family Controller', MAC: b4:2e:99:85:2c:3a, IP: 192.168.6.97, Subnet: 255.255.255.0
0:00:01.421267200 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:489:gst_pleorasrc_print_device_info:<pleorasrc0> GEV device: MAC: 00:11:1c:04:4d:39, IP: 192.168.6.122, S/N:
0:00:01.424868100 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:831:gst_pleorasrc_open_device:<pleorasrc0> Trying to connect to device as controller
0:00:01.536259000 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:840:gst_pleorasrc_open_device:<pleorasrc0> Connected to device as controller
0:00:01.539824600 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:890:gst_pleorasrc_open_stream:<pleorasrc0> Using connection ID '192.168.6.122'
0:00:01.547615800 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:899:gst_pleorasrc_open_stream:<pleorasrc0> Opening GEV stream in unicast mode
0:00:01.563043900 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:931:gst_pleorasrc_setup_stream:<pleorasrc0> Stream created for device
0:00:01.579488100 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:967:gst_pleorasrc_setup_stream:<pleorasrc0> Packet size is currently 1476
0:00:01.584304000 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:1266:gst_pleorasrc_start:<pleorasrc0> Starting pipeline
0:00:01.588198600 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:1282:gst_pleorasrc_start:<pleorasrc0> Opened as controller, so send AcquisitionStart command
0:00:01.592064800 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:1296:gst_pleorasrc_start:<pleorasrc0> Lock streaming-related parameters
0:00:01.646367100 20008 00000000030FD870 LOG pleorasrc gstpleorasrc.cpp:1221:gst_pleorasrc_pixel_type_to_gst_caps_string: Matched pixel type 17301512 to caps video/x-bayer, format=(string)grbg
0:00:01.651016800 20008 00000000030FD870 DEBUG pleorasrc gstpleorasrc.cpp:1411:gst_pleorasrc_set_caps:<pleorasrc0> The caps being set are video/x-bayer, format=(string)grbg, width=(int)640, height=(int)480, framerate=(fraction)30/1
Pipeline is live and does not need PREROLL ...
0:00:01.677275500 20008 00000000030F7840 DEBUG pleorasrc gstpleorasrc.cpp:1391:gst_pleorasrc_get_caps:<pleorasrc0> The caps before filtering are video/x-bayer, format=(string)grbg, width=(int)640, height=(int)480, framerate=(fraction)30/1
Setting pipeline to PLAYING ...
0:00:01.687404200 20008 00000000030F7840 DEBUG pleorasrc gstpleorasrc.cpp:1399:gst_pleorasrc_get_caps:<pleorasrc0> The caps after filtering are video/x-bayer, format=(string)grbg, width=(int)640, height=(int)480, framerate=(fraction)30/1
New clock: GstSystemClock
0:00:01.695192700 20008 00000000030F7840 LOG pleorasrc gstpleorasrc.cpp:1595:gst_pleorasrc_create:<pleorasrc0> create
0:00:01.699223700 20008 00000000030F7840 LOG pleorasrc gstpleorasrc.cpp:1629:gst_pleorasrc_create:<pleorasrc0> Row stride not aligned, copying 640 -> 0
**
ERROR:D:\gst-plugins-vision-1.17.1\sys\pleora\gstpleorasrc.cpp:1639:gst_pleorasrc_create: assertion failed: (minfo.size >= src->pleora_stride * src->height)
Are you sure you're running the latest code? I fixed a very similar bug in https://github.com/joshdoe/gst-plugins-vision/issues/44
I was working with 1.5.92 pre-release, actually looks like it was released before you fixed #44 so probably the issue.
I then tried to compile your code from the master branch but,
when I try to run cmake -G "Visual Studio 15 2017 Win64" ..
The following warnings appear at the end of the output:
-- Configuring done
WARNING: Target "gstgentl" requests linking to directory "C:/gstreamer/1.0/msvc_x86_64/include/gstreamer-1.0". Targets may link only to libraries. CMake is dropping the item.
WARNING: Target "gstgentl" requests linking to directory "C:/gstreamer/1.0/msvc_x86_64/include/gstreamer-1.0". Targets may link only to libraries. CMake is dropping the item.
WARNING: Target "gstgentl" requests linking to directory "C:/gstreamer/1.0/msvc_x86_64/include/gstreamer-1.0". Targets may link only to libraries. CMake is dropping the item.
WARNING: Target "gstgentl" requests linking to directory "C:/gstreamer/1.0/msvc_x86_64/include/gstreamer-1.0". Targets may link only to libraries. CMake is dropping the item.
WARNING: Target "gstgentl" requests linking to directory "C:/gstreamer/1.0/msvc_x86_64/include/gstreamer-1.0". Targets may link only to libraries. CMake is dropping the item.
WARNING: Target "gstgentl" requests linking to directory "C:/gstreamer/1.0/msvc_x86_64/include/gstreamer-1.0". Targets may link only to libraries. CMake is dropping the item.
WARNING: Target "gstgentl" requests linking to directory "C:/gstreamer/1.0/msvc_x86_64/include/gstreamer-1.0". Targets may link only to libraries. CMake is dropping the item.
WARNING: Target "gstgentl" requests linking to directory "C:/gstreamer/1.0/msvc_x86_64/include/gstreamer-1.0". Targets may link only to libraries. CMake is dropping the item.
-- Generating done
-- Build files have been written to: C:/gst-plugins-vision-master/build
And, when I try to install with cmake --build . --target INSTALL
I get a bunch or errors:
Microsoft (R) Build Engine version 15.9.21+g9802d43bc3 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.
gstbayerutils.vcxproj -> C:\gst-plugins-vision-master\build\gst\bayerutils\Debug\libgstbayerutils.dll
gstextractcolor.vcxproj -> C:\gst-plugins-vision-master\build\gst\extractcolor\Debug\libgstextractcolor.dll
gstgentl.vcxproj -> C:\gst-plugins-vision-master\build\sys\gentl\Debug\libgstgentl.dll
gstmisb.vcxproj -> C:\gst-plugins-vision-master\build\gst\misb\Debug\libgstmisb.dll
gstpleora6.vcxproj -> C:\gst-plugins-vision-master\build\sys\pleora\Debug\libgstpleora6.dll
gstselect.vcxproj -> C:\gst-plugins-vision-master\build\gst\select\Debug\libgstselect.dll
gstvideoadjust.vcxproj -> C:\gst-plugins-vision-master\build\gst\videoadjust\Debug\libgstvideoadjust.dll
-- Install configuration: "Debug"
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstbayerutils.pdb
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstbayerutils.dll
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstextractcolor.pdb
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstextractcolor.dll
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstmisb.pdb
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstmisb.dll
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstselect.pdb
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstselect.dll
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstvideoadjust.pdb
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstvideoadjust.dll
CMake Error at sys/gentl/cmake_install.cmake:36 (file):
file INSTALL cannot find
"C:/gst-plugins-vision-master/build/sys/gentl/Debug/gstgentl.pdb": No error.
Call Stack (most recent call first):
sys/cmake_install.cmake:37 (include)
cmake_install.cmake:40 (include)
Microsoft (R) Build Engine version 15.9.21+g9802d43bc3 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.
gstbayerutils.vcxproj -> C:\gst-plugins-vision-master\build\gst\bayerutils\Debug\libgstbayerutils.dll
gstextractcolor.vcxproj -> C:\gst-plugins-vision-master\build\gst\extractcolor\Debug\libgstextractcolor.dll
gstgentl.vcxproj -> C:\gst-plugins-vision-master\build\sys\gentl\Debug\libgstgentl.dll
gstmisb.vcxproj -> C:\gst-plugins-vision-master\build\gst\misb\Debug\libgstmisb.dll
gstpleora6.vcxproj -> C:\gst-plugins-vision-master\build\sys\pleora\Debug\libgstpleora6.dll
gstselect.vcxproj -> C:\gst-plugins-vision-master\build\gst\select\Debug\libgstselect.dll
gstvideoadjust.vcxproj -> C:\gst-plugins-vision-master\build\gst\videoadjust\Debug\libgstvideoadjust.dll
-- Install configuration: "Debug"
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstbayerutils.pdb
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstbayerutils.dll
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstextractcolor.pdb
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstextractcolor.dll
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstmisb.pdb
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstmisb.dll
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstselect.pdb
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstselect.dll
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstvideoadjust.pdb
-- Up-to-date: C:/Program Files/gst-plugins-vision/gstreamer-1.0/libgstvideoadjust.dll
CMake Error at sys/gentl/cmake_install.cmake:36 (file):
file INSTALL cannot find
"C:/gst-plugins-vision-master/build/sys/gentl/Debug/gstgentl.pdb": No error.
Call Stack (most recent call first):
sys/cmake_install.cmake:37 (include)
cmake_install.cmake:40 (include)
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: The command "setlocal [C:\gst-plugins-vision-master\build\INSTALL.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: "C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=Debug -P cmake_install.cmake [C:\gst-plugins- vision-master\build\INSTALL.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\gst-plugins-vision-master\build\INSTALL.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: :cmEnd [C:\gst-plugins-vision-master\build\INSTALL.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone [C:\gst-plugins-vision-master\build\INS TALL.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: :cmErrorLevel [C:\gst-plugins-vision-master\build\INSTALL.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: exit /b %1 [C:\gst-plugins-vision-master\build\INSTALL.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: :cmDone [C:\gst-plugins-vision-master\build\INSTALL.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: if %errorlevel% neq 0 goto :VCEnd [C:\gst-plugins-vision-master\build\INSTALL.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: :VCEnd" exited with code 1. [C:\gst-plugins-vision-master\build\INSTALL.vcxproj]
I've got the environment variables set as described in the readme:
and I've left CMAKE_INSTALL_PREFIX to the default
@mkaivs reported similar problem on Linux. https://github.com/joshdoe/gst-plugins-vision/issues/55
You can disable gentl as done in #55, but I also just pushed some changes including a fix for this in 91131aeb7a273637c23c3b33fc4a0885494bad05.
so I tried installing 91131ae as suggested and got the same issues..
Disabling gentle as in #55 worked though and everything built and installed without errors but, now when I try to run:
gst-inspect-1.0.exe pleorasrc
I get:
(gst-inspect-1.0:1676): GStreamer-WARNING **: 10:44:16.410: Failed to load plugin 'D:\gstreamer\1.0\x86_64\lib\gstreamer-1.0\libgstpleora6.dll': 'D:\gstreamer\1.0\x86_64\lib\gstreamer-1.0\libgstpleora6.dll': The specified module could not be found.
(gst-inspect-1.0:1676): GStreamer-WARNING **: 10:44:16.455: Failed to load plugin 'D:\gstreamer\1.0\x86_64\lib\gstreamer-1.0\libgstpleora6.dll': 'D:\gstreamer\1.0\x86_64\lib\gstreamer-1.0\libgstpleora6.dll': The specified module could not be found. No such element or plugin 'pleorasrc'
I was reading through #50 which seemed to have similar issues and there you suggested running
gst-inspect-1.0.exe --gst-debug=*:3 pleorasrc
which produces:
0:00:00.039590300 6348 00000000031E8C60 WARN GST_PLUGIN_LOADING gstplugin.c:793:_priv_gst_plugin_load_file_for_registry: module_open failed: 'D:\gstreamer\1.0\x86_64\lib\gstreamer-1.0\libgstpleora6.dll': The specified module could not be found.
(gst-inspect-1.0:6348): GStreamer-WARNING **: 10:46:15.014: Failed to load plugin 'D:\gstreamer\1.0\x86_64\lib\gstreamer-1.0\libgstpleora6.dll': 'D:\gstreamer\1.0\x86_64\lib\gstreamer-1.0\libgstpleora6.dll': The specified module could not be found. 0:00:00.076703800 6348 00000000031E8C60 WARN GST_PLUGIN_LOADING gstplugin.c:793:_priv_gst_plugin_load_file_for_registry: module_open failed: 'D:\gstreamer\1.0\x86_64\lib\gstreamer-1.0\libgstpleora6.dll': The specified module could not be found.
(gst-inspect-1.0:6348): GStreamer-WARNING **: 10:46:15.052: Failed to load plugin 'D:\gstreamer\1.0\x86_64\lib\gstreamer-1.0\libgstpleora6.dll': 'D:\gstreamer\1.0\x86_64\lib\gstreamer-1.0\libgstpleora6.dll': The specified module could not be found. No such element or plugin 'pleorasrc'
You also suggested looking at the dependencies graph and I found this tool
which produced the following for libgstpleora6.dll:
I googled the libraries it's missing and they are the ebus_sdk device libraries which are definitely not in PUREGEV_ROOT as far as I can tell. How do tell pleorasrc where to look?
Dependencies Tool: https://github.com/lucasg/Dependencies
Good work so far. You need to add the directory containing those Pleora DLLs to your path, which I usually do via a batch file, but you can do numerous ways.
It works! Thankyou for your help Josh
In the end I fixed the last issue by reinstalling ebusSDK which set up my path variables for me. Looking at PATH now I see it has added:
C:\Program Files (x86)\Common Files\Pleora\eBUS SDK C:\Program Files\Common Files\Pleora\eBUS SDK
Great, glad you had success. Documentation certainly needs improvement.
Hi, Please help, I'm trying to access a GEV stream from a pleora iPORT NTx-Mini Embedded Video Interface using pleorasrc in windows 10. I can view the stream through eBUS player and when I connect to the camera through eBUS player I get a device busy message from pleorasrc so it's definitely looking in the right place.
when I try to run pleorasrc, I get the following error:
gst-launch-1.0 pleorasrc ! autovideoconvert ! autovideosink
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
**
ERROR:D:\gst-plugins-vision-1.17.1\sys\pleora\gstpleorasrc.cpp:1639:gst_pleorasrc_create: assertion failed: (minfo.size >= src->pleora_stride * src->height)