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

Easyeffects crashes on launch #1606

Closed shard77 closed 2 years ago

shard77 commented 2 years ago

Hey, I installed easyeffects 2 days ago, and it worked fine. Today, I started to launch it, and it instantly crashes. I am on Arch Linux; Plasma KDE; Kwin.

Here are the logs:

(process:10683): easyeffects-DEBUG: 11:54:48.341:   easyeffects.cpp:35  easyeffects version: 6.2.6
(process:10683): easyeffects-DEBUG: 11:54:48.342:   easyeffects.cpp:45  locale directory: /usr/share/locale

(easyeffects:10683): Gtk-WARNING **: 11:54:48.342: Locale not supported by C library.
    Using the fallback 'C' locale.
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.343:   presets_manager.cpp:72  system input presets directory: "/etc/easyeffects/input"; 
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.343:   presets_manager.cpp:72  system input presets directory: "/etc/xdg/easyeffects/input"; 
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.343:   presets_manager.cpp:72  system input presets directory: "/home/shard/.config/kdedefaults/easyeffects/input"; 
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.343:   presets_manager.cpp:75  system output presets directory: "/etc/easyeffects/output"; 
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.343:   presets_manager.cpp:75  system output presets directory: "/etc/xdg/easyeffects/output"; 
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.343:   presets_manager.cpp:75  system output presets directory: "/home/shard/.config/kdedefaults/easyeffects/output"; 
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.343:   presets_manager.cpp:215 user presets directory already exists: /home/shard/.config/easyeffects/
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.343:   presets_manager.cpp:215 user presets directory already exists: /home/shard/.config/easyeffects/input
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.343:   presets_manager.cpp:215 user presets directory already exists: /home/shard/.config/easyeffects/output
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.343:   presets_manager.cpp:215 user presets directory already exists: /home/shard/.config/easyeffects/autoload/input
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.343:   presets_manager.cpp:215 user presets directory already exists: /home/shard/.config/easyeffects/autoload/output

(easyeffects:10683): Adwaita-WARNING **: 11:54:48.411: Using GtkSettings:gtk-application-prefer-dark-theme with libadwaita is unsupported. Please use AdwStyleManager:color-scheme instead.
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.434:   pipe_manager.cpp:1388   compiled with PipeWire: 0.3.52
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.434:   pipe_manager.cpp:1389   linked to PipeWire: 0.3.52
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.438:   pipe_manager.cpp:1356   core version: 0.3.52
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.438:   pipe_manager.cpp:1357   core name: pipewire-0
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.438:   pipe_manager.cpp:1270   found metadata: settings
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.438:   pipe_manager.cpp:1270   found metadata: default
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.438:   pipe_manager.cpp:1270   found metadata: route-settings
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.438:   pipe_manager.cpp:1125   Audio/Sink 60 alsa_output.usb-Focusrite_Scarlett_2i4_USB-00.analog-surround-40 with serial 65 has been added
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.438:   pipe_manager.cpp:1125   Audio/Source 61 alsa_input.usb-Focusrite_Scarlett_2i4_USB-00.analog-stereo with serial 66 has been added
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.438:   pipe_manager.cpp:1125   Audio/Sink 62 alsa_output.usb-Burr-Brown_from_TI_USB_Audio_CODEC-00.analog-stereo-output with serial 67 has been added
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.438:   pipe_manager.cpp:1125   Audio/Source 63 alsa_input.usb-Burr-Brown_from_TI_USB_Audio_CODEC-00.analog-stereo-input with serial 68 has been added
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.438:   pipe_manager.cpp:1125   Audio/Sink 59 alsa_output.pci-0000_0a_00.1.hdmi-stereo with serial 939 has been added
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.438:   pipe_manager.cpp:1125   Audio/Sink 121 easyeffects_sink with serial 1038 has been added
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.438:   pipe_manager.cpp:1125   Audio/Source/Virtual 109 easyeffects_source with serial 1039 has been added
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.438:   pipe_manager.cpp:879    new metadata property: 0, default.audio.sink, Spa:String:JSON, {"name":"alsa_output.usb-Focusrite_Scarlett_2i4_USB-00.analog-surround-40"}
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.438:   pipe_manager.cpp:879    new metadata property: 0, default.audio.source, Spa:String:JSON, {"name":"alsa_input.usb-Focusrite_Scarlett_2i4_USB-00.analog-stereo"}
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.439:   pipe_manager.cpp:1477   easyeffects_sink node successfully retrieved with id 121 and serial 1038
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.439:   pipe_manager.cpp:1482   easyeffects_source node successfully retrieved with id 109 and serial 1039

(easyeffects:10683): easyeffects-WARNING **: 11:54:48.455:  lv2_wrapper.cpp:65  Could not find the plugin: http://drobilla.net/plugins/mda/Loudness
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.455:   bass_loudness.cpp:29    soe: http://drobilla.net/plugins/mda/Loudness is not installed

(easyeffects:10683): easyeffects-WARNING **: 11:54:48.455:  lv2_wrapper.cpp:353 http://drobilla.net/plugins/mda/Loudness port symbol not found: loudness

(easyeffects:10683): easyeffects-WARNING **: 11:54:48.455:  lv2_wrapper.cpp:353 http://drobilla.net/plugins/mda/Loudness port symbol not found: output

(easyeffects:10683): easyeffects-WARNING **: 11:54:48.455:  lv2_wrapper.cpp:353 http://drobilla.net/plugins/mda/Loudness port symbol not found: link
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.463:   lv2_wrapper.cpp:100 http://lsp-plug.in/plugins/lv2/sc_compressor_stereo requires feature: http://lv2plug.in/ns/ext/urid#map
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.480:   lv2_wrapper.cpp:100 http://lsp-plug.in/plugins/lv2/comp_delay_x2_stereo requires feature: http://lv2plug.in/ns/ext/urid#map
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.505:   lv2_wrapper.cpp:100 http://lsp-plug.in/plugins/lv2/para_equalizer_x32_lr requires feature: http://lv2plug.in/ns/ext/urid#map
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.543:   lv2_wrapper.cpp:100 http://lsp-plug.in/plugins/lv2/sc_limiter_stereo requires feature: http://lv2plug.in/ns/ext/urid#map
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.551:   lv2_wrapper.cpp:100 http://lsp-plug.in/plugins/lv2/loud_comp_stereo requires feature: http://lv2plug.in/ns/ext/urid#map

(easyeffects:10683): easyeffects-WARNING **: 11:54:48.558:  lv2_wrapper.cpp:65  Could not find the plugin: urn:zamaudio:ZaMaximX2
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.558:   maximizer.cpp:29    soe: urn:zamaudio:ZaMaximX2 is not installed

(easyeffects:10683): easyeffects-WARNING **: 11:54:48.558:  lv2_wrapper.cpp:353 urn:zamaudio:ZaMaximX2 port symbol not found: thresh

(easyeffects:10683): easyeffects-WARNING **: 11:54:48.558:  lv2_wrapper.cpp:353 urn:zamaudio:ZaMaximX2 port symbol not found: ceil

(easyeffects:10683): easyeffects-WARNING **: 11:54:48.559:  lv2_wrapper.cpp:353 urn:zamaudio:ZaMaximX2 port symbol not found: rel
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.573:   lv2_wrapper.cpp:100 http://lsp-plug.in/plugins/lv2/sc_mb_compressor_stereo requires feature: http://lv2plug.in/ns/ext/urid#map
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.591:   rnnoise.cpp:274 soe: rnnoise using the default model
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.602:   plugin_base.cpp:268 soe: output_level successfully connected to PipeWire graph
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.603:   plugin_base.cpp:268 soe: spectrum successfully connected to PipeWire graph

(easyeffects:10683): easyeffects-WARNING **: 11:54:48.620:  lv2_wrapper.cpp:65  Could not find the plugin: http://drobilla.net/plugins/mda/Loudness
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.620:   bass_loudness.cpp:29    sie: http://drobilla.net/plugins/mda/Loudness is not installed

(easyeffects:10683): easyeffects-WARNING **: 11:54:48.620:  lv2_wrapper.cpp:353 http://drobilla.net/plugins/mda/Loudness port symbol not found: loudness

(easyeffects:10683): easyeffects-WARNING **: 11:54:48.620:  lv2_wrapper.cpp:353 http://drobilla.net/plugins/mda/Loudness port symbol not found: output

(easyeffects:10683): easyeffects-WARNING **: 11:54:48.620:  lv2_wrapper.cpp:353 http://drobilla.net/plugins/mda/Loudness port symbol not found: link
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.628:   lv2_wrapper.cpp:100 http://lsp-plug.in/plugins/lv2/sc_compressor_stereo requires feature: http://lv2plug.in/ns/ext/urid#map
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.645:   lv2_wrapper.cpp:100 http://lsp-plug.in/plugins/lv2/comp_delay_x2_stereo requires feature: http://lv2plug.in/ns/ext/urid#map
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.671:   lv2_wrapper.cpp:100 http://lsp-plug.in/plugins/lv2/para_equalizer_x32_lr requires feature: http://lv2plug.in/ns/ext/urid#map
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.708:   lv2_wrapper.cpp:100 http://lsp-plug.in/plugins/lv2/sc_limiter_stereo requires feature: http://lv2plug.in/ns/ext/urid#map
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.717:   lv2_wrapper.cpp:100 http://lsp-plug.in/plugins/lv2/loud_comp_stereo requires feature: http://lv2plug.in/ns/ext/urid#map

(easyeffects:10683): easyeffects-WARNING **: 11:54:48.724:  lv2_wrapper.cpp:65  Could not find the plugin: urn:zamaudio:ZaMaximX2
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.724:   maximizer.cpp:29    sie: urn:zamaudio:ZaMaximX2 is not installed

(easyeffects:10683): easyeffects-WARNING **: 11:54:48.724:  lv2_wrapper.cpp:353 urn:zamaudio:ZaMaximX2 port symbol not found: thresh

(easyeffects:10683): easyeffects-WARNING **: 11:54:48.724:  lv2_wrapper.cpp:353 urn:zamaudio:ZaMaximX2 port symbol not found: ceil

(easyeffects:10683): easyeffects-WARNING **: 11:54:48.724:  lv2_wrapper.cpp:353 urn:zamaudio:ZaMaximX2 port symbol not found: rel
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.738:   lv2_wrapper.cpp:100 http://lsp-plug.in/plugins/lv2/sc_mb_compressor_stereo requires feature: http://lv2plug.in/ns/ext/urid#map
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.756:   rnnoise.cpp:274 sie: rnnoise using the default model
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.765:   plugin_base.cpp:268 sie: output_level successfully connected to PipeWire graph
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.766:   plugin_base.cpp:268 sie: spectrum successfully connected to PipeWire graph
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.846:   plugin_base.cpp:268 sie: bass_enhancer successfully connected to PipeWire graph
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.848:   plugin_base.cpp:268 sie: gate successfully connected to PipeWire graph
easyeffects-INFO: 11:54:48.852:     application.cpp:48  disabling global bypass
(easyeffects:10683): easyeffects-DEBUG: 11:54:48.868:   application_ui.cpp:82   Icon Theme Nordic-darker detected
locale::facet::_S_create_c_locale name not valid
Digitalone1 commented 2 years ago

Let's wait. The problem is we don't have testers on non-Gnome environments. We wouldn't push the latest release being aware of this bug.

The thing is it's not happening on Gnome. In fact the fix could be a workaround to fallback to the C locale, but we still can't get the right locale outside Gnome.

jtl5770 commented 2 years ago

Well, I am on Gnome (42 from Fedora 36), and for me the latest version from flathub is NOT starting up (giving me the locale error). The version before is behaving correctly, so it started only recently with 6.2.6/fcebe7664a6d

the result from locale for my system is

LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=de_DE.UTF-8
LC_TIME=de_DE.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=de_DE.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=de_DE.UTF-8
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT=de_DE.UTF-8
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

which is just english with german formats, being set from Gnome's settings app.

what I did in the end was adding --env=LC_ALL=C to the flatpak run command in the autostart .desktop file to make it work again.

wwmm commented 2 years ago

In the systems where the bug is happening what is the gtk4 version being used? Here on Arch Linux I have 4.6.6.

aarproducoes commented 2 years ago

In the systems where the bug is happening what is the gtk4 version being used? Here on Arch Linux I have 4.6.6.

In Mate Desktop mostly gtk 3.24

jtl5770 commented 2 years ago

Fedora ist at 4.6.5 it seems (gtk4-4.6.5-1.fc36.x86_64)

jtl5770 commented 2 years ago

In the systems where the bug is happening what is the gtk4 version being used? Here on Arch Linux I have 4.6.6.

In Mate Desktop mostly gtk 3.24

that doesn't seem to be a gtk4 version?

jtl5770 commented 2 years ago

Just another quick note:

I was able to make it start not only by setting LC_ALL, but also by unsetting all of the explicitely set LC_* env variables before running it. Maybe that helps...

Digitalone1 commented 2 years ago

Did someone test the master branch from AUR or Flatpak nightly?

aarproducoes commented 2 years ago

Did someone test the master branch from AUR or Flatpak nightly?

My easyeffetcs flatpak version is 6.2.6 and the beta/nightly 6.2.6 too. To update the beta channel is diff from update in standard way "flatpak update"?

Digitalone1 commented 2 years ago

I don't know, never used Flatpak. In case, just uninstall and reinstall the nightly and let us know it the issue is reproducible.

HelpSeeker commented 2 years ago

The nightly Flatpak works for me. The thing is: I went back to the stable Flatpak and it works again as well (I uninstalled the nightly version and restarted my system, so it's definitely the stable one).

Looking through my Flatpak update history, all my *.Locale Flatpaks were updated today before noon (incl. stable Easyeffects). Not sure if it's related, but that's the one major difference I can spot between two days ago and now.

vchernin commented 2 years ago

Can you try completing deleting all EasyEffects Flatpak data (some config and cache are left by default) with flatpak remove com.github.wwmm.easyeffects --delete-data? And then reinstall 6.2.6 stable to be sure it was the locale packages?

Be warned this will delete all config you have for EasyEffects.

HelpSeeker commented 2 years ago

I removed the data in ~/.var manually each time before I posted here. To be save I repeated the process with the command, reinstalled the stable version and it again runs without any issues.

Digitalone1 commented 2 years ago

@aarproducoes has it the same behavior for you?

aarproducoes commented 2 years ago

@aarproducoes has it the same behavior for you?

So, steps I made: . i removed all easyeffects flatpaks with data, reboot; . installed the nightly version, launched, but freeze and don't open; . removed all again, reboot; . i installed the stable version, launched (run) same msg error and crash; . launched with "flatpak run --env=LC_ALL=en_US.UTF-8 com.github.wwmm.easyeffects" opened and worked.

vchernin commented 2 years ago

installed the nightly version, launched, but freeze and don't open;

Did you get any logs from it? Nightly version works fine for me, and nothing significant has changed from stable version at least in terms of Flatpak packaging.

Digitalone1 commented 2 years ago

@aarproducoes post the logs.

We need also people testing with the AUR package,

aarproducoes commented 2 years ago

@aarproducoes post the logs.

We need also people testing with the AUR package,

Alright. I'll post the logs for the nightly version asap. I've a arch based linux (endeavourOS xfce) on my other laptop, i will try it later when i in home again.

aarproducoes commented 2 years ago

@aarproducoes post the logs.

We need also people testing with the AUR package,

Logs from easyeffects flatpak nightly 03.1easyeffects(nightly)_flatpak-debug.txt 04.pipewire dump_2022.07.06. 10h56 GMT -3h.txt

It took so long and I hit control+c after several minutes...

Digitalone1 commented 2 years ago

Did you give the easyeffects -q command before launching the nightly version?

aarproducoes commented 2 years ago

Did you give the easyeffects -q command before launching the nightly version?

No. I followed this steps: https://github.com/wwmm/easyeffects/wiki/Package-Repositories#nightly-flatpak

Digitalone1 commented 2 years ago

@aarproducoes It seems easyeffects is already running on your system. Do you have autostart enabled? Make sure it's not running as service before you make it start from command line. Anyway it's weird.

aarproducoes commented 2 years ago

@aarproducoes It seems easyeffects is already running on your system. Do you have autostart enabled? Make sure it's not running as service before you make it start from command line. Anyway it's weird.

No autostart. I checked before launch, zero process named easyeffect. Really weird.

Digitalone1 commented 2 years ago

Let's wait @wwmm, maybe he can find the issue. If you can test the AUR package, please do it.

wwmm commented 2 years ago

It took so long and I hit control+c after several minutes...

What exactly took too long? The window was not shown? The logs seem to be complete. Usually when there is an instance already running it stops way early. There would be no print about Chromium, the devices, etc.

aarproducoes commented 2 years ago

It took so long and I hit control+c after several minutes...

What exactly took too long? The window was not shown? The logs seem to the complete. Usually when there is an instance already running it stops way early. There would be no print about Chromium, the devices, etc.

Yes, the window was not shown. As in the log, easyeffetcs looks like working in background, but there is no sight of window. I opened htop to check if the app was listed and yes it is. So, even when after I interrupt it by pressing ctrl+c on terminal the proccess still running until I kill it.

About testing the AUR version i couldn't do it last night. Maybe later today.

heregoesmarcel commented 2 years ago

About testing the AUR version i couldn't do it last night. Maybe later today.

Just tried it after experiencing the same issue as described above. AUR version seems to be working fine.

Digitalone1 commented 2 years ago

About testing the AUR version i couldn't do it last night. Maybe later today.

Just tried it after experiencing the same issue as described above. AUR version seems to be working fine.

Okay, it's good the app is nor crashing, but how is the locale? Which language did you set and how are the numbers formatted in labels and spinbuttons? Do you see them with comma or dot as decimal separator?

heregoesmarcel commented 2 years ago

About testing the AUR version i couldn't do it last night. Maybe later today.

Just tried it after experiencing the same issue as described above. AUR version seems to be working fine.

Okay, it's good the app is nor crashing, but how is the locale? Which language did you set and how are the numbers formatted in labels and spinbuttons? Do you see them with comma or dot as decimal separator?

Language is en_US and decimal separator is dot.

Digitalone1 commented 2 years ago

@aarproducoes new flatpak version is out. Is the issue still happening?

Anyway the issue related to the locale should be fixed, so this could be closed.

wwmm commented 2 years ago

Anyway the issue related to the locale should be fixed, so this could be closed.

Or at least everything that could be done on our side has been done. If std::locale("") fails we handle the exception that we imagine to have been the cause of the crash. But everyone must have in mind that things like the one below are far from normal

❯ locale -a                                                                                                                                                           
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_COLLATE to default locale: No such file or directory

Whatever it is that is causing std::locale("") to fail in your systems will still be there. EasyEffects will just fallback to the C locale if an exception is thrown.