Search code examples
gstreamerkurento.so

Kurento service not listing custom filter .so file


I have created a custom filter for Kurento Media Server using gstreamer. as per the documentation I have created the .deb file debuild -us -uc and installed it because of which the libkmscustomfiltermodule.so is generated at /usr/lib/x86_64-linux-gnu/kurento/modules/

Initially it was listed in the loaded modules but I deleted this .so and after this its not listed (sudo kurento-media-server --list)

even if I revert my changes and restart the kurent-media-server-6.0 service, this customfilter is not being listed in sudo kurento-media-server --list

in server logs I see this log:

ModuleManager.cpp:61 loadModule()  Module /usr/lib/x86_64-linux-gnu/kurento/modules/libkmscustomfiltermodule.so cannot be loaded:
/usr/lib/x86_64-linux-gnu/libkmscustomfilterimpl.so.0: undefined symbol: _ZN7kurento6module15customfilter19CustomFilterImpl4loopE

any idea why this is happening ?


Solution

  • It seems that your module has some symbols missing.

    To detect this errors, it's a good practice to create a test that tries to load the module and instantiate classes in there. This way you know if your module is build correctly before trying it in the mediaserver.

    This test is done in kms-elements, you can use it as an example:

    https://github.com/Kurento/kms-elements/blob/master/tests/server/constructors.cpp