atdgroup / gst-plugin-lumenera Goto Github PK
View Code? Open in Web Editor NEWGStreamer 1.0 element for live stream from a Lumenera Camera
License: GNU Lesser General Public License v3.0
GStreamer 1.0 element for live stream from a Lumenera Camera
License: GNU Lesser General Public License v3.0
lumenerasrc =========== What it is ---------- This is a source element for GStreamer 1.0 for live acquisition from a camera that uses the lucamapi SDK from Lumenera (https://www.lumenera.com/). Comments -------- Building -------- Building on linux is tested using the autogen script. Tested with liblucamapi.so.2.0 on Ubuntu 12.04 64 bit. First run autogen.sh $ chmod a+x autogen.sh $ ./autogen.sh This will use autotools to setup the dev environment, and complete with the line: "Now type 'make' to compile this module." You can do that. $ make $ sudo make install will put install the lo file for use with GStreamer, in /usr/local/lib/gstreamer-1.0 To use this in a pipeline you need to tell gstreamer where to find the .lo file. use: $ export GST_PLUGIN_PATH=/usr/local/lib/gstreamer-1.0 See the INSTALL file for advanced setup. To import into the Eclipse IDE, use "existing code as Makefile project", and the file EclipseSymbolsAndIncludePaths.xml is included here to import the library locations into the project (Properties -> C/C++ General -> Paths and symbols). Libraries --------- Download and install the lucamapi. Example script to intall the driver: chmod +x install_drivers.sh ./install_drivers.sh Example script to copy the required library files reuired to build: cd lib/x86-64 sudo cp liblucamapi.so.2.0 /usr/lib sudo ln -s /usr/lib/liblucamapi.so.2.0 /usr/lib/liblucamapi.so.2 sudo ln -s /usr/lib/liblucamapi.so.2.0 /usr/lib/liblucamapi.so The file src/Makefile.am contains pointers to where with lucamapi includes and libraries are expected to be. - Headers: /usr/include - Libraries: /usr/lib Example commands for installing the GStreamer development libraries on Ubuntu 12.04 sudo add-apt-repository -y ppa:gstreamer-developers/ppa sudo apt-get update sudo apt-get install -y dpkg-dev devscripts sudo apt-get install -y gstreamer1.0* sudo apt-get install -y libgstreamer-plugins-base1.0-dev echo "export GST_PLUGIN_PATH=/usr/local/lib/gstreamer-1.0" >> ~/.profile sudo apt-get install -y build-essential libgtk-3-dev lumenerasrc pipelines -------------------- gst-launch-1.0 lumenerasrc ! videoconvert ! xvimagesink gst-inspect-1.0 lumenerasrc Locations --------- Gstreamer plugin locations: - /usr/lib/i386-linux-gnu/gstreamer-1.0 - /usr/local/lib/gstreamer-1.0
Pretty far out of my depth here, but I think I have a few relevant details to hopefully resolve this. The module is being blacklisted. As far as I can tell, plugins now require some metadata that gstreamer is unhappy about not finding, and some capricious change requiring the plugin filename and contained class to be the same.
After installation, I deleted the gstreamer cache:
rm ~/.cache/gstreamer-1.0/registry.x86_64.bin
Then re-ran gst-inspect to rebuild the cache:
GST_DEBUG=4 gst-inspect-1.0 -b 2>&1 | grep lumen
0:00:00.001919645 1634 0x564dce907200 DEBUG GST_REGISTRY gstregistry.c:1348:gst_registry_scan_path_level:<registry0> file /usr/local/lib/gstreamer-1.0/liblumeneraplugin.so not yet in registry
0:00:00.001931132 1634 0x564dce907200 DEBUG GST_REGISTRY gstregistry.c:1153:gst_registry_scan_plugin_file: Starting plugin scanner for file /usr/local/lib/gstreamer-1.0/liblumeneraplugin.so
0:00:00.001996117 1634 0x564dce907200 DEBUG GST_REGISTRY gstregistry.c:1164:gst_registry_scan_plugin_file: Using scan-helper to load plugin /usr/local/lib/gstreamer-1.0/liblumeneraplugin.so
0:00:00.001267198 1636 0x561b6ffa0800 DEBUG GST_PLUGIN_LOADING gstpluginloader.c:719:do_plugin_load: Plugin scanner loading file /usr/local/lib/gstreamer-1.0/liblumeneraplugin.so. tag 0
0:00:00.001277580 1636 0x561b6ffa0800 DEBUG GST_PLUGIN_LOADING gstplugin.c:760:_priv_gst_plugin_load_file_for_registry: attempt to load plugin "/usr/local/lib/gstreamer-1.0/liblumeneraplugin.so"
0:00:00.003427337 1636 0x561b6ffa0800 DEBUG GST_PLUGIN_LOADING gstplugin.c:811:_priv_gst_plugin_load_file_for_registry: Could not find symbol 'gst_plugin_lumeneraplugin_get_desc', falling back to gst_plugin_desc
0:00:00.003439927 1636 0x561b6ffa0800 DEBUG GST_PLUGIN_LOADING gstplugin.c:818:_priv_gst_plugin_load_file_for_registry: Could not find plugin entry point in "/usr/local/lib/gstreamer-1.0/liblumeneraplugin.so"
0:00:00.007642603 1634 0x564dce907200 DEBUG GST_PLUGIN_LOADING gstpluginloader.c:358:plugin_loader_create_blacklist_plugin: Adding blacklist plugin 'liblumeneraplugin.so'
0:00:00.007655233 1634 0x564dce907200 DEBUG GST_REGISTRY gstregistry.c:466:gst_registry_add_plugin:<registry0> adding plugin 0x564dce92c190 for filename "/usr/local/lib/gstreamer-1.0/liblumeneraplugin.so"
0:00:00.851190012 1634 0x564dce907200 DEBUG GST_REGISTRY gstregistrychunks.c:487:_priv_gst_registry_chunks_save_plugin: Found 0 features in plugin "liblumeneraplugin.so"
liblumeneraplugin.so
Happy to provide any other diagnostic to get this going.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.