Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 843131 - media-sound/pulseaudio-15.0-r2: module-virtual-surround-sink not being compiled
Summary: media-sound/pulseaudio-15.0-r2: module-virtual-surround-sink not being compiled
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Igor V. Kovalenko
URL:
Whiteboard:
Keywords: PullRequest
Depends on:
Blocks:
 
Reported: 2022-05-07 10:13 UTC by Héctor Barreras
Modified: 2022-06-10 06:58 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Output of `emerge --info` (emerge.info,5.92 KB, text/plain)
2022-05-07 10:13 UTC, Héctor Barreras
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Héctor Barreras 2022-05-07 10:13:25 UTC
Created attachment 777260 [details]
Output of `emerge --info`

Hi,

I wanted to load the module-virtual-surround-sink module and the module is not present in my system:

```
$ pactl load-module module-virtual-surround-sink
Failure: Module initialization failed
```

The system logs state the following:

```
May  7 12:07:14 <host> pulseaudio[3983]: [pulseaudio] ltdl-bind-now.c: Failed to open module module-virtual-surround-sink.so: module-virtual-surround-sink.so: cannot open shared object file: No such file or directory
May  7 12:07:14 <host> pulseaudio[3983]: [pulseaudio] module.c: Failed to open module "module-virtual-surround-sink".

```

The source files seem to be present in the package sources under `pulseaudio-15.0/src/modules/module-virtual-surround-sink.c`, so my guess is that we are missing some macro define or build system setting. Maybe we are missing other modules as well, this is just the one I was attempting to load at the time.
Comment 1 Igor V. Kovalenko 2022-05-09 07:25:58 UTC
(In reply to Héctor Barreras from comment #0)
> Created attachment 777260 [details]
> Output of `emerge --info`
> 
> Hi,
> 
> I wanted to load the module-virtual-surround-sink module and the module is
> not present in my system:
> 
> ```
> $ pactl load-module module-virtual-surround-sink
> Failure: Module initialization failed
> ```
> 
> The system logs state the following:
> 
> ```
> May  7 12:07:14 <host> pulseaudio[3983]: [pulseaudio] ltdl-bind-now.c:
> Failed to open module module-virtual-surround-sink.so:
> module-virtual-surround-sink.so: cannot open shared object file: No such
> file or directory
> May  7 12:07:14 <host> pulseaudio[3983]: [pulseaudio] module.c: Failed to
> open module "module-virtual-surround-sink".
> 
> ```
> 
> The source files seem to be present in the package sources under
> `pulseaudio-15.0/src/modules/module-virtual-surround-sink.c`, so my guess is
> that we are missing some macro define or build system setting. Maybe we are
> missing other modules as well, this is just the one I was attempting to load
> at the time.
You need FFTW for module-virtual-surround-sink module. FFTW dependency will be explicitly pulled if you have USE 'equalizer' otherwise fftw will be detected and used if installed.

This implicit dependency looks like a bug so probably needs to be treated somehow. I think adding USE fftw to pulseaudio daemon ebuild and making it behave to enable 'fftw' feature of pulseaudio daemon is a good way forward (that is, either USE 'equalizer' or USE 'fftw' or both will enable FFTW.)
Comment 2 Héctor Barreras 2022-05-22 10:11:00 UTC
Apologies, I have been inactive here for some days now. Thank you very much Igor, I see the pull request is waiting to be merged against master. I really appreciate you sharing the workaround and fixing the ebuild.
Comment 3 Larry the Git Cow gentoo-dev 2022-06-10 06:58:11 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ba46ce03b945355d460941112183b7d53a0343eb

commit ba46ce03b945355d460941112183b7d53a0343eb
Author:     Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
AuthorDate: 2022-05-12 20:55:26 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2022-06-10 06:57:38 +0000

    media-sound/pulseaudio-daemon: Untangle USE equalizer and fftw
    
    For USE equalizer pull required sci-libs/fftw as build and runtime dependency.
    
    Add USE fftw to enable module-virtual-surround-sink.
    
    Closes: https://bugs.gentoo.org/843131
    Signed-off-by: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
    Signed-off-by: Sam James <sam@gentoo.org>

 media-sound/pulseaudio-daemon/metadata.xml                 |  5 ++++-
 .../pulseaudio-daemon/pulseaudio-daemon-16.0.ebuild        | 14 +++++++++++---
 2 files changed, 15 insertions(+), 4 deletions(-)