Audio4Linux / JDSP4Linux

An audio effect processor for PipeWire and PulseAudio clients
GNU General Public License v3.0
915 stars 35 forks source link

No application sound after update #128

Closed Endebert closed 11 months ago

Endebert commented 1 year ago

I've been using the app for a while now for the equalizer and convolver. It was working flawlessly until I installed an update yesterday.

I still have system sounds (e.g. blip when changing volume), but application sound routed through jamesdsp does not output anything anymore.

I'm running Manjaro with the 6.3.5-2 kernel and have jamesdsp installed through AUR.

This is the app status during playback: image

This is how the pipewire graph looks like during playback: image (i.e. Firefox -> JamesDSP Sink -> jamesdsp_filter -> sound card: does not work)

If I manually connect the JamesDSP Sink monitor output to my sound card, I get the unprocessed sound on my headphones. (i.e. Firefox -> JamesDSP Sink -> sound card: works)

If I manually connect the Firefox output to the jamesdsp_filter input, I get the processed sound on my headphones. (i.e. Firefox -> jamesdsp_filter -> sound card: works)

So I believe there is some issue with the connection between JamesDSP Sink and jamesdsp_filter for some reason, but I have no clue what could be wrong.

During boot I get these messages:

20/06/2023 08:34 jamesdsp QBasicTimer::start: QBasicTimer can only be used with threads started with QThread 20/06/2023 08:34 jamesdsp QBasicTimer::start: QBasicTimer can only be used with threads started with QThread 20/06/2023 08:34 systemd Started JamesDSP.

When I click "Relink audio pipeline" in the app, I can see these messages in the journal, don't know if they are related to the issue:

20/06/2023 11:30 jamesdsp QFSFileEngine::open: No file name specified 20/06/2023 11:30 jamesdsp QIODevice::read (QFile, ""): device not open 20/06/2023 11:30 jamesdsp QFSFileEngine::open: No file name specified 20/06/2023 11:30 jamesdsp QFSFileEngine::open: No file name specified

Any help would be greatly appreciated, as I like the app and would like to keep using it instead of Easy Effects. Let me know if there's any more information I can provide.

timschneeb commented 1 year ago

Is the virtual JamesDSP sink selected as the default output device in the audio settings of your system? If it is, try setting your actual speakers/headset as default instead. That can cause some undefined behaviour, but I'm unsure if that is happening here. The errors in the log are not related to the issue. Also, please post the full log, as it contains information about how JDSP links the filter.

TeheeFB commented 1 year ago

Can confirm this happens to me too, using the flatpak, stable aur and dev aur.

Here's a full log, launched it, disconnected discord from jdsp back to my headphones and tried playing a video on firefox on jdsp which didn't produce sound, the output device is the default headphones not jdsp. The log is using dev aur. https://pastebin.com/y3qxsaCW

The workaround mentioned by Enderbert works.

Also funny thing, jdsp says it's processing at a sampling rate of 0hz.

DeadRedmond commented 1 year ago

Updating to version 2.6.0. The error is still present. image

timschneeb commented 1 year ago

I can't reproduce this issue and am not sure how to fix it. I did have some issues related to audio loss when changing my volume or switching audio devices (including when loading JDSP's virtual device), but it ended up being caused by a PipeWire bug: https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3316

DeadRedmond commented 1 year ago

It seems like I've found the reason for the sound issue. The sound disappears every time I try to use the "Graphic EQ." When select a model from the AutoEQ database, my sound disappears and doesn't return until I perform a "reset to defaults" and restart JamesDSP. Simply deleting the settings from the "Graphic EQ" or disabling it doesn't solve the problem.

Nocrex commented 11 months ago

Happens for me too. Everything works fine except for Graphic EQ and DDC. As soon as I enable either of them I hear a pop and all audio output just stops. The bypass still works and makes the audio come back, but every time it is clicked the audio pops. To fix it I have to disable both Graphic EQ and DDC and restart the program.

Nocrex commented 11 months ago

Found the problem! I created a PR with a fix (#156 ) In the meantime you use LC_NUMERIC=C jamesdsp to avoid the problem