Pulseeffects: Last release for Pulseaudio 13

Created on 8 Oct 2020  路  9Comments  路  Source: wwmm/pulseeffects

I'm following the discussion on the new "default-sink" behaviour of PulseAudio, which seems to be a new feature of version 14. More info in the release notes.

So, if this behaviour will be confirmed, there will be lots of changes for PulseEffects. Therefore I propose to push a last release targeted for PulseAudio 13 which has few improvements to Equalizer and Crystalizer UI and values outside GTK widgets formatted according to system locale (like showing comma as decimal separator).

Before doing that, I ask if the locale formatting has be done also here to show the seconds like 1,000. I never used convolver plot, so I don't really know, in some other parts there's no need to apply locale formatting because it's showing thousand factors like 44.1 kHz.

If it's needed, I'm going to push this last change, update translations and changelog and there will be the last release 4.8.3 for PulseAudio 13.

Then everything forward is targeted for PulseAudio 14. Maybe it's also needed to create a new branch for new PulseAudio version. When everything will be stable, it's all backported to the master branch.

All 9 comments

I ask if the locale formatting has be done also here to show the seconds like 1,000

I did not even think about localization in these plots as my system is in English. It is a good idea.

Then everything forward is targeted for PulseAudio 14

I hope things do not have to go that way. It isn't one of those cases where we have to adapt to a new API. If Pulseaudio 14 is released as it is we will need a hack that restores our routing whenever Pulseaudio decides to break it. There isn't a decent solution to that issue. It is horrible.

I did not even think about localization in these plots as my system is in English. It is a good idea.

I'll do it.

I hope things do not have to go that way. It isn't one of those cases where we have to adapt to a new API. If Pulseaudio 14 is released as it is we will need a hack that restores our routing whenever Pulseaudio decides to break it. There isn't a decent solution to that issue. It is horrible.

As far as I understood, it's not a new API, but a new behaviour where PA redirect all streams to the new connected sink. If you want to avoid this, you have to set a default sink. Maybe we only have to tell PE users to set a default sink and that's enough.

As far as I understood, it's not a new API, but a new behaviour where PA redirect all streams to the new connected sink. If you want to avoid this, you have to set a default sink. Maybe we only have to tell PE users to set a default sink and that's enough.

As I explained there I tried that. Pulseaudio doesn't care and still moves the stream to the new default device. And the situation is worse than you are thinking because it happens when new default sources are set too. Imagine a user without microphone. Why would he/she open Pavucontrol to select a virtual input that is hidden by default as his/her input device? No one is going to think about doing that. Pulseaudio has to at least improve this new feature.

Just to clarify each sink has monitors that act as sources. Just by plugging a headphone in a system without microphone in Pulseaudio 14 you set new source and sink at the same time.

When they force all streams to move to the new default sink they break our microphone pipeline. And by forcing all streams to move to the new default source they break the pipeline that applies effects to apps output =/

I encountered this exact problem recently in Arch when I updated PulseAudio and pacman notified me there was a new version of default.pa it saved in /etc/pulse/default.pa.pacnew. I compared it to the version I was using and noticed a couple of differences, the main one being that the new version replaced
load-module module-stream-restore restore_device=false
with
load-module module-stream-restore

I didn't think much of it and switched to the new version. This is how the problem started.

My user configuration in $HOME/.config/pulse/default.pa loads straight from the one in \etc\:
.include /etc/pulse/default.pa

So I tried editing it to unload module-stream-restore and load it again with the restore_device=false option, restarted PulseAudio and sure enough, everything was back to normal. Switching output devices from the GNOME Shell only changes it for the PulseEffects sink and everything else is outputting to PulseEffects (apps).

Hopefully this is useful to you!

Didn't try yet, maybe I'll take a look later. But it's weird PA devs didn't mention this option.

Switching output devices from the GNOME Shell only changes it for the PulseEffects sink and everything else is outputting to PulseEffects (apps)

You were having another issue. Using restore_device=false does not fix the problem I described to the Pulseaudio developers https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/1000. I tried it now and when I plug a headphone Pulseaudio stills breaks our custom audio routing.

This seems no needed anymore.

Was this page helpful?
0 / 5 - 0 ratings