portaloffreedom / pipecontrol

Pipewire control GUI program in Qt (Kirigami2)
GNU General Public License v3.0
48 stars 2 forks source link

std::runtime_error: Could not find pipewire alsa monitor config file #2

Closed yochananmarqos closed 2 years ago

yochananmarqos commented 2 years ago

The default config file for pipewire-alsa is /etc/alsa/conf.d/99-pipewire-default.conf. I do not have a ~/.config/pipewire/ folder.

I'm using the pipecontrol 0.2.1-2 AUR package.

Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
Compiled with libpipewire  0.3.43
Linked   with libpipewire  0.3.43
object: id( 0 ) type( PipeWire:Interface:Core / 3 )
object: id( 1 ) type( PipeWire:Interface:Module / 3 )
object: id( 2 ) type( PipeWire:Interface:Module / 3 )
object: id( 4 ) type( PipeWire:Interface:Profiler / 3 )
object: id( 3 ) type( PipeWire:Interface:Module / 3 )
object: id( 5 ) type( PipeWire:Interface:Module / 3 )
object: id( 6 ) type( PipeWire:Interface:Factory / 3 )
object: id( 7 ) type( PipeWire:Interface:Module / 3 )
object: id( 8 ) type( PipeWire:Interface:Factory / 3 )
object: id( 9 ) type( PipeWire:Interface:Module / 3 )
object: id( 10 ) type( PipeWire:Interface:Factory / 3 )
object: id( 11 ) type( PipeWire:Interface:Module / 3 )
object: id( 12 ) type( PipeWire:Interface:Factory / 3 )
object: id( 13 ) type( PipeWire:Interface:Module / 3 )
object: id( 14 ) type( PipeWire:Interface:Factory / 3 )
object: id( 15 ) type( PipeWire:Interface:Module / 3 )
object: id( 16 ) type( PipeWire:Interface:Module / 3 )
object: id( 17 ) type( PipeWire:Interface:Module / 3 )
object: id( 18 ) type( PipeWire:Interface:Factory / 3 )
object: id( 19 ) type( PipeWire:Interface:Module / 3 )
object: id( 20 ) type( PipeWire:Interface:Factory / 3 )
object: id( 21 ) type( PipeWire:Interface:Module / 3 )
object: id( 22 ) type( PipeWire:Interface:Factory / 3 )
object: id( 23 ) type( PipeWire:Interface:Factory / 3 )
object: id( 24 ) type( PipeWire:Interface:Factory / 3 )
object: id( 25 ) type( PipeWire:Interface:Factory / 3 )
object: id( 26 ) type( PipeWire:Interface:Factory / 3 )
object: id( 27 ) type( PipeWire:Interface:Factory / 3 )
object: id( 28 ) type( PipeWire:Interface:Node / 3 )
Adding new node  "Dummy-Driver"
Adding node id( 28 ):  "Dummy-Driver"
object: id( 29 ) type( PipeWire:Interface:Node / 3 )
Adding new node  "Freewheel-Driver"
Adding node id( 29 ):  "Freewheel-Driver"
object: id( 30 ) type( PipeWire:Interface:Metadata / 3 )
object: id( 31 ) type( PipeWire:Interface:Client / 3 )
object: id( 32 ) type( PipeWire:Interface:Client / 3 )
object: id( 33 ) type( PipeWire:Interface:Metadata / 3 )
Ignoring metadata " default "
object: id( 34 ) type( PipeWire:Interface:Metadata / 3 )
Ignoring metadata " route-settings "
object: id( 35 ) type( PipeWire:Interface:Node / 3 )
Adding new node  "Midi-Bridge"
Adding node id( 35 ):  "Midi-Bridge"
object: id( 36 ) type( PipeWire:Interface:Port / 3 )
object: id( 37 ) type( PipeWire:Interface:Port / 3 )
object: id( 38 ) type( PipeWire:Interface:Device / 3 )
object: id( 39 ) type( PipeWire:Interface:Device / 3 )
object: id( 40 ) type( PipeWire:Interface:Device / 3 )
object: id( 41 ) type( PipeWire:Interface:Device / 3 )
object: id( 42 ) type( PipeWire:Interface:Node / 3 )
Adding new node  "v4l2_input.pci-0000_04_00.3-usb-0_4_1.0"
Adding node id( 42 ):  "v4l2_input.pci-0000_04_00.3-usb-0_4_1.0"
object: id( 43 ) type( PipeWire:Interface:Port / 3 )
object: id( 44 ) type( PipeWire:Interface:Node / 3 )
Adding new node  "alsa output pci-0000 04 00"
Adding node id( 44 ):  "alsa output pci-0000 04 00"
object: id( 45 ) type( PipeWire:Interface:Node / 3 )
Adding new node  "alsa output pci-0000 04 00"
Adding node id( 45 ):  "alsa output pci-0000 04 00"
object: id( 46 ) type( PipeWire:Interface:Node / 3 )
Adding new node  "alsa input pci-0000 04 00"
Adding node id( 46 ):  "alsa input pci-0000 04 00"
object: id( 47 ) type( PipeWire:Interface:Port / 3 )
object: id( 48 ) type( PipeWire:Interface:Port / 3 )
object: id( 49 ) type( PipeWire:Interface:Port / 3 )
object: id( 50 ) type( PipeWire:Interface:Port / 3 )
object: id( 51 ) type( PipeWire:Interface:Port / 3 )
object: id( 52 ) type( PipeWire:Interface:Port / 3 )
object: id( 53 ) type( PipeWire:Interface:Port / 3 )
object: id( 54 ) type( PipeWire:Interface:Port / 3 )
object: id( 55 ) type( PipeWire:Interface:Port / 3 )
object: id( 56 ) type( PipeWire:Interface:Port / 3 )
object: id( 57 ) type( PipeWire:Interface:Client / 3 )
object: id( 58 ) type( PipeWire:Interface:Client / 3 )
object: id( 59 ) type( PipeWire:Interface:Client / 3 )
object: id( 75 ) type( PipeWire:Interface:Client / 3 )
object: id( 74 ) type( PipeWire:Interface:Client / 3 )
object: id( 60 ) type( PipeWire:Interface:Client / 3 )
Unrecognized option " clock.rate " with value " 48000 "
Unrecognized option " clock.allowed-rates " with value " [ 48000 ] "
Unrecognized option " clock.quantum " with value " 1024 "
terminate called after throwing an instance of 'std::runtime_error'
  what():  Could not find pipewire alsa monitor config file!
zsh: abort (core dumped)  pipecontrol
portaloffreedom commented 2 years ago

The program is looking for another file, both on global and in the user folder. https://github.com/portaloffreedom/pipecontrol/blob/f6f9bf8bc1a2f300a6772a1fd57ce8605cea7fad/src/alsaproperties.cpp#L30-L38

The file in question is either /usr/share/pipewire/media-session.d/alsa-monitor.conf or ~/.config/pipewire/media-session.d/alsa-monitor.conf

Which seems to be provided by pipewire-media-session. Could it be that you are using wireplumber?

yochananmarqos commented 2 years ago

Ah, that's why. Yes, I'm using Wireplumber.

portaloffreedom commented 2 years ago

ok, I need to make the program run also with wireplumber

portaloffreedom commented 2 years ago

@yochananmarqos should be fixed with the new release (af6aedc96811c7d846b42d9c958929b52dc1e132 for the details)

you can reopen it if you still have the same issue :)