Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

easyeffects killed by DBUS without any reason #3450

Open
jpVm5jYYRE1VIKL opened this issue Oct 11, 2024 · 26 comments
Open

easyeffects killed by DBUS without any reason #3450

jpVm5jYYRE1VIKL opened this issue Oct 11, 2024 · 26 comments

Comments

@jpVm5jYYRE1VIKL
Copy link

EasyEffects Version

7.1.8

What package are you using?

Other (specify below)

Distribution

manjaro

Describe the bug

normally using easyeffects and random moments it just close.

Expected Behavior

must work

Debug Log

Debug Log
(easyeffects:124515): easyeffects-DEBUG: 16:54:06.925:  pipe_manager.cpp:1039   new metadata property: 204, target.node, Spa:Id, 140
(easyeffects:124515): easyeffects-DEBUG: 16:54:06.925:  pipe_manager.cpp:1039   new metadata property: 204, target.object, Spa:Id, 1290
(easyeffects:124515): easyeffects-DEBUG: 16:54:06.935:  app_info.cpp:377         disposed
(easyeffects:124515): easyeffects-DEBUG: 16:54:06.936:  app_info.cpp:385         finalized
(easyeffects:124515): easyeffects-DEBUG: 16:54:06.936:  app_info.cpp:63 data struct destroyed
(easyeffects:124515): easyeffects-DEBUG: 16:54:06.936:  node_info_holder.cpp:104        204, telegram-desktop finalized
(easyeffects:124515): easyeffects-DEBUG: 16:54:06.937:  pipe_manager.cpp:1039   new metadata property: 204, target.node, , 
(easyeffects:124515): easyeffects-DEBUG: 16:54:06.937:  pipe_manager.cpp:1039   new metadata property: 204, target.object, , 
(easyeffects:124515): easyeffects-DEBUG: 16:54:06.945:  pipe_manager.cpp:1346   No node with id 204 in our node_map
(easyeffects:124515): easyeffects-DEBUG: 16:54:06.945:  pipe_manager.cpp:1346   No node with id 204 in our node_map
(easyeffects:124515): easyeffects-DEBUG: 16:54:06.962:  output_level.cpp:45     soe: output_level: PipeWire blocksize: 512
(easyeffects:124515): easyeffects-DEBUG: 16:54:06.962:  output_level.cpp:46     soe: output_level: PipeWire sampling rate: 48000
(easyeffects:124515): easyeffects-DEBUG: 16:54:07.125:  stream_input_effects.cpp:189    No app linked to our device wants to play. Unlinking our filters.
(easyeffects:124515): easyeffects-DEBUG: 16:54:10.905:  pipe_manager.cpp:1039   new metadata property: 0, default.configured.audio.sink, Spa:String:JSON, { "name": "alsa_output.pci-0000_00_1f.3.analog-stereo" }
(easyeffects:124515): easyeffects-DEBUG: 16:54:10.925:  pipe_manager.cpp:1039   new metadata property: 0, default.audio.sink, Spa:String:JSON, {"name":"alsa_output.pci-0000_00_1f.3.analog-stereo"}
(easyeffects:124515): easyeffects-DEBUG: 16:54:10.925:  application.cpp:104     new default output device: alsa_output.pci-0000_00_1f.3.analog-stereo
(easyeffects:124515): easyeffects-DEBUG: 16:54:10.925:  pipe_manager.cpp:1346   No node with id 204 in our node_map
(easyeffects:124515): easyeffects-DEBUG: 16:54:10.925:  pipe_manager.cpp:1346   No node with id 204 in our node_map
(easyeffects:124515): easyeffects-DEBUG: 16:54:10.925:  stream_output_effects.cpp:302   disconnecting the autogain filter from PipeWire
(easyeffects:124515): easyeffects-DEBUG: 16:54:10.930:  output_level.cpp:45     soe: output_level: PipeWire blocksize: 1024
(easyeffects:124515): easyeffects-DEBUG: 16:54:10.930:  output_level.cpp:46     soe: output_level: PipeWire sampling rate: 48000
(easyeffects:124515): easyeffects-DEBUG: 16:54:10.930:  pipe_manager.cpp:265     167 ee_soe_autogain has been removed
(easyeffects:124515): easyeffects-DEBUG: 16:54:10.930:  stream_output_effects.cpp:302   disconnecting the limiter filter from PipeWire
(easyeffects:124515): easyeffects-DEBUG: 16:54:11.163:  pipe_manager.cpp:265     108 ee_soe_limiter has been removed
(easyeffects:124515): easyeffects-DEBUG: 16:54:11.173:  plugin_base.cpp:406     soe: autogain successfully connected to PipeWire graph
(easyeffects:124515): easyeffects-DEBUG: 16:54:11.174:  pipe_manager.cpp:1343   easyeffects_sink port 86 is connected to ee_soe_autogain port 141
(easyeffects:124515): easyeffects-DEBUG: 16:54:11.175:  pipe_manager.cpp:1343   easyeffects_sink port 109 is connected to ee_soe_autogain port 129
(easyeffects:124515): easyeffects-DEBUG: 16:54:11.179:  plugin_base.cpp:406     soe: limiter successfully connected to PipeWire graph
(easyeffects:124515): easyeffects-DEBUG: 16:54:11.180:  pipe_manager.cpp:1343   ee_soe_autogain port 117 is connected to ee_soe_limiter port 134
(easyeffects:124515): easyeffects-DEBUG: 16:54:11.181:  pipe_manager.cpp:1343   ee_soe_autogain port 108 is connected to ee_soe_limiter port 87
(easyeffects:124515): easyeffects-DEBUG: 16:54:11.182:  pipe_manager.cpp:1346   No node with id 137 in our node_map
(easyeffects:124515): easyeffects-DEBUG: 16:54:11.184:  pipe_manager.cpp:1346   No node with id 137 in our node_map
(easyeffects:124515): easyeffects-DEBUG: 16:54:11.185:  pipe_manager.cpp:1346   No node with id 115 in our node_map
(easyeffects:124515): easyeffects-DEBUG: 16:54:11.187:  pipe_manager.cpp:1346   No node with id 115 in our node_map
(easyeffects:124515): easyeffects-DEBUG: 16:54:11.187:  pipe_manager.cpp:1346   No node with id 115 in our node_map
(easyeffects:124515): easyeffects-DEBUG: 16:54:11.188:  pipe_manager.cpp:1346   No node with id 115 in our node_map
(easyeffects:124515): easyeffects-DEBUG: 16:54:11.191:  output_level.cpp:45     soe: output_level: PipeWire blocksize: 512
(easyeffects:124515): easyeffects-DEBUG: 16:54:11.191:  output_level.cpp:46     soe: output_level: PipeWire sampling rate: 48000
Killed

Additional Information

in journalctl it show soemthing like this :

11/10/2024 16:34	pipewire	pw.node: (alsa_output.pci-0000_00_1f.3.analog-stereo-60) graph xrun not-triggered (3 suppressed)
11/10/2024 16:34	pipewire	pw.node: (alsa_output.pci-0000_00_1f.3.analog-stereo-60) xrun state:0x7f7a7a27e008 pending:3/10 s:71888861218413 a:71888869360798 f:71888869371897 waiting:8142385 process:11099 status:triggered
11/10/2024 16:34	pipewire	pw.node: (ee_soe_limiter-130) xrun state:0x7f7a79b8e008 pending:0/2 s:71888882527676 a:71888882528914 f:71888869347224 waiting:1238 process:18446744073696369926 status:awake
11/10/2024 16:34	systemd	dbus-:[email protected]: Main process exited, code=killed, status=9/KILL
11/10/2024 16:34	systemd	dbus-:[email protected]: Failed with result 'signal'.
11/10/2024 16:34	systemd	dbus-:[email protected]: Consumed 24min 51.550s CPU time, 132.8M memory peak.

@jpVm5jYYRE1VIKL
Copy link
Author

After some investigations i can easily recreate issue using telegram-desktop application :

easyeffect killed by systemd after pause video and start video playback again .

(easyeffects:136827): easyeffects-DEBUG: 20:15:44.687:  output_level.cpp:46     soe: output_level: PipeWire sampling rate: 48000
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.756:  pipe_manager.cpp:1303   Stream/Output/Audio 148 telegram-desktop with serial 3629 has been added
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.756:  pipe_manager.cpp:360    The output stream telegram-desktop does not have as target the same output device used as EE: alsa_output.pci-0000_00_1f.3.analog-stereo
 The user wants it to play to device 43. We will ignore this stream.
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.756:  pipe_manager.cpp:424    Stream/Output/Audio 148 telegram-desktop has been removed
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.757:  pipe_manager.cpp:1039   new metadata property: 148, target.node, Spa:Id, 157
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.757:  pipe_manager.cpp:1039   new metadata property: 148, target.object, Spa:Id, 3510
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.759:  app_info.cpp:377         disposed
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.760:  app_info.cpp:385         finalized
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.760:  app_info.cpp:63 data struct destroyed
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.760:  node_info_holder.cpp:104        148, telegram-desktop finalized
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.761:  pipe_manager.cpp:1039   new metadata property: 148, target.node, , 
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.761:  pipe_manager.cpp:1039   new metadata property: 148, target.object, , 
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.762:  pipe_manager.cpp:1346   No node with id 148 in our node_map
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.762:  pipe_manager.cpp:1346   No node with id 148 in our node_map
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.765:  pipe_manager.cpp:1346   No node with id 148 in our node_map
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.765:  pipe_manager.cpp:1346   No node with id 148 in our node_map
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.771:  output_level.cpp:45     soe: output_level: PipeWire blocksize: 512
(easyeffects:136827): easyeffects-DEBUG: 20:15:44.771:  output_level.cpp:46     soe: output_level: PipeWire sampling rate: 48000
Killed

@wwmm
Copy link
Owner

wwmm commented Oct 11, 2024

What is the output of chrt -ap pid where pid is EasyEffects pid number. Often the reason why the system kills EasyEffects is the presence of services like ananicy loading a policy that sets all EasyEffects threads to realtime priority. Something that should never be done.

@jpVm5jYYRE1VIKL
Copy link
Author

What is the output of chrt -ap pid where pid is EasyEffects pid number.

Hi thanks for your reply . This is output from easyeffects :

pid 154370's current scheduling policy: SCHED_OTHER
pid 154370's current scheduling priority: 0
pid 154371's current scheduling policy: SCHED_OTHER
pid 154371's current scheduling priority: 0
pid 154372's current scheduling policy: SCHED_OTHER
pid 154372's current scheduling priority: 0
pid 154373's current scheduling policy: SCHED_OTHER
pid 154373's current scheduling priority: 0
pid 154374's current scheduling policy: SCHED_OTHER
pid 154374's current scheduling priority: 0
pid 154375's current scheduling policy: SCHED_OTHER
pid 154375's current scheduling priority: 0
pid 154377's current scheduling policy: SCHED_OTHER
pid 154377's current scheduling priority: 0
pid 154378's current scheduling policy: SCHED_OTHER
pid 154378's current scheduling priority: 0
pid 154379's current scheduling policy: SCHED_RR|SCHED_RESET_ON_FORK
pid 154379's current scheduling priority: 20
 

@wwmm
Copy link
Owner

wwmm commented Oct 12, 2024

The scheduling priorities are fine. So that is not the source of problem. Which plugins are you using in the effects pipeline? Maybe the system was not fast enough to handle them in the realtime thread and the system killed EasyEffects. But it is hard to see this happening in a recent CPU.

Here on my Arch Linux installation I've never seen the system killing EasyEffects. So there must be something different on Manjaro triggering this. The question is what.

@jpVm5jYYRE1VIKL
Copy link
Author

i using autogain(MS)->limiter . Well i have i7-14700KF i think it is more than enough. Especisally that it is idle andnot have any another tasks.

PS: i know about modern issues with core i7 but i almost sure that this is not an issue.

@wwmm
Copy link
Owner

wwmm commented Oct 12, 2024

i using autogain(MS)->limiter . Well i have i7-14700KF i think it is more than enough. Especisally that it is idle andnot have any another tasks.

PS: i know about modern issues with core i7 but i almost sure that this is not an issue.

This CPU should not have issues with any of the plugins in EasyEffects. I wish the system printed the reason why it kills the process. Some weeks ago several users were having a similar issue but in that case the problem was the presence of ananicy rules that were doing something they should not to do to EasyEffects priorities. But this isn't the case here. Based on the kill message a memory leak also does not seem to be the case =/

@jpVm5jYYRE1VIKL
Copy link
Author

jpVm5jYYRE1VIKL commented Oct 14, 2024

Today got bit more details :

During youtube playback got core :

Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007ffa6ceb296c in ?? () from /usr/lib/libc.so.6
[Current thread is 1 (Thread 0x7ffa66dfe6c0 (LWP 49790))]
(gdb) bt 
#0  0x00007ffa6ceb296c in ?? () from /usr/lib/libc.so.6
#1  0x00007ffa6ceb3902 in ?? () from /usr/lib/libc.so.6
#2  0x00007ffa6ceb4906 in realloc () from /usr/lib/libc.so.6
#3  0x00007ffa6f46fc1b in g_realloc () from /usr/lib/libglib-2.0.so.0
#4  0x00007ffa6f44f29f in ?? () from /usr/lib/libglib-2.0.so.0
#5  0x00007ffa6f44fa49 in ?? () from /usr/lib/libglib-2.0.so.0
#6  0x00007ffa6f454b47 in ?? () from /usr/lib/libglib-2.0.so.0
#7  0x00007ffa6f455107 in g_hash_table_add () from /usr/lib/libglib-2.0.so.0
#8  0x00007ffa6f468900 in ?? () from /usr/lib/libglib-2.0.so.0
#9  0x00007ffa6f468ab8 in g_source_attach () from /usr/lib/libglib-2.0.so.0
#10 0x00007ffa6f469db7 in g_main_context_invoke_full () from /usr/lib/libglib-2.0.so.0
#11 0x00007ffa6e5e4251 in ?? () from /usr/lib/libgio-2.0.so.0
#12 0x00007ffa67e4982f in ?? () from /usr/lib/gio/modules/libdconfsettings.so
#13 0x00007ffa6e5fba39 in ?? () from /usr/lib/libgio-2.0.so.0
#14 0x00007ffa6f469299 in ?? () from /usr/lib/libglib-2.0.so.0
#15 0x00007ffa6f4cbec7 in ?? () from /usr/lib/libglib-2.0.so.0
#16 0x00007ffa6f468795 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#17 0x00007ffa67e462fe in ?? () from /usr/lib/gio/modules/libdconfsettings.so
#18 0x00007ffa6f4991b6 in ?? () from /usr/lib/libglib-2.0.so.0
#19 0x00007ffa6cea339d in ?? () from /usr/lib/libc.so.6
#20 0x00007ffa6cf2849c in ?? () from /usr/lib/libc.so.6

PS: sorry after some investigation i found that this is another issue.

@wwmm
Copy link
Owner

wwmm commented Oct 14, 2024

During youtube playback got core :
PS: sorry after some investigation i found that this is another issue.

Maybe these issues are related. Problems in glib can hit EasyEffects depending on what it is.

@jpVm5jYYRE1VIKL
Copy link
Author

jpVm5jYYRE1VIKL commented Oct 15, 2024

hi. In my original issue that systemd send kill signal to easyeffect it is not crashing. Core dump happend only once before it never happend . Can it be that in a moment when you register service with dbus some parameters wrong installated and systemd detect it as bogus or zombie and send kill ? Is it possible somehow unbind from systemd relation ?

Look what interesting thing i found :

In case if i attach to easyeffects with strace using : strace -p -ff -o sss i cannot recreate issue anymore.
I E with strace attached easyeffects not killed . Without almost immediately killed .

@wwmm
Copy link
Owner

wwmm commented Oct 15, 2024

Can it be that in a moment when you register service with dbus some parameters wrong installated and systemd detect it as bogus or zombie and send kill ? Is it possible somehow unbind from systemd relation ?

As the registration isn't done by EasyEffects code but by glib/gtk even if this is the source of the problem it can not be fixed on our side.

In case if i attach to easyeffects with strace using : strace -p -ff -o sss i cannot recreate issue anymore.
I E with strace attached easyeffects not killed . Without almost immediately killed .

Hum... I can understand this making a difference when there is a segmentation fault caused by thread racing. Running through strace will probably change the timing between threads events. But I do not see how this can make the system to not kill the process. Usually taking too long using critical resources is what makes the system kill a process.

@jpVm5jYYRE1VIKL
Copy link
Author

jpVm5jYYRE1VIKL commented Oct 16, 2024

Is it possible somehow to disable autokill ?
.

i see that most often EE killed if exist "output_level.cpp:45 soe: output_level: PipeWire blocksize: 512" if blocksize bigger kill almost never happens.
I am also configured auditd to find what process kill it. Auditd to do detect kill signal to EE. but if i send KILL -9 manually then auditd detect it. Weird issue.

extra trace
what was interesting with this one . I watched video after i finished video i just closed firefox tab with video . Immediately after it killed easyeffects. It
It feels that kill come in moment node_info_holder.cpp:104

(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.497:         application.cpp:137     input autoloading: skip "plasma_sink" candidate since it does not match "alsa_input.usb-GENERAL_GENERAL_WEBCAM_JH0319_20200710_v012-02.mono-fallback" input device
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.497:         application.cpp:137     input autoloading: skip "alsa_output.pci-0000_00_1f.3.analog-stereo" candidate since it does not match "alsa_input.usb-GENERAL_GENERAL_WEBCAM_JH0319_20200710_v012-02.mono-fallback" input device
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.497:         application.cpp:137     input autoloading: skip "alsa_input.pci-0000_00_1f.3.analog-stereo" candidate since it does not match "alsa_input.usb-GENERAL_GENERAL_WEBCAM_JH0319_20200710_v012-02.mono-fallback" input device
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.497:         application.cpp:131     input autoloading: target node "alsa_input.usb-GENERAL_GENERAL_WEBCAM_JH0319_20200710_v012-02.mono-fallback" matches the input device name
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.497:         application.cpp:150     output autoloading: device "alsa_card.pci-0000_00_1f.3" has changed its output route to "analog-output-lineout"
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.497:         application.cpp:163     output autoloading: skip "plasma_source" candidate since it does not match "alsa_output.pci-0000_00_1f.3.analog-stereo" output device
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.497:         application.cpp:163     output autoloading: skip "plasma_sink" candidate since it does not match "alsa_output.pci-0000_00_1f.3.analog-stereo" output device
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.497:         application.cpp:157     output autoloading: target node "alsa_output.pci-0000_00_1f.3.analog-stereo" matches the output device name
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.499:         pipe_manager.cpp:1343   Firefox port 158 is connected to easyeffects_sink port 210
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.499:         pipe_manager.cpp:1343   Firefox port 180 is connected to easyeffects_sink port 79
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.500:         pipe_manager.cpp:1343   Firefox port 105 is connected to easyeffects_sink port 210
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.500:         pipe_manager.cpp:1343   Firefox port 100 is connected to easyeffects_sink port 79
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.509:         limiter.cpp:161 soe: limiter latency: 0.0054166666 s
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.509:         output_level.cpp:45     soe: output_level: PipeWire blocksize: 512
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.509:         output_level.cpp:46     soe: output_level: PipeWire sampling rate: 48000
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.524:         app_info.cpp:178        cannot lookup application icon plasma_source in /usr/local/share/pixmaps
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.524:         app_info.cpp:178        cannot lookup application icon plasma_source in /usr/local/share/pixmaps
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.524:         app_info.cpp:178        cannot lookup application icon plasma_source in /usr/local/share/pixmaps
(easyeffects:1024879): easyeffects-DEBUG: 20:05:45.525:         effects_base.cpp:311    soe: pipeline latency: 5.4166665 ms
(easyeffects:1024879): easyeffects-DEBUG: 20:05:55.888:         stream_input_effects.cpp:189    No app linked to our device wants to play. Unlinking our filters.
(easyeffects:1024879): easyeffects-DEBUG: 20:06:00.540:         pipe_manager.cpp:265    Stream/Output/Audio 240 Firefox has been removed
(easyeffects:1024879): easyeffects-DEBUG: 20:06:00.540:         pipe_manager.cpp:1039   new metadata property: 240, , , 
(easyeffects:1024879): easyeffects-DEBUG: 20:06:00.541:         app_info.cpp:377        Firefox disposed
(easyeffects:1024879): easyeffects-DEBUG: 20:06:00.541:         app_info.cpp:385        Firefox finalized
(easyeffects:1024879): easyeffects-DEBUG: 20:06:00.541:         app_info.cpp:63 data struct destroyed
(easyeffects:1024879): easyeffects-DEBUG: 20:06:00.541:         node_info_holder.cpp:104        240, Firefox finalized
(easyeffects:1024879): easyeffects-DEBUG: 20:06:00.610:         pipe_manager.cpp:1303   Stream/Output/Audio 240 Firefox with serial 21182 has been added
(easyeffects:1024879): easyeffects-DEBUG: 20:06:00.610:         pipe_manager.cpp:1039   new metadata property: 240, target.node, Spa:Id, 67
(easyeffects:1024879): easyeffects-DEBUG: 20:06:00.610:         pipe_manager.cpp:1039   new metadata property: 240, target.object, Spa:Id, 21062
(easyeffects:1024879): easyeffects-DEBUG: 20:06:00.617:         pipe_manager.cpp:1343   Firefox port 180 is connected to easyeffects_sink port 210
(easyeffects:1024879): easyeffects-DEBUG: 20:06:00.617:         pipe_manager.cpp:1343   Firefox port 207 is connected to easyeffects_sink port 79
(easyeffects:1024879): easyeffects-DEBUG: 20:08:34.861:         pipe_manager.cpp:265    Stream/Output/Audio 240 Firefox has been removed
(easyeffects:1024879): easyeffects-DEBUG: 20:08:34.862:         pipe_manager.cpp:1039   new metadata property: 240, , , 
(easyeffects:1024879): easyeffects-DEBUG: 20:08:34.862:         app_info.cpp:377        Firefox disposed
(easyeffects:1024879): easyeffects-DEBUG: 20:08:34.862:         app_info.cpp:385        Firefox finalized
(easyeffects:1024879): easyeffects-DEBUG: 20:08:34.862:         app_info.cpp:63 data struct destroyed
(easyeffects:1024879): easyeffects-DEBUG: 20:08:34.862:         node_info_holder.cpp:104        240, Firefox finalized
Killed

@wwmm
Copy link
Owner

wwmm commented Oct 16, 2024

Is it possible somehow to disable autokill ?

Maybe. I never tried to disable the oom killer.

It feels that kill come in moment node_info_holder.cpp:104

Hum... Maybe it just happens to be the last print before whatever is actually triggering the issue. Even if the delete that comes after

util::debug(util::to_string(self->info->id) + ", " + self->info->name + " finalized");
has issues I would expect a segmentation fault or a double free instead of the system killing the process.

@jpVm5jYYRE1VIKL
Copy link
Author

Hi . I have a new findings.
In installed bcc package and used tool killsnoop -s 9
Appeared that kill signal not detected with killsnoop. So it means that most probabaly was used not a kill but tgkill syscall. I not sure about oom or segv. It is just direct non motivated kill signal. Issues started to manifest itself after last arch upgrade .

@wwmm
Copy link
Owner

wwmm commented Oct 17, 2024

Hi . I have a new findings. In installed bcc package and used tool killsnoop -s 9 Appeared that kill signal not detected with killsnoop. So it means that most probabaly was used not a kill but tgkill syscall. I not sure about oom or segv. It is just direct non motivated kill signal. Issues started to manifest itself after last arch upgrade .

Hum... I did not consider that the kill signal could have different sources... Are you using the stable repository package or the AUR package? I do not remember if you have already given this information. It may be worth to install the AUR package if you have not tried that yet.

@jpVm5jYYRE1VIKL
Copy link
Author

Did extra debug using PIPEWIRE_DEBUG=3 easyeffects
and in moment of crash got following on console:

I][20176.723590] pw.context   | [       context.c:  701 acquire_data_loop()] 0x5636ed359690: using name:'data-loop.0' class:'data.rt' ref:37
[I][20176.723611] pw.filter    | [        filter.c:  803 handle_latency()] port 0x5636ed2ca310: set input latency 1.000000-1.000000 0-0 0-0
[I][20176.723634] pw.node      | [     impl-node.c:  469 node_update_state()] (ee_soe_spectrum-101) creating -> running
[I][20176.724183] pw.node      | [     impl-node.c:  469 node_update_state()] (ee_soe_output_level-121) creating -> running
[I][20176.725122] pw.filter    | [        filter.c:  803 handle_latency()] port 0x5636ed5ff7d0: set output latency 1.000000-1.000000 0-0 0-0
[I][20176.725292] pw.context   | [       context.c:  725 pw_context_acquire_loop()] 0x5636ed359690: looking for name:'data-loop.0' class:'(null)'
[I][20176.725296] pw.context   | [       context.c:  701 acquire_data_loop()] 0x5636ed359690: using name:'data-loop.0' class:'data.rt' ref:38
[I][20176.725310] pw.filter    | [        filter.c:  803 handle_latency()] port 0x5636ed5f9c10: set output latency 0.000000-1.000000 0-0 0-0
[I][20176.725420] pw.filter    | [        filter.c:  803 handle_latency()] port 0x5636ed5fae40: set output latency 0.000000-1.000000 0-0 0-0
[I][20176.725639] pw.context   | [       context.c:  725 pw_context_acquire_loop()] 0x5636ed359690: looking for name:'data-loop.0' class:'(null)'
[I][20176.725643] pw.context   | [       context.c:  701 acquire_data_loop()] 0x5636ed359690: using name:'data-loop.0' class:'data.rt' ref:39
[I][20176.725666] pw.context   | [       context.c:  725 pw_context_acquire_loop()] 0x5636ed359690: looking for name:'data-loop.0' class:'(null)'
[I][20176.725670] pw.context   | [       context.c:  701 acquire_data_loop()] 0x5636ed359690: using name:'data-loop.0' class:'data.rt' ref:40
[I][20176.741195] spa.loop     | [          loop.c:  213 loop_create_queue()] 0x5636ed31e838 created queue 0x7fb5b01e8b90
[I][21236.752266] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.768191] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.781526] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.795406] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.806181] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.817225] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 2 wakeups
[I][21236.824736] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.832366] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.840136] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.848043] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.856092] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.864273] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.872601] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.881070] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.885357] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.894017] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.902815] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.907274] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.916277] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.920838] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.925435] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.934726] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.939432] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.944166] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.953717] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
[I][21236.958554] pw.node      | [     impl-node.c: 1548 node_on_fd_events()] (ee_soe_autogain-154) client missed 1 wakeups
Killed

And this is output on journald :

Oct 26 08:01:02 ktotoPC dbus-broker[1127]: Peer :1.4835 is being disconnected as it does not have the resources to receive a reply it requested.
Oct 26 08:01:02 ktotoPC steam[2009185]: Adding process 2010808 for gameID 275850
Oct 26 08:01:02 ktotoPC steam[2009185]: Adding process 2010811 for gameID 275850
Oct 26 08:01:02 ktotoPC steam[2009185]: Adding process 2010822 for gameID 275850
Oct 26 08:01:03 ktotoPC steam[2009185]: Adding process 2010836 for gameID 275850
Oct 26 08:01:03 ktotoPC steam[2009185]: Adding process 2010842 for gameID 275850
Oct 26 08:01:03 ktotoPC steam[2009185]: Adding process 2010848 for gameID 275850
Oct 26 08:01:04 ktotoPC steam[2009185]: Adding process 2010861 for gameID 275850
Oct 26 08:01:04 ktotoPC steam[2009185]: Setting breakpad minidump AppID = 275850
Oct 26 08:01:04 ktotoPC steam[2009185]: Steam_SetMinidumpSteamID:  Caching Steam ID:  76561198059180495 [API loaded no]
Oct 26 08:01:04 ktotoPC steam[2009185]: Adding process 2010877 for gameID 275850
Oct 26 08:01:11 ktotoPC kded6[1833]: Registering ":1.4408/StatusNotifierItem" to system tray
Oct 26 08:01:11 ktotoPC kded6[1833]: Service  ":1.4408" unregistered
Oct 26 08:01:11 ktotoPC wireplumber[1808232]: wp-event-dispatcher: <WpAsyncEventHook:0x5572b9ec69d0> failed: <WpSiStandardLink:0x5572ba2a3640> link failed: some node was destroyed before the link was created
Oct 26 08:01:11 ktotoPC plasmashell[1855]: QFont::setPointSizeF: Point size <= 0 (0.000000), must be greater than 0
Oct 26 08:01:11 ktotoPC kded6[1833]: Registering ":1.4409/StatusNotifierItem" to system tray
Oct 26 08:01:11 ktotoPC kded6[1833]: Service  ":1.4409" unregistered
Oct 26 08:01:11 ktotoPC kded6[1833]: Registering ":1.4410/StatusNotifierItem" to system tray
Oct 26 08:01:11 ktotoPC wireplumber[1808232]: wp-event-dispatcher: <WpAsyncEventHook:0x5572b9ec69d0> failed: <WpSiStandardLink:0x5572ba18df50> link failed: some node was destroyed before the link was created
Oct 26 08:01:11 ktotoPC kded6[1833]: Service  ":1.4410" unregistered
Oct 26 08:01:11 ktotoPC kded6[1833]: Registering ":1.4411/StatusNotifierItem" to system tray
Oct 26 08:01:11 ktotoPC kded6[1833]: Service  ":1.4411" unregistered
Oct 26 08:01:11 ktotoPC plasmashell[1855]: QFont::setPointSizeF: Point size <= 0 (0.000000), must be greater than 0
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 2 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups
Oct 26 08:01:22 ktotoPC easyeffects[2008355]: pw.node: (ee_soe_autogain-154) client missed 1 wakeups

@wwmm
Copy link
Owner

wwmm commented Oct 26, 2024

As far as I remember the node missing 1 or 2 wakeup should not cause the system to kill the process. Most installations out there probably also have 1 or 2 missed wakeups from time to time. It depends on the system load and on what pipewire is doing internally. As well as on as heavy the plugin is. The libebur128 library used in the autogain can be very CPU intensive compared to the other libraries we use.

@glanduin
Copy link

glanduin commented Nov 3, 2024

I don't know if related but i also am on Manjaro and in my case, easyeffects is killed when i introduce an equalizer (dependent on lsp-plugins package) and start playing audio. It could be any audio from any source, immediately kills easyeffects. If i remove the equalizer, everything works as expected. I also have "bass enhancer" and "stereo tools" (both provided by calf) in my effects pipeline and they work without issues. EQ (lsp) causes the crash of the whole app.

@wwmm
Copy link
Owner

wwmm commented Nov 3, 2024

I don't know if related but i also am on Manjaro and in my case, easyeffects is killed when i introduce an equalizer (dependent on lsp-plugins package) and start playing audio. It could be any audio from any source, immediately kills easyeffects. If i remove the equalizer, everything works as expected. I also have "bass enhancer" and "stereo tools" (both provided by calf) in my effects pipeline and they work without issues. EQ (lsp) causes the crash of the whole app.

@glanduin which parameters have you changed in the equalizer configuration?

@glanduin
Copy link

glanduin commented Nov 3, 2024

I did not manually change anything but instead, i downloaded a "preset" from https://autoeq.app/

This preset is made spesifically for easyeffects and i loaded it as "APO" (as specified). It loaded succesfuly and i can see the eq parameters changed. I am suspecting some kind of clash between the LSP plugin package and pipewire maybe. Because this doesn't happen with CALF plugins. But i honestly did not test any other plugin from the LSP package, so i am probably wrong.

@wwmm
Copy link
Owner

wwmm commented Nov 3, 2024

I did not manually change anything but instead, i downloaded a "preset" from https://autoeq.app/

This preset is made spesifically for easyeffects and i loaded it as "APO" (as specified). It loaded succesfuly and i can see the eq parameters changed. I am suspecting some kind of clash between the LSP plugin package and pipewire maybe. Because this doesn't happen with CALF plugins. But i honestly did not test any other plugin from the LSP package, so i am probably wrong.

Most likely the preset changed only the number of bands and the corresponding settings without putting the equalizer into heavier modes of operations. So it should be fine.

Sometimes the system kills a process because it took too long to finish operations executed in a realtime thread. This may explain why only this plugin is causing problems for you. Do you see many errors in the output of pw-top?

@jpVm5jYYRE1VIKL
Copy link
Author

jpVm5jYYRE1VIKL commented Nov 4, 2024

I did this configuration :
in ~/.config/pipewire/pipewire.conf.d
and it is quite improved situation but still sometimes killed. I started to look on pw-top and found that some applications ignoring min-quantum and attempt to use quantum less than 1024. Do exist any way to force to use bigger quantums ?

context.properties = {
    default.clock.min-quantum = 1024
    default.clock.max-quantum = 8192
    default.clock.quantum = 1024
}

PS. And yes i almost sure that problem with autogain plugin because in pw-top i see most of errors on ee_soe_autogain.
Is it possible to improve autogain plugin performance because it is quite important and i cannot survive without it.

PSS:

Today got KIlled with following (happened in moment when i pressed pause button on youtube ie playback was good and crashed after i pressed pause)

:


[I][64774.827154] pw.context   | [       context.c:  725 pw_context_acquire_loop()] 0x55ae853e6930: looking for name:'data-loop.0' class:'(null)'
[I][64774.827164] pw.context   | [       context.c:  701 acquire_data_loop()] 0x55ae853e6930: using name:'data-loop.0' class:'data.rt' ref:152
[I][64774.827194] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae8529aee0: set input latency 1.000000-1.000000 0-0 0-0
[I][64774.827371] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae853d63b0: set input latency 0.000000-1.000000 0-0 0-0
[I][64774.827398] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae853d80a0: set input latency 0.000000-1.000000 0-0 0-0
[I][64774.827425] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae853661f0: set input latency 1.000000-1.000000 0-0 0-0
[I][64774.827627] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae85536690: set input latency 0.000000-1.000000 0-0 0-0
[I][64774.827656] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae85537670: set input latency 0.000000-1.000000 0-0 0-0
[I][64774.827674] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae853d63b0: set input latency 1.000000-1.000000 0-0 0-0
[I][64774.827688] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae853d80a0: set input latency 1.000000-1.000000 0-0 0-0
[I][64774.827714] pw.node      | [     impl-node.c:  469 node_update_state()] (ee_soe_spectrum-93) idle -> running
[I][64774.827762] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae853e0770: set input latency 0.000000-1.000000 0-0 5416666-5416666
[I][64774.827790] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae853e1750: set input latency 0.000000-1.000000 0-0 5416666-5416666
[I][64774.827804] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae85536690: set input latency 1.000000-1.000000 0-0 0-0
[I][64774.827845] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae85537670: set input latency 1.000000-1.000000 0-0 0-0
[I][64774.828055] pw.node      | [     impl-node.c:  469 node_update_state()] (ee_soe_output_level-89) idle -> running
[I][64774.828170] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae853e0770: set input latency 1.000000-1.000000 0-0 5416666-5416666
[I][64774.828209] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae853e1750: set input latency 1.000000-1.000000 0-0 5416666-5416666
[I][64774.828239] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae8568a500: set output latency 1.000000-1.000000 0-0 0-0
[I][64774.877946] pw.context   | [       context.c:  725 pw_context_acquire_loop()] 0x55ae853e6930: looking for name:'data-loop.0' class:'(null)'
[I][64774.877973] pw.context   | [       context.c:  701 acquire_data_loop()] 0x55ae853e6930: using name:'data-loop.0' class:'data.rt' ref:153
[I][64774.878037] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae856850c0: set output latency 0.000000-1.000000 0-0 0-0
[I][64774.878256] pw.filter    | [        filter.c:  803 handle_latency()] port 0x55ae856862f0: set output latency 0.000000-1.000000 0-0 0-0
[I][64774.878498] pw.context   | [       context.c:  725 pw_context_acquire_loop()] 0x55ae853e6930: looking for name:'data-loop.0' class:'(null)'
[I][64774.878509] pw.context   | [       context.c:  701 acquire_data_loop()] 0x55ae853e6930: using name:'data-loop.0' class:'data.rt' ref:154
[I][64774.878553] pw.context   | [       context.c:  725 pw_context_acquire_loop()] 0x55ae853e6930: looking for name:'data-loop.0' class:'(null)'
[I][64774.878561] pw.context   | [       context.c:  701 acquire_data_loop()] 0x55ae853e6930: using name:'data-loop.0' class:'data.rt' ref:155

(easyeffects:147557): easyeffects-WARNING **: 18:04:40.673:     pipe_manager.cpp:1513   Remote error res: No such file or directory

(easyeffects:147557): easyeffects-WARNING **: 18:04:40.673:     pipe_manager.cpp:1514   Remote error message: unknown resource 190 op:2

(easyeffects:147557): easyeffects-WARNING **: 18:04:40.673:     pipe_manager.cpp:1513   Remote error res: No such file or directory

(easyeffects:147557): easyeffects-WARNING **: 18:04:40.673:     pipe_manager.cpp:1514   Remote error message: unknown resource 190 op:2
Killed

@wwmm
Copy link
Owner

wwmm commented Nov 4, 2024

I started to look on pw-top and found that some applications ignoring min-quantum and attempt to use quantum less than 1024. Do exist any way to force to use bigger quantums ?

The numbers you are seeing just represent the requested latency. PipeWire may or not switch to them. The line that matters is the one for your soundcard. This is the quantum PipeWire will use.

PS. And yes i almost sure that problem with autogain plugin because in pw-top i see most of errors on ee_soe_autogain.
Is it possible to improve autogain plugin performance because it is quite important and i cannot survive without it.

The main reason why this plugin is heavy is that the library libebur128 used to estimate the loudness values is heavy. Unless this library somehow becomes faster the only way to make the autogain to use less CPU is forcing a higher latency (quantum) value. This will make PipeWire to deliver larger buffer sizes. What in turns usually decreases the number of times the library functions have to be called.

@jpVm5jYYRE1VIKL have you ever installed ananicy or something else that could be messing with EasyEffects threads priorities? Run the command chrt -ap easyeffects_pid_number. Only one of EasyEffects threads should have realtime priority. Setting the whole app to realtime is a common reason for the system to kill it.

@jpVm5jYYRE1VIKL
Copy link
Author

jpVm5jYYRE1VIKL commented Nov 5, 2024

hi. @wwmm
Priorities are good.
Issue with pw-top ERR extremely improved. I already some hours don`t have even 1 ERR in pw-top.
To improve it i used in
/etc/modprobe.d/blacklist.conf

install snd_hda_codec_hdmi /bin/true

This action blocked HDMI sound destination . I have multiply monitors but not using monitors output for sound processing. May be it will be good to add faq advice to block extra sound outputs even if it is not used. As i see it indirectly influence on EE even if not used and even if sound never directed to such output. May be nvidia driver ? I ll test more and report. At the moment, the situation with hdmi block is very encouraging.

@wwmm
Copy link
Owner

wwmm commented Nov 5, 2024

This action blocked HDMI sound destination . I have multiply monitors but not using monitors output for sound processing. May be it will be good to add faq advice to block extra sound outputs even if it is not used. As i see it indirectly influence on EE even if not used and even if sound never directed to such output. May be nvidia driver ? I ll test more and report. At the moment, the situation with hdmi block is very encouraging.

Sounds like a bug in the driver or in how PipeWire is handling your devices. Besides my onboard card I also have my monitor audio hdmi device enabled without any side effect.

@jpVm5jYYRE1VIKL
Copy link
Author

After couple days of testing i can say that EE still killed but situation dramatically improved.
Issues happens not during playback itself. issue happens in moments playback->pause-> playback.
After HDMI block i got only one crash during 2 days. Before it was multiply times per day. I started to think about last intel CPU instability issue but i am not sure about it because only application which crashing is EE. Quite big and cpu hungry games never crash.

@wwmm
Copy link
Owner

wwmm commented Nov 9, 2024

but i am not sure about it because only application which crashing is EE. Quite big and cpu hungry games never crash.

The difference is probably the realtime thread EasyEffects uses for the plugins audio processing. Maybe somehow the CPU is not being fast enough to initialize the plugin within the time PipeWire configures for realtime threads. But as far as I remember PipeWire sets a really large timeout.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants