Giter Club home page Giter Club logo

Comments (6)

pallaswept avatar pallaswept commented on September 23, 2024 1

I still had trouble with the default instructions getting the AUR package to work on Manjaro, but the instructions at https://medium.com/@gamunu/linux-noise-cancellation-b9f997f6764d worked 100% for me. It included some additional steps that can maybe be considered for the README.

There are a lot of unnecessary/just wrong steps in those instructions. You don't need to create a systemd service to execute it, you just use split file configuration and it loads with pipewire - and when you put the conf file where pipewire's example says to do it, instead of where that page says to do it which is wrong, that's exactly what happens, so the whole of section 3 is redundant because of step 1. As for step 2, that config file contains instructions to disable logging (not a great idea) and then load, for this feature to function, modules that are unrelated and unneeded since they are already loaded by the default configuration file which is still in place. And then it says to use the plugin path including the path to the file which is unneeded because the package manager used in step 1 should have installed the plugin to one of the standard plugin locations (and the path they show is one of them) that are searched without specifying a path, and then it says to use the .so extension which is wrong (see the documentation quote/link above for the authoritative source of this)

Ironically, if you remove the unnecessary and erroneous parts of the file in step 2, you are left with exactly the file that pipewire provide as an example (the one I linked above).

Most of that page is telling you how to do it wrong and definitely shouldn't be going into the readme here. I'm glad you got it working though :)

from noise-suppression-for-voice.

pallaswept avatar pallaswept commented on September 23, 2024 1

@Pragmer probably time to resolve this issue mate. The answers are right there and known to work, and this repo seems abandoned so nobody else is gonna clean up this thing.

from noise-suppression-for-voice.

pallaswept avatar pallaswept commented on September 23, 2024

I altered the path in the config to /home/leaderofthe00fkins/linux-rnnoise/ladspa/librnnoise_ladspa.so

This is not the correct procedure. Refer to the documentation at https://docs.pipewire.org/page_module_filter_chain.html, note that you should not specify the .so extension of the file, as it is automatically appended. Also, you should place the .so file in your existing LADSPA plugin path. To quote the relevant portion of the doc:

plugin is the type specific plugin name.

    For LADSPA plugins it will append .so to find the shared object with that name in the LADSPA plugin path.

The correct LADSPA plugin path will vary depending on your distro, by default on linux it will be /usr/local/lib/ladspa or /usr/lib/ladspa or /usr/local/lib64/ladspa or /usr/lib64/ladspa... you can get a strong hint if you have installed any by using your package manager, by running listplugins, as it will list all installed plugins and the paths to their files. You could set the path manually by altering your pipewire systemd unit file and setting the environment variable LADSPA_PATH but that would be a pretty intrusive way to go about it. Better to just put the plugin in the right spot.

Perhaps if you could include the conf file you have created it would help to find whatever other errors might be preventing it from working. The path you have specified ( ~/.config/pipewire/pipewire.conf.d/99-input-denoising.conf) should be functional, so something in that file is wrong. At the very least, it's that you've added that ".so" to the plugin path and the file is not in the correct location.

Also, these errors you're seeing are not normal:

Jul 19 20:41:57 pejassupercomputer pipewire[21995]: mod.protocol-native: server 0x55ba80c129f0: unable to lock lockfile '/run/user/1000/pipewire-0.lock': Resource temporarily unavailable (maybe another daemon is running)
Jul 19 20:41:57 pejassupercomputer pipewire[21995]: pw.conf: 0x55ba80bf7130: could not load mandatory module "libpipewire-module-protocol-native": Resource temporarily unavailable
Jul 19 20:41:57 pejassupercomputer pipewire[21995]: default: failed to create context: Resource temporarily unavailable

It seems like you've tried to start pipewire while it's already running. It may be a result of your attempts to load the config file manually (with pipewire -c)which you should do as an alternative to, not in addition to, placing the config file as you have and creating a split-file configuration which should already have loaded the conf file with pipewire's daemon.

The same command returned this after manually running pipewire with -c and the config path.

  24068 ?        S<sl   0:00 /usr/bin/pipewire
  26562 ?        Sl     0:00 xed /home/leaderofthe00fkins/.config/pipewire/pipewire.conf.d/99-input-denoising.conf
  27052 pts/0    S+     0:00 grep --color=auto pipewire

This just shows that pipewire is running (as before) and also you're presently editing the config file in xed. You can use the command pw-config to ensure that your split-file configuration is effective and the conf file has been loaded with pipewire, and pw-dump to dump the current status of the entire daemon, which should include the modules and nodes you've created with the conf file. pw-dump | grep rnnnoise will give you a quick check if you don't want to read the entire dump.

Hope this helps.

from noise-suppression-for-voice.

Danie10 avatar Danie10 commented on September 23, 2024

For LADSPA plugins it will append .so to find the shared object with that name in the LADSPA plugin path

The readme for this project does include the .so, so this got me too.

from noise-suppression-for-voice.

pallaswept avatar pallaswept commented on September 23, 2024

For LADSPA plugins it will append .so to find the shared object with that name in the LADSPA plugin path

The readme for this project does include the .so, so this got me too.

I hadn't noticed that - I used the example from the pipewire source as my starting point and it 'just worked' so I never even got so far as reading the readme here, but the readme here is ... well... it's not right.

@werman I could go ahead and create a PR with an updated readme for you, if you like, but I reckon it's probably easy fixed for you. Please let me know if you'd like me to take care of it. I appreciate the plugin very much.

from noise-suppression-for-voice.

Danie10 avatar Danie10 commented on September 23, 2024

I still had trouble with the default instructions getting the AUR package to work on Manjaro, but the instructions at https://medium.com/@gamunu/linux-noise-cancellation-b9f997f6764d worked 100% for me. It included some additional steps that can maybe be considered for the README.

from noise-suppression-for-voice.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.