easyeffects icon indicating copy to clipboard operation
easyeffects copied to clipboard

EasyEffects do not apply to Zoom

Open lockie opened this issue 1 year ago • 17 comments

EasyEffects Version

7.1.3

What package are you using?

Gentoo

Distribution

Gentoo profile ver. amd64/23.0/split-usr/desktop stable

Describe the bug

When the audio is played or being recorded in Zoom, the app list in both "Players" and "Recorders" is empty and effects are not applied to sound in Zoom whatsoever. I'm using Zoom 6.0.2.4680 along with Pipewire 1.0.5.

Expected Behavior

When the audio is played or being recorded in Zoom, it is displayed in "Players" or "Recorders" list and effects are applied.

Debug Log

No response

Additional Information

No response

lockie avatar Jun 10 '24 10:06 lockie

In order to find the issue, we will need some more information:

What input and output devices are selected in zoom?

What are the settings on the pipewire tab of easyeffects set to?

What input / output device have you set as default in your system settings?

violetmage avatar Jun 10 '24 13:06 violetmage

Sure.

What input and output devices are selected in zoom?

It has my external USB audio card selected. Note EasyEffects works perfectly when using the same audio card in Audacity, Skype or virtually any other application.

What are the settings on the pipewire tab of easyeffects set to?

It has "Use Default Input" and "Use Default Output" set to On. Input is pre-selected to be the external audio card, output is pre-selected to be my default motherboard audio output.

What input / output device have you set as default in your system settings?

I'm not sure what do you mean by those, Gentoo does not have centralized system settings management. If I look in pavucontrol though, output device marked as "fallback" is again set to my built-in motherboard audiocard, and input device marked as "fallback" is my external USB audiocard.

lockie avatar Jun 10 '24 13:06 lockie

@lockie kill EasyEffects easyeffects -q and restart it in debug mode G_MESSAGES_DEBUG=easyeffects easyeffects. After that start a Zoom playback or recording stream so we can see what is shown in the logs.

That being said for even the playback stream to not be visible the most likely explanation is Zoom doing something weird on their end.

wwmm avatar Jun 10 '24 14:06 wwmm

I'm assuming Zoom was never put in EasyEffects blocklist. This is easy to check. Just open the blocklist menu.

wwmm avatar Jun 10 '24 14:06 wwmm

There was literally nothing happening in EasyEffects logs when I was fiddling with Zoom audio test. Here's the full log anyway: https://pastebin.com/gn6kDx80

lockie avatar Jun 10 '24 17:06 lockie

To be sure, you are using the zoom flatpak, correct?

Also, does the audio work correctly if you manually select easyeffects sink/source in zoom?

Edit: Just found this issue on the zoom flatpak github.com/flathub/us.zoom.Zoom

violetmage avatar Jun 10 '24 18:06 violetmage

Honestly, from what I can remember, using the native zoom client was so problematic that I ended up telling everyone who would listen to just use the web client. No complaints since then, seems more reliable. Of course, if you need a feature exclusive to the native client, then that makes the situation more difficult.

violetmage avatar Jun 10 '24 18:06 violetmage

There was literally nothing happening in EasyEffects logs when I was fiddling with Zoom audio test. Here's the full log anyway: https://pastebin.com/gn6kDx80

Strange... Is Pavucontrol showing its streams? Usually any stream that can be seen in Pavucontrol should also be visible in EasyEffects unless the stream is somehow being blocked by the blocklist. What happens if you use Pavucontrol to move Zoom's streams to EasyEffects virtual devices?

There are developers that set a Pulseaudio flag that does not allow third party tools to move streams to custom devices. But even in these cases the stream is usually visible in our window. EasyEffects is just unable to apply effects to them.

wwmm avatar Jun 10 '24 18:06 wwmm

@violetmage

To be sure, you are using the zoom flatpak, correct?

Nope, I'm using system package, which in turn just unpacks official tarball.

Also, does the audio work correctly if you manually select easyeffects sink/source in zoom?

Strange thing is, Zoom does not have anything related to EasyEffects in its audio devices list, only hardware devices (external audiocard, built-in audiocard and a webcamera).

I ended up telling everyone who would listen to just use the web client

I'd love to ditch this proprietary crap, but unfortunately I have to use it for my job.

@wwmm

Is Pavucontrol showing its streams?

No, not really.

I'll try disabling pulseaudio useflag on zoom and downgrading, perhaps this will help.

lockie avatar Jun 11 '24 06:06 lockie

All right, this didn't help either.

I understand Zoom does something terribly wrong, but how do I even formulate what exactly? Bypassing standard pulse streams?..

lockie avatar Jun 11 '24 09:06 lockie

There's not much anyone can do if Zoom refuses to follow the standards.

Also, just for the sake of clarity, by "web client", I mean that zoom does have an official, first party web client. https://support.zoom.com/hc/en/article?id=zm_kb&sysparm_article=KB0064261#h_01FGW753J4PVWY94DCEQQTAQ1Q

violetmage avatar Jun 11 '24 11:06 violetmage

Is Pavucontrol showing its streams? Is Pavucontrol showing its streams? No, not really.

If its stream are not visible in Pavucontrol it is unlikely they will be visible in EasyEffects. As Zoom is still using Pulseaudio API its streams should be visible in Pavucontrol. It is weird they they aren't.

I understand Zoom does something terribly wrong, but how do I even formulate what exactly? Bypassing standard pulse streams?..

To be honest I am also not sure about how to describe it. It isn't bypassing pulse audio streams because this isn't how things work. The audio player creates its playback stream. And this stream should be visible to audio managers like pavucontrol and easyeffects. Maybe there is some kind of pulseaudio API that allows this visibility to be disabled. But I do not remember having ever seen something even close to this.

wwmm avatar Jun 11 '24 15:06 wwmm

To be honest I am also not sure about how to describe it. It isn't bypassing pulse audio streams because this isn't how things work. The audio player creates its playback stream. And this stream should be visible to audio managers like pavucontrol and easyeffects. Maybe there is some kind of pulseaudio API that allows this visibility to be disabled. But I do not remember having ever seen something even close to this.

https://github.com/wwmm/easyeffects/issues/701#issuecomment-639504357

Should be a duplicate of #701 and I'm quite surprised this is still happening on Pipewire.

Digitalone1 avatar Jun 11 '24 21:06 Digitalone1

To be honest I am also not sure about how to describe it. It isn't bypassing pulse audio streams because this isn't how things work. The audio player creates its playback stream. And this stream should be visible to audio managers like pavucontrol and easyeffects. Maybe there is some kind of pulseaudio API that allows this visibility to be disabled. But I do not remember having ever seen something even close to this.

#701 (comment)

Should be a duplicate of #701 and I'm quite surprised this is still happening on Pipewire.

But in that issue the stream was still present in our logs and probably in pavucontrol too. We just did not have permission to move it to another device. Now it seems it is not even visible.

wwmm avatar Jun 11 '24 21:06 wwmm

I am having this same issue with Teams and Slack.

With Teams I can see the audio stream in EasyEffects, but no audio makes it to EasyEffects when it is enabled. It works fine when routed directly to the sound card. And the Mic works fine.

With slack it does not appear in Easyefffects at all. And using qpwgrap to redirect the audio through to EasyEffects yields no audio output.

So something is affecting playback in a weird way. I did wonder if it was related to both of those applications defaulting to 44khz vs 48khz, but I am unsure.

insanemal avatar Aug 28 '24 03:08 insanemal

With slack it does not appear in Easyefffects at all. And using qpwgrap to redirect the audio through to EasyEffects yields no audio output.

Maybe it is one more app requesting its stream to not be redirected. I've never used it.

With Teams I can see the audio stream in EasyEffects, but no audio makes it to EasyEffects when it is enabled. It works fine when routed directly to the sound card. And the Mic works fine.

Hum... @insanemal how did you install EasyEffects? Are you able to test our master branch code?

wwmm avatar Aug 28 '24 03:08 wwmm

Please ignore. It turns out the compressor plugin has gone insane and is applying -100db to everything regardless of settings.

Apologies for the distraction.

insanemal avatar Aug 28 '24 05:08 insanemal