easyeffects icon indicating copy to clipboard operation
easyeffects copied to clipboard

Switching output devices causes EasyEffects to not output any sort of audio.

Open TermoZour opened this issue 11 months ago • 15 comments

EasyEffects Version

7.0.5

What package are you using?

Flatpak (Flathub)

Distribution

Pop!_OS 22.04 LTS

Describe the bug

When I start EasyEffects on a given output device, EasyEffects works correctly. As soon as I switch the output device either through an extension or the Settings, the EQ shows no output and no audio can be heard. Switching back to previous output device does not solve the problem.

I tried disabling loading of a preset for a given device and just have 1 preset with an Autogain so I have some effects going through EasyEffects. The issue still occurs.

Closing EasyEffects (Shutdown on window closing) makes audio work again as well as switching between output devices.

Expected Behavior

EasyEffects should continue to output audio, automatically loading the preset for a given device as needed.

Debug Log

Debug Log (no autoloading of preset)
(process:2): easyeffects-DEBUG: 17:37:41.488: 	easyeffects.cpp:35	easyeffects version: 7.0.5
(process:2): easyeffects-DEBUG: 17:37:41.488: 	easyeffects.cpp:45	locale directory: /app/share/locale
(easyeffects:2): easyeffects-DEBUG: 17:37:41.493: 	presets_manager.cpp:49	system input presets directory: "/app/etc/xdg/easyeffects/input"; 
(easyeffects:2): easyeffects-DEBUG: 17:37:41.493: 	presets_manager.cpp:49	system input presets directory: "/etc/easyeffects/input"; 
(easyeffects:2): easyeffects-DEBUG: 17:37:41.493: 	presets_manager.cpp:49	system input presets directory: "/etc/xdg/easyeffects/input"; 
(easyeffects:2): easyeffects-DEBUG: 17:37:41.493: 	presets_manager.cpp:52	system output presets directory: "/app/etc/xdg/easyeffects/output"; 
(easyeffects:2): easyeffects-DEBUG: 17:37:41.493: 	presets_manager.cpp:52	system output presets directory: "/etc/easyeffects/output"; 
(easyeffects:2): easyeffects-DEBUG: 17:37:41.493: 	presets_manager.cpp:52	system output presets directory: "/etc/xdg/easyeffects/output"; 
(easyeffects:2): easyeffects-DEBUG: 17:37:41.493: 	presets_manager.cpp:194	user presets directory already exists: /home/termozour/.var/app/com.github.wwmm.easyeffects/config/easyeffects/
(easyeffects:2): easyeffects-DEBUG: 17:37:41.493: 	presets_manager.cpp:194	user presets directory already exists: /home/termozour/.var/app/com.github.wwmm.easyeffects/config/easyeffects/input
(easyeffects:2): easyeffects-DEBUG: 17:37:41.493: 	presets_manager.cpp:194	user presets directory already exists: /home/termozour/.var/app/com.github.wwmm.easyeffects/config/easyeffects/output
(easyeffects:2): easyeffects-DEBUG: 17:37:41.493: 	presets_manager.cpp:194	user presets directory already exists: /home/termozour/.var/app/com.github.wwmm.easyeffects/config/easyeffects/autoload/input
(easyeffects:2): easyeffects-DEBUG: 17:37:41.493: 	presets_manager.cpp:194	user presets directory already exists: /home/termozour/.var/app/com.github.wwmm.easyeffects/config/easyeffects/autoload/output
(easyeffects:2): easyeffects-DEBUG: 17:37:41.552: 	pipe_manager.cpp:1429	compiled with PipeWire: 0.3.69
(easyeffects:2): easyeffects-DEBUG: 17:37:41.552: 	pipe_manager.cpp:1430	linked to PipeWire: 0.3.69
(easyeffects:2): easyeffects-DEBUG: 17:37:41.560: 	pipe_manager.cpp:1400	core version: 0.3.74
(easyeffects:2): easyeffects-DEBUG: 17:37:41.560: 	pipe_manager.cpp:1401	core name: pipewire-0
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:1312	found metadata: settings
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:1312	found metadata: default
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:1312	found metadata: route-settings
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:1167	Audio/Sink 32 alsa_output.usb-Razer_Razer_Nari_Ultimate-00.analog-game with serial 49 has been added
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:1167	Audio/Source 40 alsa_input.usb-Razer_Razer_Nari_Ultimate-00.analog-chat with serial 50 has been added
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:1167	Stream/Output/Audio 72 spotify with serial 527 has been added
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:1167	Audio/Sink 109 alsa_output.pci-0000_00_1f.3.hdmi-stereo with serial 1655 has been added
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:1167	Audio/Source 46 alsa_input.pci-0000_00_1f.3.analog-stereo.10 with serial 1656 has been added
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:1207	spotify port 71 is connected to alsa_output.pci-0000_00_1f.3.hdmi-stereo port 49
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:1207	spotify port 77 is connected to alsa_output.pci-0000_00_1f.3.hdmi-stereo port 39
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:1167	Audio/Sink 81 easyeffects_sink with serial 2026 has been added
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:1167	Audio/Source/Virtual 80 easyeffects_source with serial 2027 has been added
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:900	new metadata property: 0, default.configured.audio.sink, Spa:String:JSON, { "name": "alsa_output.pci-0000_00_1f.3.hdmi-stereo" }
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:900	new metadata property: 0, default.configured.audio.source, Spa:String:JSON, {"name":"alsa_input.usb-Razer_Razer_Nari_Ultimate-00.analog-chat"}
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:900	new metadata property: 0, default.audio.sink, Spa:String:JSON, {"name":"alsa_output.pci-0000_00_1f.3.hdmi-stereo"}
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:900	new metadata property: 0, default.audio.source, Spa:String:JSON, {"name":"alsa_input.usb-Razer_Razer_Nari_Ultimate-00.analog-chat"}
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:900	new metadata property: 72, target.node, Spa:Id, 76
(easyeffects:2): easyeffects-DEBUG: 17:37:41.561: 	pipe_manager.cpp:900	new metadata property: 72, target.object, Spa:Id, 1668
(easyeffects:2): easyeffects-DEBUG: 17:37:41.562: 	pipe_manager.cpp:1524	easyeffects_sink node successfully retrieved with id 81 and serial 2026
(easyeffects:2): easyeffects-DEBUG: 17:37:41.562: 	pipe_manager.cpp:1529	easyeffects_source node successfully retrieved with id 80 and serial 2027
(easyeffects:2): easyeffects-DEBUG: 17:37:41.566: 	plugin_base.cpp:370	soe: output_level successfully connected to PipeWire graph
(easyeffects:2): easyeffects-DEBUG: 17:37:41.567: 	plugin_base.cpp:370	soe: spectrum successfully connected to PipeWire graph
(easyeffects:2): easyeffects-DEBUG: 17:37:41.569: 	plugin_base.cpp:370	soe: autogain successfully connected to PipeWire graph
(easyeffects:2): easyeffects-DEBUG: 17:37:41.569: 	pipe_manager.cpp:1207	easyeffects_sink port 76 is connected to ee_soe_autogain port 142
(easyeffects:2): easyeffects-DEBUG: 17:37:41.569: 	pipe_manager.cpp:1207	easyeffects_sink port 79 is connected to ee_soe_autogain port 127
(easyeffects:2): easyeffects-DEBUG: 17:37:41.572: 	plugin_base.cpp:370	sie: output_level successfully connected to PipeWire graph
(easyeffects:2): easyeffects-DEBUG: 17:37:41.573: 	plugin_base.cpp:370	sie: spectrum successfully connected to PipeWire graph
(easyeffects:2): easyeffects-DEBUG: 17:37:41.573: 	rnnoise.cpp:245	sie: rnnoise using the standard model.
(easyeffects:2): easyeffects-DEBUG: 17:37:41.575: 	plugin_base.cpp:370	sie: rnnoise successfully connected to PipeWire graph
(easyeffects:2): easyeffects-DEBUG: 17:37:41.575: 	pipe_manager.cpp:1207	alsa_input.usb-Razer_Razer_Nari_Ultimate-00.analog-chat port 55 is connected to ee_sie_rnnoise port 126
(easyeffects:2): easyeffects-DEBUG: 17:37:41.604: 	stream_output_effects.cpp:317	disconnecting the autogain filter from PipeWire
(easyeffects:2): easyeffects-DEBUG: 17:37:41.606: 	pipe_manager.cpp:213	 157 ee_soe_autogain has been removed
(easyeffects:2): easyeffects-DEBUG: 17:37:41.611: 	plugin_base.cpp:370	soe: autogain successfully connected to PipeWire graph
(easyeffects:2): easyeffects-DEBUG: 17:37:41.611: 	pipe_manager.cpp:1207	easyeffects_sink port 76 is connected to ee_soe_autogain port 139
(easyeffects:2): easyeffects-DEBUG: 17:37:41.611: 	pipe_manager.cpp:1207	easyeffects_sink port 79 is connected to ee_soe_autogain port 91
(easyeffects:2): easyeffects-DEBUG: 17:37:41.613: 	stream_input_effects.cpp:316	disconnecting the rnnoise filter from PipeWire
(easyeffects:2): easyeffects-DEBUG: 17:37:41.614: 	pipe_manager.cpp:213	 124 ee_sie_rnnoise has been removed
(easyeffects:2): easyeffects-DEBUG: 17:37:41.617: 	plugin_base.cpp:370	sie: rnnoise successfully connected to PipeWire graph
(easyeffects:2): easyeffects-DEBUG: 17:37:41.617: 	pipe_manager.cpp:1207	alsa_input.usb-Razer_Razer_Nari_Ultimate-00.analog-chat port 55 is connected to ee_sie_rnnoise port 123
easyeffects-INFO: 17:37:41.618: 	application.cpp:50	disabling global bypass
(easyeffects:2): easyeffects-DEBUG: 17:37:41.638: 	application_ui.cpp:86	Icon Theme Pop detected
(easyeffects:2): easyeffects-DEBUG: 17:37:41.713: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:41.713: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/local/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:41.720: 	rnnoise_ui.cpp:390	model directory already exists: /home/termozour/.var/app/com.github.wwmm.easyeffects/config/easyeffects/rnnoise
(easyeffects:2): easyeffects-DEBUG: 17:37:41.724: 	stream_output_effects.cpp:317	disconnecting the autogain filter from PipeWire
(easyeffects:2): easyeffects-DEBUG: 17:37:41.726: 	pipe_manager.cpp:213	 145 ee_soe_autogain has been removed
(easyeffects:2): easyeffects-DEBUG: 17:37:41.728: 	plugin_base.cpp:370	soe: autogain successfully connected to PipeWire graph
(easyeffects:2): easyeffects-DEBUG: 17:37:41.728: 	pipe_manager.cpp:1207	easyeffects_sink port 76 is connected to ee_soe_autogain port 127
(easyeffects:2): easyeffects-DEBUG: 17:37:41.729: 	pipe_manager.cpp:1207	easyeffects_sink port 79 is connected to ee_soe_autogain port 98
(easyeffects:2): easyeffects-DEBUG: 17:37:41.798: 	stream_input_effects.cpp:316	disconnecting the rnnoise filter from PipeWire
(easyeffects:2): easyeffects-DEBUG: 17:37:41.800: 	pipe_manager.cpp:213	 154 ee_sie_rnnoise has been removed
(easyeffects:2): easyeffects-DEBUG: 17:37:41.802: 	plugin_base.cpp:370	sie: rnnoise successfully connected to PipeWire graph
(easyeffects:2): easyeffects-DEBUG: 17:37:41.802: 	pipe_manager.cpp:1207	alsa_input.usb-Razer_Razer_Nari_Ultimate-00.analog-chat port 55 is connected to ee_sie_rnnoise port 153
(easyeffects:2): easyeffects-DEBUG: 17:37:41.803: 	stream_output_effects.cpp:317	disconnecting the autogain filter from PipeWire
(easyeffects:2): easyeffects-DEBUG: 17:37:41.804: 	pipe_manager.cpp:213	 142 ee_soe_autogain has been removed
(easyeffects:2): easyeffects-DEBUG: 17:37:41.805: 	plugin_base.cpp:370	soe: autogain successfully connected to PipeWire graph
(easyeffects:2): easyeffects-DEBUG: 17:37:41.806: 	pipe_manager.cpp:1207	easyeffects_sink port 76 is connected to ee_soe_autogain port 139
(easyeffects:2): easyeffects-DEBUG: 17:37:41.806: 	pipe_manager.cpp:1207	easyeffects_sink port 79 is connected to ee_soe_autogain port 117
(easyeffects:2): easyeffects-DEBUG: 17:37:41.806: 	application.cpp:78	new default output device: alsa_output.pci-0000_00_1f.3.hdmi-stereo
(easyeffects:2): easyeffects-DEBUG: 17:37:41.807: 	stream_output_effects.cpp:317	disconnecting the autogain filter from PipeWire
(easyeffects:2): easyeffects-DEBUG: 17:37:41.807: 	pipe_manager.cpp:213	 151 ee_soe_autogain has been removed
(easyeffects:2): easyeffects-DEBUG: 17:37:41.809: 	plugin_base.cpp:370	soe: autogain successfully connected to PipeWire graph
(easyeffects:2): easyeffects-DEBUG: 17:37:41.809: 	pipe_manager.cpp:1207	easyeffects_sink port 76 is connected to ee_soe_autogain port 138
(easyeffects:2): easyeffects-DEBUG: 17:37:41.809: 	pipe_manager.cpp:1207	easyeffects_sink port 79 is connected to ee_soe_autogain port 127
(easyeffects:2): easyeffects-DEBUG: 17:37:41.811: 	application.cpp:86	new default input device: alsa_input.usb-Razer_Razer_Nari_Ultimate-00.analog-chat
(easyeffects:2): easyeffects-DEBUG: 17:37:41.811: 	stream_input_effects.cpp:316	disconnecting the rnnoise filter from PipeWire
(easyeffects:2): easyeffects-DEBUG: 17:37:41.812: 	pipe_manager.cpp:213	 156 ee_sie_rnnoise has been removed
(easyeffects:2): easyeffects-DEBUG: 17:37:41.814: 	plugin_base.cpp:370	sie: rnnoise successfully connected to PipeWire graph
(easyeffects:2): easyeffects-DEBUG: 17:37:41.814: 	pipe_manager.cpp:1207	alsa_input.usb-Razer_Razer_Nari_Ultimate-00.analog-chat port 55 is connected to ee_sie_rnnoise port 140
(easyeffects:2): easyeffects-DEBUG: 17:37:41.818: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:41.818: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/local/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:41.818: 	application.cpp:98	device alsa_card.pci-0000_00_1f.3 has changed its input route to: analog-input-internal-mic
(easyeffects:2): easyeffects-DEBUG: 17:37:41.818: 	application.cpp:118	input autoloading: the target node name does not match the input device name
(easyeffects:2): easyeffects-DEBUG: 17:37:41.818: 	application.cpp:130	device alsa_card.pci-0000_00_1f.3 has changed its output route to: hdmi-output-0
(easyeffects:2): easyeffects-DEBUG: 17:37:41.818: 	application.cpp:130	device alsa_card.usb-Razer_Razer_Nari_Ultimate-00 has changed its output route to: razer-nari-output-game
(easyeffects:2): easyeffects-DEBUG: 17:37:41.818: 	application.cpp:150	output autoloading: the target node name does not match the output device name
(easyeffects:2): easyeffects-DEBUG: 17:37:41.818: 	application.cpp:98	device alsa_card.usb-Razer_Razer_Nari_Ultimate-00 has changed its input route to: razer-nari-input
(easyeffects:2): easyeffects-DEBUG: 17:37:41.818: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:41.818: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/local/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:41.818: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:41.818: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/local/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:43.580: 	pipe_manager.cpp:900	new metadata property: 72, target.node, Spa:Id, 81
(easyeffects:2): easyeffects-DEBUG: 17:37:43.581: 	pipe_manager.cpp:900	new metadata property: 72, target.object, Spa:Id, 2026
(easyeffects:2): easyeffects-DEBUG: 17:37:43.581: 	pipe_manager.cpp:1207	spotify port 71 is connected to easyeffects_sink port 68
(easyeffects:2): easyeffects-DEBUG: 17:37:43.581: 	pipe_manager.cpp:1207	spotify port 77 is connected to easyeffects_sink port 86
(easyeffects:2): easyeffects-DEBUG: 17:37:43.582: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:43.582: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/local/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:43.590: 	output_level.cpp:37	soe: output_level: PipeWire blocksize: 2048
(easyeffects:2): easyeffects-DEBUG: 17:37:43.590: 	output_level.cpp:38	soe: output_level: PipeWire sampling rate: 88200
(easyeffects:2): easyeffects-DEBUG: 17:37:50.387: 	pipe_manager.cpp:213	Audio/Sink 109 alsa_output.pci-0000_00_1f.3.hdmi-stereo has been removed
(easyeffects:2): easyeffects-DEBUG: 17:37:50.387: 	pipe_manager.cpp:213	Audio/Source 46 alsa_input.pci-0000_00_1f.3.analog-stereo.10 has been removed
(easyeffects:2): easyeffects-DEBUG: 17:37:50.387: 	pipe_manager.cpp:1167	Audio/Sink 46 alsa_output.pci-0000_00_1f.3.analog-stereo with serial 2174 has been added
(easyeffects:2): easyeffects-DEBUG: 17:37:50.387: 	pipe_manager.cpp:1167	Audio/Source 69 alsa_input.pci-0000_00_1f.3.analog-stereo.11 with serial 2175 has been added
(easyeffects:2): easyeffects-DEBUG: 17:37:50.387: 	stream_output_effects.cpp:317	disconnecting the autogain filter from PipeWire
(easyeffects:2): easyeffects-DEBUG: 17:37:50.389: 	pipe_manager.cpp:213	 157 ee_soe_autogain has been removed
(easyeffects:2): easyeffects-DEBUG: 17:37:50.389: 	pipe_manager.cpp:900	new metadata property: 0, default.audio.sink, Spa:String:JSON, {"name":"easyeffects_sink"}
(easyeffects:2): easyeffects-DEBUG: 17:37:50.391: 	plugin_base.cpp:370	soe: autogain successfully connected to PipeWire graph
(easyeffects:2): easyeffects-DEBUG: 17:37:50.392: 	pipe_manager.cpp:1207	easyeffects_sink port 76 is connected to ee_soe_autogain port 116
(easyeffects:2): easyeffects-DEBUG: 17:37:50.392: 	pipe_manager.cpp:1207	easyeffects_sink port 79 is connected to ee_soe_autogain port 157
(easyeffects:2): easyeffects-DEBUG: 17:37:50.392: 	pipe_manager.cpp:900	new metadata property: 0, default.configured.audio.sink, Spa:String:JSON, { "name": "alsa_output.pci-0000_00_1f.3.analog-stereo" }
(easyeffects:2): easyeffects-DEBUG: 17:37:50.396: 	node_info_holder.cpp:98	109, alsa_output.pci-0000_00_1f.3.hdmi-stereo finalized
(easyeffects:2): easyeffects-DEBUG: 17:37:50.398: 	pipe_manager.cpp:900	new metadata property: 0, default.audio.sink, Spa:String:JSON, {"name":"alsa_output.pci-0000_00_1f.3.analog-stereo"}
(easyeffects:2): easyeffects-DEBUG: 17:37:50.400: 	node_info_holder.cpp:98	46, alsa_input.pci-0000_00_1f.3.analog-stereo.10 finalized
(easyeffects:2): easyeffects-DEBUG: 17:37:50.400: 	application.cpp:130	device alsa_card.pci-0000_00_1f.3 has changed its output route to: analog-output-speaker
(easyeffects:2): easyeffects-DEBUG: 17:37:50.400: 	application.cpp:150	output autoloading: the target node name does not match the output device name
(easyeffects:2): easyeffects-DEBUG: 17:37:50.400: 	application.cpp:78	new default output device: alsa_output.pci-0000_00_1f.3.analog-stereo
(easyeffects:2): easyeffects-DEBUG: 17:37:50.400: 	stream_output_effects.cpp:317	disconnecting the autogain filter from PipeWire
(easyeffects:2): easyeffects-DEBUG: 17:37:50.401: 	pipe_manager.cpp:213	 117 ee_soe_autogain has been removed
(easyeffects:2): easyeffects-DEBUG: 17:37:50.403: 	plugin_base.cpp:370	soe: autogain successfully connected to PipeWire graph
(easyeffects:2): easyeffects-DEBUG: 17:37:50.404: 	pipe_manager.cpp:1207	easyeffects_sink port 76 is connected to ee_soe_autogain port 138
(easyeffects:2): easyeffects-DEBUG: 17:37:50.404: 	pipe_manager.cpp:1207	easyeffects_sink port 79 is connected to ee_soe_autogain port 109
(easyeffects:2): easyeffects-DEBUG: 17:37:50.410: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:50.410: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/local/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:50.437: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:50.437: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/local/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:51.835: 	stream_input_effects.cpp:165	No app linked to our device wants to play. Unlinking our filters.
(easyeffects:2): easyeffects-DEBUG: 17:37:51.835: 	stream_input_effects.cpp:316	disconnecting the rnnoise filter from PipeWire
(easyeffects:2): easyeffects-DEBUG: 17:37:51.838: 	pipe_manager.cpp:213	 159 ee_sie_rnnoise has been removed
(easyeffects:2): easyeffects-DEBUG: 17:37:57.011: 	pipe_manager.cpp:213	Audio/Sink 46 alsa_output.pci-0000_00_1f.3.analog-stereo has been removed
(easyeffects:2): easyeffects-DEBUG: 17:37:57.011: 	pipe_manager.cpp:213	Audio/Source 69 alsa_input.pci-0000_00_1f.3.analog-stereo.11 has been removed
(easyeffects:2): easyeffects-DEBUG: 17:37:57.011: 	pipe_manager.cpp:1167	Audio/Sink 69 alsa_output.pci-0000_00_1f.3.hdmi-stereo with serial 2208 has been added
(easyeffects:2): easyeffects-DEBUG: 17:37:57.011: 	pipe_manager.cpp:1167	Audio/Source 139 alsa_input.pci-0000_00_1f.3.analog-stereo.12 with serial 2209 has been added
(easyeffects:2): easyeffects-DEBUG: 17:37:57.011: 	node_info_holder.cpp:98	46, alsa_output.pci-0000_00_1f.3.analog-stereo finalized
(easyeffects:2): easyeffects-DEBUG: 17:37:57.012: 	node_info_holder.cpp:98	69, alsa_input.pci-0000_00_1f.3.analog-stereo.11 finalized
(easyeffects:2): easyeffects-DEBUG: 17:37:57.016: 	application.cpp:130	device alsa_card.pci-0000_00_1f.3 has changed its output route to: hdmi-output-0
(easyeffects:2): easyeffects-DEBUG: 17:37:57.016: 	application.cpp:150	output autoloading: the target node name does not match the output device name
(easyeffects:2): easyeffects-DEBUG: 17:37:57.016: 	pipe_manager.cpp:900	new metadata property: 0, default.audio.sink, Spa:String:JSON, {"name":"easyeffects_sink"}
(easyeffects:2): easyeffects-DEBUG: 17:37:57.020: 	pipe_manager.cpp:900	new metadata property: 0, default.configured.audio.sink, Spa:String:JSON, { "name": "alsa_output.pci-0000_00_1f.3.hdmi-stereo" }
(easyeffects:2): easyeffects-DEBUG: 17:37:57.022: 	pipe_manager.cpp:900	new metadata property: 0, default.audio.sink, Spa:String:JSON, {"name":"alsa_output.pci-0000_00_1f.3.hdmi-stereo"}
(easyeffects:2): easyeffects-DEBUG: 17:37:57.022: 	application.cpp:78	new default output device: alsa_output.pci-0000_00_1f.3.hdmi-stereo
(easyeffects:2): easyeffects-DEBUG: 17:37:57.022: 	stream_output_effects.cpp:317	disconnecting the autogain filter from PipeWire
(easyeffects:2): easyeffects-DEBUG: 17:37:57.023: 	pipe_manager.cpp:213	 142 ee_soe_autogain has been removed
(easyeffects:2): easyeffects-DEBUG: 17:37:57.025: 	plugin_base.cpp:370	soe: autogain successfully connected to PipeWire graph
(easyeffects:2): easyeffects-DEBUG: 17:37:57.025: 	pipe_manager.cpp:1207	easyeffects_sink port 76 is connected to ee_soe_autogain port 91
(easyeffects:2): easyeffects-DEBUG: 17:37:57.025: 	pipe_manager.cpp:1207	easyeffects_sink port 79 is connected to ee_soe_autogain port 142
(easyeffects:2): easyeffects-DEBUG: 17:37:57.032: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:57.032: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/local/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:57.049: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:37:57.049: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/local/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:38:01.104: 	effects_base.cpp:248	soe: pipeline latency: 0 ms
(easyeffects:2): easyeffects-DEBUG: 17:38:01.104: 	stream_output_effects.cpp:317	disconnecting the autogain filter from PipeWire
(easyeffects:2): easyeffects-DEBUG: 17:38:01.107: 	pipe_manager.cpp:213	 157 ee_soe_autogain has been removed
(easyeffects:2): easyeffects-DEBUG: 17:38:01.112: 	autogain_ui.cpp:183	disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:01.113: 	autogain_ui.cpp:26	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:01.113: 	autogain_ui.cpp:193	finalize
(easyeffects:2): easyeffects-DEBUG: 17:38:01.118: 	app_info.cpp:319	spotify disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:01.119: 	app_info.cpp:327	spotify finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:01.119: 	app_info.cpp:28	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:01.120: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:38:01.120: 	app_info.cpp:141	cannot lookup application icon com.spotify.Client in /usr/local/share/pixmaps
(easyeffects:2): easyeffects-DEBUG: 17:38:01.121: 	presets_manager.cpp:571	successfully loaded preset: /home/termozour/.var/app/com.github.wwmm.easyeffects/config/easyeffects/output/Default.json
(easyeffects:2): easyeffects-DEBUG: 17:38:10.025: 	application_ui.cpp:206	disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.027: 	app_info.cpp:319	spotify disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.028: 	app_info.cpp:327	spotify finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.028: 	app_info.cpp:28	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.031: 	presets_menu.cpp:476	disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.032: 	presets_menu.cpp:26	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.032: 	presets_menu.cpp:486	finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.032: 	effects_box.cpp:466	disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.032: 	chart.cpp:28	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.032: 	chart.cpp:600	finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.032: 	blocklist_menu.cpp:193	disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.032: 	blocklist_menu.cpp:26	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.032: 	blocklist_menu.cpp:203	finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.032: 	apps_box.cpp:389	disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.032: 	node_info_holder.cpp:98	72, spotify finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.032: 	apps_box.cpp:26	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.032: 	apps_box.cpp:399	finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.032: 	plugins_box.cpp:739	disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.033: 	plugins_menu.cpp:250	disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.033: 	plugins_menu.cpp:30	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.033: 	plugins_menu.cpp:260	finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.033: 	plugins_box.cpp:30	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.033: 	plugins_box.cpp:749	finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.033: 	effects_box.cpp:32	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.033: 	effects_box.cpp:476	finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.033: 	effects_box.cpp:466	disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.033: 	chart.cpp:28	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.033: 	chart.cpp:600	finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.033: 	blocklist_menu.cpp:193	disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.033: 	blocklist_menu.cpp:26	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.033: 	blocklist_menu.cpp:203	finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.034: 	apps_box.cpp:389	disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.034: 	apps_box.cpp:26	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.034: 	apps_box.cpp:399	finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.034: 	plugins_box.cpp:739	disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.034: 	rnnoise_ui.cpp:323	disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.034: 	rnnoise_ui.cpp:38	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.034: 	rnnoise_ui.cpp:333	finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.036: 	plugins_menu.cpp:250	disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.036: 	plugins_menu.cpp:30	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.036: 	plugins_menu.cpp:260	finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.036: 	plugins_box.cpp:30	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.036: 	plugins_box.cpp:749	finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.036: 	effects_box.cpp:32	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.036: 	effects_box.cpp:476	finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.036: 	pipe_manager_box.cpp:758	disposed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.038: 	node_info_holder.cpp:98	69, alsa_output.pci-0000_00_1f.3.hdmi-stereo finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.039: 	node_info_holder.cpp:98	32, alsa_output.usb-Razer_Razer_Nari_Ultimate-00.analog-game finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.039: 	node_info_holder.cpp:98	139, alsa_input.pci-0000_00_1f.3.analog-stereo.12 finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.039: 	node_info_holder.cpp:98	40, alsa_input.usb-Razer_Razer_Nari_Ultimate-00.analog-chat finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.039: 	pipe_manager_box.cpp:28	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.039: 	test_signals.cpp:200	destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.040: 	pipe_manager_box.cpp:768	finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.040: 	application_ui.cpp:29	data struct destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.040: 	application_ui.cpp:216	finalized
(easyeffects:2): easyeffects-DEBUG: 17:38:10.040: 	presets_manager.cpp:180	destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.040: 	stream_input_effects.cpp:112	destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.040: 	effects_base.cpp:97	effects_base: destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.040: 	rnnoise.cpp:87	sie: rnnoise destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.041: 	spectrum.cpp:59	sie: spectrum destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.041: 	output_level.cpp:33	sie: output_level destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.042: 	stream_output_effects.cpp:112	destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.042: 	effects_base.cpp:97	effects_base: destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.043: 	autogain.cpp:107	soe: autogain destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.043: 	spectrum.cpp:59	soe: spectrum destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.043: 	output_level.cpp:33	soe: output_level destroyed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.043: 	pipe_manager.cpp:1552	Destroying PipeWire registry...
(easyeffects:2): easyeffects-DEBUG: 17:38:10.043: 	pipe_manager.cpp:1555	Disconnecting PipeWire core...
(easyeffects:2): easyeffects-DEBUG: 17:38:10.043: 	pipe_manager.cpp:213	Audio/Sink 32 alsa_output.usb-Razer_Razer_Nari_Ultimate-00.analog-game has been removed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.043: 	pipe_manager.cpp:213	Audio/Source 40 alsa_input.usb-Razer_Razer_Nari_Ultimate-00.analog-chat has been removed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.043: 	pipe_manager.cpp:213	Stream/Output/Audio 72 spotify has been removed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.043: 	pipe_manager.cpp:213	Audio/Sink 69 alsa_output.pci-0000_00_1f.3.hdmi-stereo has been removed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.043: 	pipe_manager.cpp:213	Audio/Sink 81 easyeffects_sink has been removed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.043: 	pipe_manager.cpp:213	Audio/Source/Virtual 80 easyeffects_source has been removed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.043: 	pipe_manager.cpp:213	Audio/Source 139 alsa_input.pci-0000_00_1f.3.analog-stereo.12 has been removed
(easyeffects:2): easyeffects-DEBUG: 17:38:10.043: 	pipe_manager.cpp:1560	Stopping PipeWire's loop...
(easyeffects:2): easyeffects-DEBUG: 17:38:10.044: 	pipe_manager.cpp:1563	Destroying PipeWire's context...
(easyeffects:2): easyeffects-DEBUG: 17:38:10.044: 	pipe_manager.cpp:1566	Destroying PipeWire's loop...
(easyeffects:2): easyeffects-DEBUG: 17:38:10.044: 	application.cpp:418	Shutting down...
(easyeffects:2): easyeffects-DEBUG: 17:38:10.046: 	easyeffects.cpp:60	Exitting the main function with status: 0

Additional Information

No response

TermoZour avatar Jul 26 '23 14:07 TermoZour

Run pw-dot before and after the problem happens. It will generate a file named pw.dot that can be viewed with the command xdot and will show how are the links between filters and devices as well as the link state. If the links are there but there is no audio the bug is on PipeWire.

wwmm avatar Jul 26 '23 14:07 wwmm

new metadata property: 0, default.audio.sink, Spa:String:JSON, {"name":"easyeffects_sink"}

It seems that at some point our virtual device was set as the default system device. This can cause problems in some situations #1836. Ideally our virtual sink should never be set as the system default output device.

wwmm avatar Jul 26 '23 14:07 wwmm

.dot before changing devices, effects working

pw-before

.dot after changing devices, effects not working. No sound.

pw-after

Seems like the links are there... I will also look into what makes the EE sink default system device. Might be the culprit.

TermoZour avatar Jul 26 '23 15:07 TermoZour

Seems like the links are there...

Yes. And based on pw-dot output they are also in the active state. So there should be audio. Unless something is suddenly being muted somewhere. But the filters do not even allow this to happen. And the mute control in our virtual sink is disabled by default. I was expecting to see some links out of the active state. This is a PipeWire bug that has been around for a long time. But something else seems to be going on in your case.

I will also look into what makes the EE sink default system device. Might be the culprit.

The image does not show to which device the last filter is linked to. Usually when our virtual device is set as default the last filter's output ports won't be linked to another node.

wwmm avatar Jul 26 '23 15:07 wwmm

I am doing some tests on my computer (I have more than one sound card here) and so far nothing strange happens while switching default output devices in Pavucontrol. So some bad interaction between PipeWire and your sound card drivers may be happening. I think we will probably need to talk to PipeWire's developers. If possible open an issue there and let me know when you do so I can follow it there.

wwmm avatar Jul 26 '23 15:07 wwmm

I don't have this issue. I occasionally connect my laptop to my TV through HDMI port and EasyEffects follow the switch of default device correctly. I use Arch, but I suppose this should work also on other distributions.

Anyway, I have to say something about Chromium. Weeks ago I was experiencing issues reported in #2408. I mainly use Brave Browser and have no issues, but I found out that when I switch to Chromium sometimes the default device is changed to EasyEffects Sink.

So if you're using Chromium, please report if this issue is reproducible. I don't know how to reproduce it, but when it happens, I notice I'm using Chromium.

Digitalone1 avatar Jul 26 '23 15:07 Digitalone1

It may be worth to take a look at pw-top while switching devices. It has a column that counts errors in PipeWire's nodes. It will also show what PipeWire is doing to the sampling rate and latency.

but I found out that when I switch to Chromium sometimes the default device is changed to EasyEffects Sink.

That is bizarre. WirePlumber should not switch to another default device just because Chromium is started.

wwmm avatar Jul 26 '23 15:07 wwmm

This is what I get when I have audio set to HDMI output. image

This is what I get when I switch to laptop speaker. No audio after the switch. image

EasyEffects sink disappears then shows up again after a split second during the switch, but otherwise I see nothing weird.

After picking any output device and EasyEffects is started (so effects/audio working), when I open Pavucontrol I see this: image

The interesting thing is that after Pavucontrol was started, switching audio devices (from wherever) worked no problem and EasyEffects kept working. I even closed Pavucontrol and switching devices still works

TermoZour avatar Jul 26 '23 16:07 TermoZour

The interesting thing is that after Pavucontrol was started, switching audio devices (from wherever) worked no problem and EasyEffects kept working. I even closed Pavucontrol and switching devices still works

Pavucontrol level meters are implemented through recording streams that are linked to the input/output device monitors. Maybe these extra links are somehow influencing how PipeWire is managing the PipeWire state.

wwmm avatar Jul 26 '23 16:07 wwmm

@TermoZour

Can you show a video showing the process of changing the output device?

There may be a number of cases.

For example, some of gnome's extensions play independently of the default output device when you change the output device.

Such a case is a bug in gnome's extension.

sephid86 avatar Jul 29 '23 10:07 sephid86

That is bizarre. WirePlumber should not switch to another default device just because Chromium is started.

I know but I noticed that. Luckily I'm using Brave. Maybe I will test Chromium in the next days to see if it's reproducible.

Digitalone1 avatar Jul 30 '23 19:07 Digitalone1

@sephid86 I don't think it's that relevant. No matter from where I switch devices, extension or from System Settings, the audio stops. The EQ Visualizer of EE still keeps playing, but no actual audio is coming out. Not even if I switch back. The only thing that brings it back is killing EasyEffects and starting it again (in which case all applications are disabled and I need to enable them back). After I enable all applications, then future applications are "enabled" as well. Otherwise, all applications remain disabled.

TermoZour avatar Sep 12 '23 16:09 TermoZour

Just noticed the same problem yesterday. I'm on Debian Testing KDE and running EasyEffects as flatpak. Switching output devices causes my PC to not output anything anymore. Killing EasyEffects with flatpak kill com.github.wwmm.easyeffects instantly brings the sound back.

@wwmm Can I do anything to help you with debugging?

marco-kretz avatar Oct 02 '23 06:10 marco-kretz

Can I do anything to help you with debugging?

Not much besides running pw-dot when the problem happens and checking the links state by viewing the resulting file with xdot. But a fix probably will require changes to PipeWire's code. We just ask PipeWire to create the links. From this point on everything is managed by PipeWire. So it will help if someone that can reproduce the issue open an issue at PipeWire's page and let me know about it so I can help them there if necessary.

wwmm avatar Oct 02 '23 14:10 wwmm

I forgot to report that I saw this issue a couple of weeks ago. I was watching a video on the TV through HDMI. Then switched the mode on the TV and finally returned on the HDMI input. But the audio was not working at all. Could not reproduce it every time, but it happened randomly when I was switching inputs on the TV. The only way to recover EasyEffects was to kill and restart it.

Unfortunately I can't reproduce it because I can't use the TV at the moment.

Digitalone1 avatar Oct 17 '23 17:10 Digitalone1