Plugin Development (Tutorial)

I am currently going through the rust plugin development tutorials. I started with part 1. When I get to the end of Plugin initialization I try to inspect the build. I receive:

Could not load plugin file: File "target/debug/libperf.so" is not a GStreamer plugin

I also built the plugins provided in gst-plugins-rs. I could not inspect them as well. I went ahead and setup a dev environment, and I get the same result.

POP_OS! 22.04
GStreamer versions 120.3 (OS Provided) and 1.24.1 (Dev env with rs=enabled)

What do I need to fix with respect to the entry point?

0:00:00.268571207 1485899 0x5af44b4ebe00 INFO                GST_INIT gst.c:833:init_post: GLib runtime version: 2.72.4
0:00:00.268574994 1485899 0x5af44b4ebe00 INFO                GST_INIT gst.c:835:init_post: GLib headers version: 2.72.1
0:00:00.268577980 1485899 0x5af44b4ebe00 INFO                GST_INIT gst.c:837:init_post: initialized GStreamer successfully
0:00:00.268581717 1485899 0x5af44b4ebe00 DEBUG                default gsttracerutils.c:77:_priv_gst_tracing_init: Initializing GstTracer
0:00:00.270036139 1485899 0x5af44b4ebe00 DEBUG     GST_PLUGIN_LOADING gstplugin.c:831:_priv_gst_plugin_load_file_for_registry: attempt to load plugin "target/debug/libperf.so"
0:00:00.270821320 1485899 0x5af44b4ebe00 DEBUG     GST_PLUGIN_LOADING gstplugin.c:896:_priv_gst_plugin_load_file_for_registry: Could not find symbol 'gst_plugin_perf_get_desc', falling back to gst_plugin_desc
0:00:00.270829305 1485899 0x5af44b4ebe00 DEBUG     GST_PLUGIN_LOADING gstplugin.c:904:_priv_gst_plugin_load_file_for_registry: Could not find plugin entry point in "target/debug/libperf.so"
Could not load plugin file: File "target/debug/libperf.so" is not a GStreamer plugin

plugin_init is defined in my lib.rs file.

I figured it out. It was a naming issue with the resulting so file and what I had declared in the the cargo file.

1 Like