<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Ok I checked a bit more and it seems everything could be set up
correctly but `<span class="pl-en">NDIlib_initialize</span>` just
returns false. Did you just change the machine where you run the
docker? People on forums talk about CPU incompatibility
<a class="moz-txt-link-freetext" href="https://forums.newtek.com/threads/linux-ndi-sdk-examples-broken-on-amd-machine.164762/">https://forums.newtek.com/threads/linux-ndi-sdk-examples-broken-on-amd-machine.164762/</a><br>
<br>
You could google more about issues around that call and try to
find some documentation around that call from newtek. What checks
exactly do they do. <br>
</p>
<p>If you really need to solve this and it seems that NDI is
proprietary software you could try to reverse that function in
library (Ghidra) and debug it to see where it fails.</p>
<p><br>
</p>
<div class="moz-cite-prefix">On 9/6/21 12:53 AM, Marc wrote:<br>
</div>
<blockquote type="cite"
cite="mid:39e90a4d99bf4e649c6e9537ba543739@f1-outsourcing.eu">
<pre class="moz-quote-pre" wrap="">
Yes but the same docker image works on centos7 host, and the binaries from the sdk seem to work. This ldd shows it finds the libndi.so.5 => /usr/local/lib/libndi.so.5
10 pub fn initialize() -> bool {
11 unsafe { NDIlib_initialize() }
12 }
13
38
39 fn plugin_init(plugin: &gst::Plugin) -> Result<(), glib::BoolError> {
40 if !ndi::initialize() {
41 return Err(glib::glib_bool_error!("Cannot initialize NDI"));
42 }
43
44 device_provider::register(plugin)?;
45
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">Seems like you got your next hint `
Cannot initialize NDI
`
Check source code
<a class="moz-txt-link-freetext" href="https://github.com/teltek/gst-plugin-ndi/blob/master/src/lib.rs#L41">https://github.com/teltek/gst-plugin-ndi/blob/master/src/lib.rs#L41</a>
<a class="moz-txt-link-freetext" href="https://github.com/teltek/gst-plugin-ndi/blob/master/src/ndi.rs#L10">https://github.com/teltek/gst-plugin-ndi/blob/master/src/ndi.rs#L10</a>
Seems like you are missing ndi libs in docker.
<a class="moz-txt-link-freetext" href="https://github.com/teltek/gst-plugin-ndi#compilation-of-the-ndi-element">https://github.com/teltek/gst-plugin-ndi#compilation-of-the-ndi-element</a>
Follow to set up NDI libraries
On 9/6/21 12:37 AM, Marc wrote:
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">That generates 13000 lines, this a tail
0:00:00.216604350 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1341:gst_registry_scan_path_level:<registry0>^[[00m
marking plugin 0x1514190 as registered as /usr/local/lib64/gstreamer-
1.0/libgstrawparse.so
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216623956 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1300:gst_registry_scan_path_level:<registry0>^[[00m file
/usr/local/lib64/gstreamer-1.0/libgstsubparse.so looks like a possible
module
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216637331 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1338:gst_registry_scan_path_level:<registry0>^[[00m file
/usr/local/lib64/gstreamer-1.0/libgstsubparse.so cached
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216649791 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1341:gst_registry_scan_path_level:<registry0>^[[00m
marking plugin 0x15142c0 as registered as /usr/local/lib64/gstreamer-
1.0/libgstsubparse.so
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216669474 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1300:gst_registry_scan_path_level:<registry0>^[[00m file
/usr/local/lib64/gstreamer-1.0/libgsttcp.so looks like a possible module
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216682674 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1338:gst_registry_scan_path_level:<registry0>^[[00m file
/usr/local/lib64/gstreamer-1.0/libgsttcp.so cached
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216695410 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1341:gst_registry_scan_path_level:<registry0>^[[00m
marking plugin 0x15143f0 as registered as /usr/local/lib64/gstreamer-
1.0/libgsttcp.so
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216715182 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1300:gst_registry_scan_path_level:<registry0>^[[00m file
/usr/local/lib64/gstreamer-1.0/libgsttypefindfunctions.so looks like a
possible module
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216728744 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1338:gst_registry_scan_path_level:<registry0>^[[00m file
/usr/local/lib64/gstreamer-1.0/libgsttypefindfunctions.so cached
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216741522 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1341:gst_registry_scan_path_level:<registry0>^[[00m
marking plugin 0x1514520 as registered as /usr/local/lib64/gstreamer-
1.0/libgsttypefindfunctions.so
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216760554 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1300:gst_registry_scan_path_level:<registry0>^[[00m file
/usr/local/lib64/gstreamer-1.0/libgstvideoconvert.so looks like a
possible module
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216773828 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1338:gst_registry_scan_path_level:<registry0>^[[00m file
/usr/local/lib64/gstreamer-1.0/libgstvideoconvert.so cached
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216802924 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1341:gst_registry_scan_path_level:<registry0>^[[00m
marking plugin 0x1514650 as registered as /usr/local/lib64/gstreamer-
1.0/libgstvideoconvert.so
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216824867 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1300:gst_registry_scan_path_level:<registry0>^[[00m file
/usr/local/lib64/gstreamer-1.0/libgstvideorate.so looks like a possible
module
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216838682 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1338:gst_registry_scan_path_level:<registry0>^[[00m file
/usr/local/lib64/gstreamer-1.0/libgstvideorate.so cached
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216851378 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1341:gst_registry_scan_path_level:<registry0>^[[00m
marking plugin 0x1514780 as registered as /usr/local/lib64/gstreamer-
1.0/libgstvideorate.so
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216871213 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1300:gst_registry_scan_path_level:<registry0>^[[00m file
/usr/local/lib64/gstreamer-1.0/libgstvideoscale.so looks like a possible
module
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216884784 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1338:gst_registry_scan_path_level:<registry0>^[[00m file
/usr/local/lib64/gstreamer-1.0/libgstvideoscale.so cached
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216897419 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1341:gst_registry_scan_path_level:<registry0>^[[00m
marking plugin 0x15148b0 as registered as /usr/local/lib64/gstreamer-
1.0/libgstvideoscale.so
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216917130 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1300:gst_registry_scan_path_level:<registry0>^[[00m file
/usr/local/lib64/gstreamer-1.0/libgstvideotestsrc.so looks like a
possible module
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216930491 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1338:gst_registry_scan_path_level:<registry0>^[[00m file
/usr/local/lib64/gstreamer-1.0/libgstvideotestsrc.so cached
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216943011 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1341:gst_registry_scan_path_level:<registry0>^[[00m
marking plugin 0x15149e0 as registered as /usr/local/lib64/gstreamer-
1.0/libgstvideotestsrc.so
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216962390 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1300:gst_registry_scan_path_level:<registry0>^[[00m file
/usr/local/lib64/gstreamer-1.0/libgstvolume.so looks like a possible
module
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216975813 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1338:gst_registry_scan_path_level:<registry0>^[[00m file
/usr/local/lib64/gstreamer-1.0/libgstvolume.so cached
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.216988384 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1341:gst_registry_scan_path_level:<registry0>^[[00m
marking plugin 0x1514b10 as registered as /usr/local/lib64/gstreamer-
1.0/libgstvolume.so
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.217015893 ^[[33m11480^[[00m 0x1467e00 ^[[37mDEBUG ^[[00m
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m GST_REGISTRY
gstregistry.c:1384:gst_registry_scan_path_internal:<registry0>^[[00m
registry changed in path /usr/local/lib64/gstreamer-1.0: 0
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.217028402 ^[[33m11480^[[00m 0x1467e00 ^[[37mDEBUG ^[[00m
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m GST_REGISTRY
gstregistry.c:1561:gst_registry_remove_cache_plugins:<registry0>^[[00m
removing cached plugins
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.217043136 ^[[33m11480^[[00m 0x1467e00 ^[[36mINFO ^[[00m
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m GST_REGISTRY
gstregistry.c:1713:scan_and_update_registry:^[[00m Registry cache has
not changed
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.217055278 ^[[33m11480^[[00m 0x1467e00 ^[[36mINFO ^[[00m
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m GST_REGISTRY
gstregistry.c:1790:ensure_current_registry:^[[00m registry reading and
updating done, result = 1
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.217064973 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00m GST_REGISTRY
gstregistry.c:1866:gst_update_registry:^[[00m registry update succeeded
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.217089693 ^[[33m11480^[[00m 0x1467e00 ^[[36mINFO ^[[00m
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00;01;31m GST_INIT gst.c:807:init_post:^[[00m GLib runtime
version: 2.56.4
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.217103781 ^[[33m11480^[[00m 0x1467e00 ^[[36mINFO ^[[00m
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00;01;31m GST_INIT gst.c:809:init_post:^[[00m GLib headers
version: 2.56.4
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.217126633 ^[[33m11480^[[00m 0x1467e00 ^[[36mINFO ^[[00m
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00;01;31m GST_INIT gst.c:810:init_post:^[[00m initialized
GStreamer successfully
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.217163021 ^[[33m11480^[[00m 0x1467e00 ^[[37mDEBUG ^[[00m
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00;04m default
gsttracerutils.c:77:_priv_gst_tracing_init:^[[00m Initializing GstTracer
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.218765476 ^[[33m11480^[[00m 0x1467e00 ^[[37mDEBUG ^[[00m
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00;01;36m GST_PLUGIN_LOADING
gstplugin.c:768:_priv_gst_plugin_load_file_for_registry:^[[00m attempt
to load plugin "/usr/local/lib64/gstreamer-1.0/libgstndi.so"
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.226931198 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00;01;36m GST_PLUGIN_LOADING
gstplugin.c:890:_priv_gst_plugin_load_file_for_registry:^[[00m Plugin
0x148a3f0 for file "/usr/local/lib64/gstreamer-1.0/libgstndi.so"
prepared, calling entry function...
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.226962382 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00;01;36m GST_PLUGIN_LOADING
gstplugin.c:897:_priv_gst_plugin_load_file_for_registry:^[[00m Plugin
0x148a3f0 for file "/usr/local/lib64/gstreamer-1.0/libgstndi.so"
prepared, registering...
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.226995587 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mLOG
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00;01;36m GST_PLUGIN_LOADING
gstplugin.c:514:gst_plugin_register_func:^[[00m plugin
"/usr/local/lib64/gstreamer-1.0/libgstndi.so" looks good
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.227200084 ^[[33m11480^[[00m 0x1467e00 ^[[31;01mERROR
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00;01;36m GST_PLUGIN_LOADING
src/lib.rs:71:gstndi::plugin_desc:^[[00m Failed to register plugin:
Cannot initialize NDI
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.227229169 ^[[33m11480^[[00m 0x1467e00 ^[[33;01mWARN
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00m ^[[00;01;36m GST_PLUGIN_LOADING
gstplugin.c:535:gst_plugin_register_func:^[[00m plugin
"/usr/local/lib64/gstreamer-1.0/libgstndi.so" failed to initialise
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">0:00:00.227243930 ^[[33m11480^[[00m 0x1467e00 ^[[37mDEBUG ^[[00m
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">^[[00;01;36m GST_PLUGIN_LOADING
gstplugin.c:902:_priv_gst_plugin_load_file_for_registry:^[[00m
gst_plugin_register_func failed for plugin "/usr/local/lib64/gstreamer-
1.0/libgstndi.so"
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">Could not load plugin file: File "/usr/local/lib64/gstreamer-
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">1.0/libgstndi.so" appears to be a GStreamer plugin, but it failed to
initialize
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">Ok run `GST_DEBUG=*:6 gst-inspect-1.0
/usr/local/lib64/gstreamer-1.0/libgstndi.so` that should show more
</pre>
</blockquote>
</blockquote>
<pre class="moz-quote-pre" wrap="">info
</pre>
<blockquote type="cite">
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">
On 9/5/21 11:40 PM, Marc wrote:
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">Ok the ldd I did already, that seems fine.
[@ bin]# ldd /usr/local/lib64/gstreamer-1.0/libgstndi.so
linux-vdso.so.1 (0x00007ffe8b1b4000)
libndi.so.5 => /usr/local/lib/libndi.so.5
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b9e2c000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libgstaudio-1.0.so.0 => /usr/local/lib64/libgstaudio-
</pre>
</blockquote>
</blockquote>
</blockquote>
<pre class="moz-quote-pre" wrap="">1.0.so.0
</pre>
<blockquote type="cite">
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">(0x00007f07b9bbb000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libgstbase-1.0.so.0 => /usr/local/lib64/libgstbase-
</pre>
</blockquote>
</blockquote>
</blockquote>
<pre class="moz-quote-pre" wrap="">1.0.so.0
</pre>
<blockquote type="cite">
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">(0x00007f07b993d000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libgstreamer-1.0.so.0 => /usr/local/lib64/libgstreamer-
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">1.0.so.0 (0x00007f07b95fb000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libgobject-2.0.so.0 => /lib64/libgobject-2.0.so.0
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b93a8000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libglib-2.0.so.0 => /lib64/libglib-2.0.so.0
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b908f000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libgstvideo-1.0.so.0 => /usr/local/lib64/libgstvideo-
</pre>
</blockquote>
</blockquote>
</blockquote>
<pre class="moz-quote-pre" wrap="">1.0.so.0
</pre>
<blockquote type="cite">
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">(0x00007f07b8dec000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f07b8bd4000)
libpthread.so.0 => /lib64/libpthread.so.0
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b89b4000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libm.so.6 => /lib64/libm.so.6 (0x00007f07b8632000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f07b842e000)
libc.so.6 => /lib64/libc.so.6 (0x00007f07b8069000)
/lib64/ld-linux-x86-64.so.2 (0x00007f07bbd48000)
libavahi-common.so.3 => /lib64/libavahi-common.so.3
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b7e5c000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libavahi-client.so.3 => /lib64/libavahi-client.so.3
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b7c4a000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libgsttag-1.0.so.0 => /usr/local/lib64/libgsttag-1.0.so.0
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b7a0f000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libgmodule-2.0.so.0 => /lib64/libgmodule-2.0.so.0
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b780b000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libgnutls.so.30 => /lib64/libgnutls.so.30
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b741a000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f07b71a9000)
libffi.so.6 => /lib64/libffi.so.6 (0x00007f07b6fa0000)
libdbus-1.so.3 => /lib64/libdbus-1.so.3
</pre>
</blockquote>
</blockquote>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b6d4c000)
</pre>
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libz.so.1 => /lib64/libz.so.1 (0x00007f07b6b35000)
libp11-kit.so.0 => /lib64/libp11-kit.so.0
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b680b000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libidn2.so.0 => /lib64/libidn2.so.0 (0x00007f07b65ed000)
libunistring.so.2 => /lib64/libunistring.so.2
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b626c000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libtasn1.so.6 => /lib64/libtasn1.so.6 (0x00007f07b6059000)
libnettle.so.6 => /lib64/libnettle.so.6
</pre>
</blockquote>
</blockquote>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b5e1f000)
</pre>
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libhogweed.so.4 => /lib64/libhogweed.so.4
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b5bef000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libgmp.so.10 => /lib64/libgmp.so.10 (0x00007f07b5957000)
libsystemd.so.0 => /lib64/libsystemd.so.0
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b5612000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> librt.so.1 => /lib64/librt.so.1 (0x00007f07b540a000)
liblzma.so.5 => /lib64/liblzma.so.5 (0x00007f07b51e3000)
liblz4.so.1 => /lib64/liblz4.so.1 (0x00007f07b4fc6000)
libcap.so.2 => /lib64/libcap.so.2 (0x00007f07b4dc0000)
libmount.so.1 => /lib64/libmount.so.1 (0x00007f07b4b66000)
libgcrypt.so.20 => /lib64/libgcrypt.so.20
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b4848000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libblkid.so.1 => /lib64/libblkid.so.1 (0x00007f07b45f5000)
libuuid.so.1 => /lib64/libuuid.so.1 (0x00007f07b43ed000)
libselinux.so.1 => /lib64/libselinux.so.1
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b41c3000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libgpg-error.so.0 => /lib64/libgpg-error.so.0
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b3fa2000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> libpcre2-8.so.0 => /lib64/libpcre2-8.so.0
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">(0x00007f07b3d1e000)
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">Sorry I mistyped. You should use `ldd` command `ldd
/usr/local/lib64/gstreamer-1.0/libgstndi.so`
On 9/5/21 11:34 PM, Marc wrote:
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">Yes, looks like something is not ok. But I guess this is then
</pre>
</blockquote>
</blockquote>
</blockquote>
<pre class="moz-quote-pre" wrap="">related
</pre>
<blockquote type="cite">
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">to compiler flag, that builds specific to the host cpu/kernel?
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">[@bin]# ld /usr/local/lib64/gstreamer-1.0/libgstndi.so
ld: warning: cannot find entry symbol _start; not setting start
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">address
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">How did you install those plugins?
Check that all dependencies for `libgstndi.so` are in place (`ld
/usr/local/lib64/gstreamer-1.0/libgstndi.so`)
On 9/5/21 8:52 PM, Marc via gstreamer-devel wrote:
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">I have centos8 docker image that builds gstreamer,base,good,bad
</pre>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
<pre class="moz-quote-pre" wrap="">from
</pre>
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">source plus the gstreamer-ndi plugin. Strange thing is, that if I
</pre>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
<pre class="moz-quote-pre" wrap="">run
</pre>
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">the docker image on a centos7 host with a 3.10 kernel gst-inspect
</pre>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
<pre class="moz-quote-pre" wrap="">is
</pre>
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">fine:
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">[/]# gst-inspect-1.0 /usr/local/lib64/gstreamer-1.0/libgstndi.so
Plugin Details:
Name ndi
Description NewTek NDI Plugin
Filename /usr/local/lib64/gstreamer-
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">1.0/libgstndi.so
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> Version 1.0.0-160571e
License LGPL
Source module gst-plugin-ndi
Source release date 2021-08-17
Binary package gst-plugin-ndi
Origin URL <a class="moz-txt-link-freetext" href="https://github.com/teltek/gst">https://github.com/teltek/gst</a>-
</pre>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
<pre class="moz-quote-pre" wrap="">plugin-
</pre>
<blockquote type="cite">
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">ndi
</pre>
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<pre class="moz-quote-pre" wrap=""> ndisink: NDI Sink
ndisinkcombiner: NDI Sink Combiner
ndiaudiosrc: NewTek NDI Audio Source
ndivideosrc: NewTek NDI Video Source
ndideviceprovider: NewTek NDI Device Provider
5 features:
+-- 4 elements
+-- 1 device providers
But when I move the centos8 docker image to a centos8 host, and
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">execute the same I am getting this error
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">[]# ldconfig
[]# gst-inspect-1.0 /usr/local/lib64/gstreamer-1.0/libgstndi.so
0:00:00.033940037 1886 0x21fa960 ERROR
</pre>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
<pre class="moz-quote-pre" wrap="">GST_PLUGIN_LOADING
</pre>
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">src/lib.rs:71:gstndi::plugin_desc: Failed to register plugin:
</pre>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
<pre class="moz-quote-pre" wrap="">Cannot
</pre>
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">initialize NDI
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">Could not load plugin file: File "/usr/local/lib64/gstreamer-
</pre>
</blockquote>
<pre class="moz-quote-pre" wrap="">1.0/libgstndi.so" appears to be a GStreamer plugin, but it failed
</pre>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
<pre class="moz-quote-pre" wrap="">to
</pre>
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">initialize
</pre>
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">How should I debug this?
Rebuilding a new image on the centos8 host does not resolve
</pre>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
<pre class="moz-quote-pre" wrap="">this.
</pre>
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<blockquote type="cite">
<pre class="moz-quote-pre" wrap="">starting the container with --cap-add SYS_ADMIN does not resolve
</pre>
</blockquote>
</blockquote>
</blockquote>
<pre class="moz-quote-pre" wrap="">this.
</pre>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
</body>
</html>