wwmm / easyeffects

Limiter, compressor, convolver, equalizer and auto volume and many other plugins for PipeWire applications
GNU General Public License v3.0
6.5k stars 269 forks source link

Just stopped working #1777

Closed ZerkerEOD closed 2 years ago

ZerkerEOD commented 2 years ago

EasyEffects Version

6.2.8

What package are you using?

Flatpak (Flathub)

Distribution

Kali

Describe the bug

It just stopped working, when I have easyeffects enabled you can see my graph looks correct and should be working.

image

Even if I manually connect easyeffects sink output straight to the Analog Stereo, I get no sound.

But if I click the enable button on a stream inside easyeffects to disable it for that stream, I get sound and the graph looks like this. image

Expected Behavior

Sound working.

Debug Log

Debug Log
``` G_MESSAGES_DEBUG=easyeffects flatpak run --command=easyeffects com.github.wwmm.easyeffects (process:2): easyeffects-DEBUG: 09:43:05.155: easyeffects.cpp:35 easyeffects version: 6.2.8 (process:2): easyeffects-DEBUG: 09:43:05.156: easyeffects.cpp:45 locale directory: /app/share/locale (easyeffects:2): easyeffects-DEBUG: 09:43:05.161: presets_manager.cpp:49 system input presets directory: "/app/etc/xdg/easyeffects/input"; (easyeffects:2): easyeffects-DEBUG: 09:43:05.161: presets_manager.cpp:49 system input presets directory: "/etc/easyeffects/input"; (easyeffects:2): easyeffects-DEBUG: 09:43:05.161: presets_manager.cpp:49 system input presets directory: "/etc/xdg/easyeffects/input"; (easyeffects:2): easyeffects-DEBUG: 09:43:05.161: presets_manager.cpp:52 system output presets directory: "/app/etc/xdg/easyeffects/output"; (easyeffects:2): easyeffects-DEBUG: 09:43:05.161: presets_manager.cpp:52 system output presets directory: "/etc/easyeffects/output"; (easyeffects:2): easyeffects-DEBUG: 09:43:05.161: presets_manager.cpp:52 system output presets directory: "/etc/xdg/easyeffects/output"; (easyeffects:2): easyeffects-DEBUG: 09:43:05.161: presets_manager.cpp:192 user presets directory already exists: /home/aaron/.var/app/com.github.wwmm.easyeffects/config/easyeffects/ (easyeffects:2): easyeffects-DEBUG: 09:43:05.161: presets_manager.cpp:192 user presets directory already exists: /home/aaron/.var/app/com.github.wwmm.easyeffects/config/easyeffects/input (easyeffects:2): easyeffects-DEBUG: 09:43:05.161: presets_manager.cpp:192 user presets directory already exists: /home/aaron/.var/app/com.github.wwmm.easyeffects/config/easyeffects/output (easyeffects:2): easyeffects-DEBUG: 09:43:05.161: presets_manager.cpp:192 user presets directory already exists: /home/aaron/.var/app/com.github.wwmm.easyeffects/config/easyeffects/autoload/input (easyeffects:2): easyeffects-DEBUG: 09:43:05.161: presets_manager.cpp:192 user presets directory already exists: /home/aaron/.var/app/com.github.wwmm.easyeffects/config/easyeffects/autoload/output (easyeffects:2): easyeffects-DEBUG: 09:43:05.295: pipe_manager.cpp:1398 compiled with PipeWire: 0.3.41 (easyeffects:2): easyeffects-DEBUG: 09:43:05.295: pipe_manager.cpp:1399 linked to PipeWire: 0.3.41 (easyeffects:2): easyeffects-DEBUG: 09:43:05.296: pipe_manager.cpp:1366 core version: 0.3.56 (easyeffects:2): easyeffects-DEBUG: 09:43:05.296: pipe_manager.cpp:1367 core name: pipewire-0 (easyeffects:2): easyeffects-DEBUG: 09:43:05.297: pipe_manager.cpp:1280 found metadata: settings (easyeffects:2): easyeffects-DEBUG: 09:43:05.297: pipe_manager.cpp:1135 Audio/Sink 35 my_sink with serial 35 has been added (easyeffects:2): easyeffects-DEBUG: 09:43:05.297: pipe_manager.cpp:1135 Stream/Output/Audio 36 my_source with serial 36 has been added (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:1280 found metadata: default (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:1280 found metadata: route-settings (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:1135 Audio/Source 61 alsa_input.usb-046d_HD_Pro_Webcam_C920_EC3E1A9F-02.analog-stereo with serial 62 has been added (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:1135 Audio/Sink 62 alsa_output.pci-0000_00_1f.3.analog-stereo with serial 731 has been added (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:1135 Audio/Source 161 alsa_input.pci-0000_00_1f.3.analog-stereo with serial 732 has been added (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:1175 my_source port 69 is connected to alsa_output.pci-0000_00_1f.3.analog-stereo port 178 (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:1175 my_source port 70 is connected to alsa_output.pci-0000_00_1f.3.analog-stereo port 77 (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:1135 Stream/Output/Audio 169 Brave with serial 938 has been added (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:1175 Brave port 166 is connected to alsa_output.pci-0000_00_1f.3.analog-stereo port 178 (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:1175 Brave port 103 is connected to alsa_output.pci-0000_00_1f.3.analog-stereo port 77 (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:1135 Audio/Sink 79 easyeffects_sink with serial 1282 has been added (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:1135 Audio/Source/Virtual 154 easyeffects_source with serial 1283 has been added (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:881 new metadata property: 0, default.configured.audio.sink, Spa:String:JSON, {"name":"bluez_output.38_18_4C_D2_A5_E2.a2dp-sink"} (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:881 new metadata property: 0, default.configured.audio.source, Spa:String:JSON, {"name":"alsa_input.usb-Blue_Microphones_Yeti_Nano_2153SG00B838_888-000439040606-00.iec958-stereo"} (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:881 new metadata property: 0, default.audio.sink, Spa:String:JSON, {"name":"alsa_output.pci-0000_00_1f.3.analog-stereo"} (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:881 new metadata property: 0, default.audio.source, Spa:String:JSON, {"name":"alsa_input.usb-046d_HD_Pro_Webcam_C920_EC3E1A9F-02.analog-stereo"} (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:881 new metadata property: 0, default.video.source, Spa:String:JSON, {"name":"v4l2_input.pci-0000_00_14.0-usb-0_6_1.0"} (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:881 new metadata property: 169, target.node, Spa:Id, 142 (easyeffects:2): easyeffects-DEBUG: 09:43:05.298: pipe_manager.cpp:881 new metadata property: 169, target.object, Spa:Id, 1117 (easyeffects:2): easyeffects-DEBUG: 09:43:05.299: pipe_manager.cpp:1489 easyeffects_sink node successfully retrieved with id 79 and serial 1282 (easyeffects:2): easyeffects-DEBUG: 09:43:05.299: pipe_manager.cpp:1494 easyeffects_source node successfully retrieved with id 154 and serial 1283 (easyeffects:2): easyeffects-DEBUG: 09:43:05.302: plugin_base.cpp:284 soe: output_level successfully connected to PipeWire graph (easyeffects:2): easyeffects-DEBUG: 09:43:05.304: plugin_base.cpp:284 soe: spectrum successfully connected to PipeWire graph (easyeffects:2): easyeffects-DEBUG: 09:43:05.310: plugin_base.cpp:284 sie: output_level successfully connected to PipeWire graph (easyeffects:2): easyeffects-DEBUG: 09:43:05.311: plugin_base.cpp:284 sie: spectrum successfully connected to PipeWire graph (easyeffects:2): easyeffects-DEBUG: 09:43:05.315: output_level.cpp:37 soe: output_level: new PipeWire blocksize: 1024 (easyeffects:2): easyeffects-DEBUG: 09:43:05.326: lv2_wrapper.cpp:100 http://lsp-plug.in/plugins/lv2/sc_compressor_stereo requires feature: http://lv2plug.in/ns/ext/urid#map (easyeffects:2): easyeffects-DEBUG: 09:43:05.352: rnnoise.cpp:269 sie: rnnoise using the standard model. (easyeffects:2): easyeffects-DEBUG: 09:43:05.365: lv2_wrapper.cpp:100 http://lsp-plug.in/plugins/lv2/sc_limiter_stereo requires feature: http://lv2plug.in/ns/ext/urid#map (easyeffects:2): easyeffects-DEBUG: 09:43:05.367: plugin_base.cpp:284 sie: compressor successfully connected to PipeWire graph (easyeffects:2): easyeffects-DEBUG: 09:43:05.396: plugin_base.cpp:284 sie: filter successfully connected to PipeWire graph (easyeffects:2): easyeffects-DEBUG: 09:43:05.399: plugin_base.cpp:284 sie: deesser successfully connected to PipeWire graph (easyeffects:2): easyeffects-DEBUG: 09:43:05.401: plugin_base.cpp:284 sie: rnnoise successfully connected to PipeWire graph (easyeffects:2): easyeffects-DEBUG: 09:43:05.403: plugin_base.cpp:284 sie: limiter successfully connected to PipeWire graph easyeffects-INFO: 09:43:05.412: application.cpp:48 disabling global bypass (easyeffects:2): easyeffects-DEBUG: 09:43:05.415: application_ui.cpp:84 Icon Theme Adwaita detected (easyeffects:2): easyeffects-DEBUG: 09:43:05.528: rnnoise_ui.cpp:374 model directory already exists: /home/aaron/.var/app/com.github.wwmm.easyeffects/config/easyeffects/rnnoise (easyeffects:2): easyeffects-DEBUG: 09:43:05.684: application.cpp:84 new default output device: alsa_output.pci-0000_00_1f.3.analog-stereo (easyeffects:2): easyeffects-DEBUG: 09:43:05.686: pipe_manager.cpp:881 new metadata property: 169, target.node, Spa:Id, 79 (easyeffects:2): easyeffects-DEBUG: 09:43:05.686: pipe_manager.cpp:881 new metadata property: 169, target.object, Spa:Id, 1282 (easyeffects:2): easyeffects-DEBUG: 09:43:05.686: pipe_manager.cpp:1175 Brave port 166 is connected to easyeffects_sink port 152 (easyeffects:2): easyeffects-DEBUG: 09:43:05.686: pipe_manager.cpp:1175 Brave port 103 is connected to easyeffects_sink port 153 (easyeffects:2): easyeffects-DEBUG: 09:43:05.691: application.cpp:92 new default input device: alsa_input.usb-046d_HD_Pro_Webcam_C920_EC3E1A9F-02.analog-stereo (easyeffects:2): easyeffects-DEBUG: 09:43:05.702: application.cpp:104 device alsa_card.usb-046d_HD_Pro_Webcam_C920_EC3E1A9F-02 has changed its input route to: analog-input-mic (easyeffects:2): easyeffects-DEBUG: 09:43:05.702: application.cpp:104 device alsa_card.pci-0000_00_1f.3 has changed its input route to: analog-input-internal-mic (easyeffects:2): easyeffects-DEBUG: 09:43:05.702: application.cpp:124 input autoloading: the target node name does not match the input device name (easyeffects:2): easyeffects-DEBUG: 09:43:05.702: application.cpp:136 device alsa_card.pci-0000_00_1f.3 has changed its output route to: analog-output-speaker (easyeffects:2): easyeffects-DEBUG: 09:43:09.161: pipe_manager.cpp:881 new metadata property: 169, target.node, , (easyeffects:2): easyeffects-DEBUG: 09:43:09.161: pipe_manager.cpp:881 new metadata property: 169, target.object, , (easyeffects:2): easyeffects-DEBUG: 09:43:09.161: pipe_manager.cpp:1175 Brave port 166 is connected to alsa_output.pci-0000_00_1f.3.analog-stereo port 178 (easyeffects:2): easyeffects-DEBUG: 09:43:09.161: pipe_manager.cpp:1175 Brave port 103 is connected to alsa_output.pci-0000_00_1f.3.analog-stereo port 77 (easyeffects:2): easyeffects-DEBUG: 09:43:13.102: pipe_manager.cpp:881 new metadata property: 169, target.node, Spa:Id, 79 (easyeffects:2): easyeffects-DEBUG: 09:43:13.102: pipe_manager.cpp:881 new metadata property: 169, target.object, Spa:Id, 1282 (easyeffects:2): easyeffects-DEBUG: 09:43:13.102: pipe_manager.cpp:1175 Brave port 166 is connected to easyeffects_sink port 152 (easyeffects:2): easyeffects-DEBUG: 09:43:13.102: pipe_manager.cpp:1175 Brave port 103 is connected to easyeffects_sink port 153 (easyeffects:2): easyeffects-DEBUG: 09:43:15.484: stream_input_effects.cpp:169 No app linked to our device wants to play. Unlinking our filters. ```

Additional Information

No response

wwmm commented 2 years ago

soe: output_level: new PipeWire blocksize: 1024

If we know the current blocksize (latency) then our pipeline is processing audio buffers. Usually when this happens and there is no audio the problem is that something muted our virtual sinks. Take a look at #1760.

ZerkerEOD commented 2 years ago

soe: output_level: new PipeWire blocksize: 1024

If we know the current blocksize (latency) then our pipeline is processing audio buffers. Usually when this happens and there is no audio the problem is that something muted our virtual sinks. Take a look at #1760.

So following that Pavucontrol did not help me and didn't show it muted, but I looked into the system settings and found out that it was in fact muted. Thanks for this.

wwmm commented 2 years ago

Ok. Thanks for the feedback @ZerkerEOD

@Digitalone1 and @vchernin. In one of my last commits I disabled our virtual devices volume and mute controls. Let's see if this kind of issue stops happening. I know some users like to change our virtual devices volume but this random muting problem is happening too often for this to be worth it. It is not clear at all why our devices are being muted without the users consent.

Digitalone1 commented 2 years ago

No problem, I never had the need to change the volume of the virtual sink.

Digitalone1 commented 2 years ago

@wwmm Shouldn't we remove also the option to restore the volume of virtual devices?

wwmm commented 2 years ago

Shouldn't we remove also the option to restore the volume of virtual devices?

Yes. Specially because they were not avoiding our sinks to stay muted. Now that I think about it it is really weird resetting the mute state on our side was not working. Maybe PipeWire has some kind of bug affecting this.

I will remove this restoration code now. I started to think about multiple filters instances and forgot to do it.

wwmm commented 2 years ago

@vchernin the patch file 0001-Background-portal-support-for-autostart-and-shutdown will have to be updated now that the volume restoration code has been removed.