GithubHelp home page GithubHelp logo

audio4linux / jdsp4linux Goto Github PK

View Code? Open in Web Editor NEW
871.0 16.0 31.0 56.2 MB

An audio effect processor for PipeWire and PulseAudio clients

License: GNU General Public License v3.0

Shell 0.03% QMake 0.19% C 87.53% Makefile 0.11% Java 2.26% Batchfile 0.01% C++ 9.14% C# 0.75%
jdsp wrapper gst gstreamer equalizer gst-plugin audio jamesdsp pipewire dsp effects linux

jdsp4linux's Introduction

Icon
JamesDSP for Linux

Open-source sound effects for PipeWire and PulseAudio

GitHub release (latest by date) License Windows build

FeaturesInstallationScripting/APIContributorsLicense

Screenshot

Linux port developed by Tim Schneeberger (@thepbone)

JamesDSP was initially published as an audio effects processor
for Android devices and is written by James Fung (@james34602).

Feel free to join our Telegram group for support and updates


Crowdin
Please help us to translate this app on Crowdin!

Features

  • Automatic bass boost
    • Frequency-detecting bass-boost. Automatically sets its own parameters, such as gain, bandwidth, and cut-off frequency, by analyzing the incoming audio stream
  • Automatic dynamic range compressor
    • A highly automated multiband dynamic range adjusting effect
  • Complex reverberation IIR network (Progenitor 2)
  • Interpolated FIR equalizer with flexible bands
  • Arbitrary response equalizer (also known as GraphicEQ from EqualizerAPO)
    • AutoEQ database integration (requires network connection)
  • Partitioned convolver (Auto segmenting convolution)
    • Supports mono, stereo, full/true stereo (LL, LR, RL, RR) impulse response
  • Crossfeed
    • Realistic surround effects
  • Soundstage wideness
    • A multiband stereo wideness controller
  • ViPER-DDC
  • Analog modeling
    • An aliasing-free even harmonic generator
  • Output limiter
  • Scripting engine: Live programmable DSP
    • Write your own audio effects using the EEL2 scripting language
    • Auto-generate a basic user interface for your script to modify specific parameters/constants without editing the actual code
    • The scripting language has been extended using many DSP-related functions for easy access, for example, spectral processing, constant Q transform, multi-purpose FIR filter designer IIR sub-bands transformation, etc...
    • This app also includes a custom minimal scripting IDE:
      • Syntax highlighting
      • Basic code completion
      • Dynamic code outline window
      • Console output support
      • Detailed error messages with inline code highlighting

PipeWire vs PulseAudio

Designed for use with PipeWire. PulseAudio is only supported for backward compatibility.

PipeWire has a much lower latency compared to PulseAudio when injecting audio effects processors into the audio pipeline. I'm currently not planning to add more advanced support for PulseAudio clients. Features such as selective app exclusion, changing the target audio device, and similar features will only be available to PipeWire clients.

Which one am I using?

Follow the instructions below if you don't know which one your Linux distribution is using. If you already know, skip to the 'Install dependencies' section.

Run LC_ALL=C pactl info | grep "Server Name:" in your terminal.

If you are using Pipewire the output should look similar to this:

Server Name: PulseAudio (on PipeWire 0.3.35)

If you are using Pulseaudio the output should look exactly like this:

Server Name: pulseaudio

Installation

Decide whether you need to install the PipeWire or PulseAudio version of this app!

If you don't know which version fits your Linux setup, go to the PipeWire vs PulseAudio section above.

It is recommended to switch to PipeWire, if possible. JamesDSP's audio backend for PulseAudio is in maintenance-mode; however, it will continue to receive UI-related feature updates.

The installation instructions for the PulseAudio version have been moved to a separate file: INSTALL_PULSE.md.

Installation for PipeWire

This section is dedicated to systems using PipeWire as the audio server. If you are still using PulseAudio, please go here.

Flatpak

Universal binary packages for all distros.

The recommended Pipewire version is available for download on FlatHub: https://flathub.org/apps/me.timschneeberger.jdsp4linux

flatpak install me.timschneeberger.jdsp4linux

Download on Flathub

If you are still using PulseAudio, you need to download the legacy package from my personal repository:

sudo flatpak remote-add --if-not-exists thepbones-repo https://raw.githubusercontent.com/ThePBone/flatpak-repo/main/thepbone.flatpakrepo
flatpak install me.timschneeberger.jdsp4linux.pulse

Important

Flatpaks are sandboxed. This application can only access ~/.var/app/me.timschneeberger.jdsp4linux/ by default.

Arch

AUR packages are available:

  • Stable version

    AUR version AUR version AUR version AUR version

    yay -S jamesdsp
    
  • Development version

    AUR version AUR version AUR version AUR version

    yay -S jamesdsp-git
    

Fedora/openSUSE

Package maintained by @theAeon on Fedora COPR. Built for Fedora 34/35/Rawhide and OpenSUSE Tumbleweed.

yum copr enable arrobbins/JDSP4Linux && yum update && yum install JamesDSP

If you are still using PulseAudio with your Fedora/openSUSE installation, refer to the 'Build from sources' section below instead.

Build from sources

Build instructions are available in the BUILD.md file.

Scripting & IPC APIs

Since version 2.5.0, this app supports IPC via D-Bus and is also configurable via a CLI.

Remote control via CLI

You can list all supported commands using jamesdsp --help. Currently, these commands for remote-controlling JamesDSP's audio engine are available:

  --is-connected                           Check if JamesDSP service is active. Returns exit code 1 if not. (Remote)
  --list-keys                              List available audio configuration keys (Remote)
  --get <key>                              Get audio configuration value (Remote)
  --set <key=value>                        Set audio configuration value (format: key=value) (Remote)
  --load-preset <name>                     Load preset by name (Remote)
  --save-preset <name>                     Save current settings as preset (Remote)
  --delete-preset <name>                   Delete preset by name (Remote)
  --list-presets                           List presets (Remote)
  --status                                 Show status (Remote)
  --list-devices                           List audio devices (Remote)
  --list-preset-rules                      List preset rules (Remote)
  --set-preset-rule <deviceId=presetName>  Add/modify preset rule (Remote)
  --delete-preset-rule <deviceId>          Delete preset rule (Remote)

The options should be fairly self-explanatory. For example, jamesdsp --set reverb_enable=true would enable the reverberation setting. Have a look at the audio configuration file at ~/.config/jamesdsp/audio.conf to learn more about possible setting keys and their syntax.

Note

These commands try to connect to an active JamesDSP instance. If no instance is currently online, they will fall back to modifying the audio configuration file directly on disk. The --is-connected option can be used to check whether one is currently online.

D-Bus IPC

This app also exposes a D-Bus service on the session bus, which can be used by other developers or users:

Service name: me.timschneeberger.jdsp4linux

  • GUI-related interface:
    • Path name: /jdsp4linux/gui
    • Interface name: me.timschneeberger.jdsp4linux.Gui
  • Audio service-related interface:
    • Path name: /jdsp4linux/service
    • Interface name: me.timschneeberger.jdsp4linux.Service

If you want to test it out, you can use an app like D-Feet to interact with the D-Bus services.

The D-Bus introspection XML is available here: https://github.com/Audio4Linux/JDSP4Linux/blob/master/src/utils/dbus/manifest.xml.

Troubleshooting

  • JamesDSP is randomly killed by the kernel or closes by itself

    • The processing thread of the app may have exceeded the maximum amount of CPU time allowed for a real-time thread on your system.
    • To fix: install the realtime-priorities package, add your user to the realtime group, and re-login. (see issue #155)
  • My volume control is not working anymore

    • Don't set the virtual JamesDSP device as the default audio output device. The virtual device has no audio volume controls and should never be used directly. Please set your actual speakers/headphones as the default output device instead.
  • Crackling audio

    • Your CPU may be too slow to process the audio sample in time; try to disable some effects (especially resource-hungry ones like the convolver)
    • Set JamesDSP's process to real-time or high priority using a task manager of your choice
    • [Pipewire] Try out the workaround mentioned in issue #47

Screenshots

Screenshot Screenshot Screenshot Screenshot

Contributors

Translators

logo
Tim Schneeberger (ThePBone)

7404 words
logo
Kauã Azevedo da Silva Vicente (Kazevic)

3173 words
logo
Camellan

3152 words
logo
Katie Frogs (KatieFrogs)

2944 words
logo
catvinyl

2352 words
logo
Choi Jun Hyeong (Gokwu)

2321 words
logo
Gabriel Cabrera Davila (mefsaal)

652 words
logo
NullPointerException (seqfault)

1151 words
logo
mariachini

373 words
logo
tachyglossues

358 words
logo
Gustavo Kureck Piccoli (gkpiccoli)

280 words
logo
Noob Zhang (zhanghua000)

240 words
logo
kzsuser

221 words
logo
AnClark Liu (AnClark)

173 words
logo
Bruh (deproocho)

171 words
logo
HoleHolo

167 words
logo
so1ar

126 words
logo
Inche Hwang (coldified_)

117 words
logo
etiennec79 (etiennec78)

114 words
logo
James Fung (james34602)

72 words
logo
theczechczech

42 words
logo
Alexandre PAIXAO (alex-pex)

30 words
logo
Joel Tony (jaytau)

28 words
logo
crisap94

27 words
logo
Arif Esat Yılmaz (arifesat)

24 words
logo
thành thành (kingconcentrer)

18 words
logo
Semih Aslan (andmydignity)

15 words
logo
Robert Abreu (deathrobert2010)

13 words
logo
Lucas De Paula (ldepaulaf)

11 words
logo
Mr.Positiv (artemgrebennikov310)

4 words
logo
Rkchus Qkxhdu (qkxhdurkchus)

3 words
logo
dev_trace

2 words
Translate in Crowdin 🚀

License

This project is licensed under GPLv3.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, 
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR 
THE USE OR OTHER DEALINGS IN THE SOFTWARE.

jdsp4linux's People

Contributors

44100hertz avatar autoinfrastructure avatar c9glax avatar camellan avatar github-actions[bot] avatar ipeacocks avatar james34602 avatar kolcha avatar kutep0v avatar nanashithenameless avatar nocrex avatar pasqui23 avatar pittvandewitt avatar tdrkdev avatar theaeon avatar thepbone avatar timschneeb avatar vibo69 avatar yochananmarqos avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

jdsp4linux's Issues

No output audio unless I add the app to the blocklist

Not sure if I overlook something, but there's no audio at all unless I blocklist the app (which probably means it bypasses JamesDSP completely).

Using Ubuntu 21.10 and PipeWire audio server.

I'm using an external audio interface (UMC204HD) and it is the configured as the systems default output audio device. But also when manually selecting in the JamesDSP settings, there is no output.

Any suggestions?

tray icon context menu ideas

i would guess that people will be changing presets more often than adjusting settings - if that is the case, i might suggest swapping the primary and secondary click on the tray icon so that a primary click opens the context menu and the secondary opens the GUI

more importantly, there is no indication of what preset is loaded in the context menu (KDE, dark desktop theme) - the bypass has a checkbox and i might suggest adding (if possible) some visual way to similarly determine what preset is loaded, be that a font style change (bold), background color, or radio buttons

it might also be convenient to have an option to display the presets in the context menu as a top-level menu instead of a sub-menu, or, better yet, don't add an option and always display them as a top-level menu until the number of entries reaches 'x', then move them to a sub-menu

Compiling fails

When I tried to compile with "make -j4" I keep running into this error:

In file included from ../../src/audio/pipewire/FilterContainer.h:24,
                 from ../../src/audio/pipewire/FilterContainer.cpp:20:
../../src/audio/pipewire/PwBasePlugin.h:27:10: fatal error: ranges: No such file or directory
   27 | #include <ranges>
      |          ^~~~~~~~
compilation terminated.
make[1]: *** [Makefile:2841: FilterContainer.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/home/swim/Downloads/JDSP4Linux/build/src'

Equalizer APO presets do not import

Hopefully I'm trying to use this correctly, but the "Import EqualizerAPO settings" button on the Graphical EQ tab does not seem to work.

For example, using the following as content will result in zero bands being present:

Preamp: -8.5 dB
Filter 1:  ON LS Fc    45 Hz Gain  3.0 dB Q 0.71
Filter 2:  ON LS Fc   105 Hz Gain  5.5 dB Q 0.71
Filter 3:  ON PK Fc   210 Hz Gain -1.3 dB Q 0.7
Filter 4:  ON PK Fc   550 Hz Gain  0.4 dB Q 1.0
Filter 5:  ON PK Fc  1050 Hz Gain -1.0 dB Q 2.0
Filter 6:  ON PK Fc  1900 Hz Gain  2.2 dB Q 0.7
Filter 7:  ON PK Fc  2950 Hz Gain -2.4 dB Q 2.1
Filter 8:  ON PK Fc  3900 Hz Gain  3.8 dB Q 1.4
Filter 9:  ON PK Fc  5500 Hz Gain -5.3 dB Q 3.5
Filter 10: ON HS Fc 10000 Hz Gain -1.0 dB Q 0.71

Version is listed as 2.3-1.fc35, installed via the Fedora copr under installation instructions. The core version is reported as 4.1.0.

App crashes (?) / doesn't reopen on KDE after lock & relogin

Hi, I posted an issue quite some time back about app starting not-minimized on KDE. I think there was a patch pushed to fix that but for me it's still the same. It's not a really big deal, just close the app it stays minimized and works. But I've noticed that after locking KDE and logging back it the app kinda disappears. I don't think it's crashing but it's a possibility. I think it has something to do with KDE reopening apps after re-login and it ignores JDSP. Any ideas? Any more info I can give to help identify the issue?

Can't install jamesdsp-pulse_2.3 on kubuntu 20.2 focal and Debian 11 bullseye

Hi ! Thanks a lot for your great job ! 👍

I can't install the latest jamesdsp-pulse 2.3 release on two linux 64 systems,
Because there are two missing dependencies :

  • libarchive is not installable for kubuntu 20.2 focal
  • libarchive is not installable for Debian 11 bullseye

But libarchive13 is installed on both.

and

  • libgstreamer-plugins-good1.0.0 is not installable only for Debian 11 bullseye

Thanks a lot for your help !

No actual XDG Base dir support

At the moment hardcoded absolute paths are being used, instead of XDG base dir specs with relevant overrides/fallbacks (e.g XDG_CONFIG_HOME env variable). QStandardPaths can be used for this purpose.

[Feature request] Stereo convolver

Hello! I really like this program for it's high fidelity sounding DSP. I want to use Joe Bloggs stereo convolver samples but I think this software only supports 1 sample at a time. Do I misunderstand something or is this just a missing feature? Any help would be great!

Not able to compile it in Manjaro

Problem

Not able to compile the JDSP 2.3.tar.gz
It says glibmm-2.4 development package not found and I have latest version of glibmm installed. I have also tried to install it using AUR stable and git version but getting the same issue.

I think if it requires any specific functionality of glibmm-2.4 then it will be better to provide the library with it because in rolling release distro, it is difficult to install outdated packages.

System Information

OS: Manjaro Linux x86_64
Kernel: 5.10.102-1-MANJARO
DE: Plasma 5.24.2

Library Information

libarchive: 3.6.0-1
qt5-base: 5.15.2+kde+r302-1
qt5-svg: 5.15.2+kde+r16-2
glib2: 2.70.4-1
glibmm: 2.66.2-1
pipewire: 1:0.3.47-2

Build log

cd libjamesdsp/ && ( test -e Makefile || /usr/bin/qmake -o Makefile /home/rp181135198/Workspace/Installation/JDSP4Linux/libjamesdsp/libjamesdsp.pro ) && make -f Makefile
make[1]: Entering directory '/home/rp181135198/Workspace/Installation/JDSP4Linux/build/libjamesdsp'
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o arbEqConv.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/arbEqConv.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o bs2b.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/bs2b.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o convolver1D.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/convolver1D.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o crossfeed.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/crossfeed.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o dbb.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/dbb.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o dynamic.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/dynamic.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o cpthread.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/cpthread.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o fft.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/fft.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o nseel-compiler.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/nseel-compiler.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o nseel-ram.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/nseel-ram.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o FFTConvolver.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/FFTConvolver.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o cos_fib_paraunitary.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/FilterDesign/cos_fib_paraunitary.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o eqnerror.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/FilterDesign/eqnerror.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o firls.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/FilterDesign/firls.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o generalFdesign.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/FilterDesign/generalFdesign.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o polyphaseASRC.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/FilterDesign/polyphaseASRC.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o MersenneTwister.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/MersenneTwister.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o inv.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/SolveLinearSystem/inv.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o mldivide.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/SolveLinearSystem/mldivide.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o mrdivide.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/SolveLinearSystem/mrdivide.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o pinv.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/SolveLinearSystem/pinv.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o qr_fact.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/SolveLinearSystem/qr_fact.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o codelet.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/codelet.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o cpoly.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/cpoly.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o samplerate.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/libsamplerate/samplerate.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o src_sinc.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/libsamplerate/src_sinc.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o quadprog.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/quadprog.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o solvopt.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/numericSys/solvopt.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o s_str.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/s_str.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o y.tab.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/eel2/y.tab.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o firEqualizer.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/firEqualizer.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o liveprogWrapper.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/liveprogWrapper.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o reverb.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/reverb.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o stereoEnhancement.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/stereoEnhancement.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o vacuumTube.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/vacuumTube.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o vdc.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/Effects/vdc.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o binaryBlobs.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/binaryBlobs.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o ArbFIRGen.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/generalDSP/ArbFIRGen.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o TwoStageFFTConvolver.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/generalDSP/TwoStageFFTConvolver.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o digitalFilters.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/generalDSP/digitalFilters.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o generalProg.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/generalDSP/generalProg.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o interpolation.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/generalDSP/interpolation.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o spectralInterpolatorFloat.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/generalDSP/spectralInterpolatorFloat.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o jdspController.o ../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp/jdspController.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o EELStdOutExtension.o ../../libjamesdsp/EELStdOutExtension.c
gcc -c -pipe -std=gnu11 -O2 -O2 -fPIC -w -flto -fno-fat-lto-objects -D_REENTRANT -DLIBJAMESDSP_PLUGIN -DCUSTOM_CMD -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../libjamesdsp -I. -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp/jdsp -I../../libjamesdsp/subtree/Main/libjamesdsp/jni/jamesdsp -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/lib/qt/mkspecs/linux-g++ -o JdspImpResToolbox.o ../../libjamesdsp/JdspImpResToolbox.c
rm -f liblibjamesdsp.a
gcc-ar cqs liblibjamesdsp.a arbEqConv.o bs2b.o convolver1D.o crossfeed.o dbb.o dynamic.o cpthread.o fft.o nseel-compiler.o nseel-ram.o FFTConvolver.o cos_fib_paraunitary.o eqnerror.o firls.o generalFdesign.o polyphaseASRC.o MersenneTwister.o inv.o mldivide.o mrdivide.o pinv.o qr_fact.o codelet.o cpoly.o samplerate.o src_sinc.o quadprog.o solvopt.o s_str.o y.tab.o firEqualizer.o liveprogWrapper.o reverb.o stereoEnhancement.o vacuumTube.o vdc.o binaryBlobs.o ArbFIRGen.o TwoStageFFTConvolver.o digitalFilters.o generalProg.o interpolation.o spectralInterpolatorFloat.o jdspController.o EELStdOutExtension.o JdspImpResToolbox.o
make[1]: Leaving directory '/home/rp181135198/Workspace/Installation/JDSP4Linux/build/libjamesdsp'
cd src/ && ( test -e Makefile || /usr/bin/qmake -o Makefile /home/rp181135198/Workspace/Installation/JDSP4Linux/src/src.pro ) && make -f Makefile
Cannot read /home/rp181135198/Workspace/Installation/JDSP4Linux/src/subprojects/FlatTabWidget/FlatTabWidget/FlatTabWidget.pri: No such file or directory
Cannot read /home/rp181135198/Workspace/Installation/JDSP4Linux/src/subprojects/LiquidEqualizerWidget/LiquidEqualizerWidget.pri: No such file or directory
Cannot read /home/rp181135198/Workspace/Installation/JDSP4Linux/src/subprojects/GraphicEQWidget/GraphicEQWidget/GraphicEQWidget.pri: No such file or directory
Cannot read /home/rp181135198/Workspace/Installation/JDSP4Linux/src/subprojects/EELEditor/src/EELEditor.pri: No such file or directory
Project ERROR: glibmm-2.4 development package not found
make: *** [Makefile:73: sub-src-make_first] Error 3

Nagging Whitelist Warning Prompt on every boot.

image

Hello. I've enabled the 'Allowlist Mode' in the Device settings of JamesDSP. Because of it, a prompt warning the user of enabling the whitelist, while always appear at startup. Can this be disabled? That, or there could be a checkbox in the window toggling a 'Don't remind me again' mode.

Is there anyway to hide tray icon?

Once the application is properly configured with the profile, there is no need to keep the icon on the taskbar as I'll not reconfigure the tool again, so it ends up being a space occupied for nothing, would be great having the option to hide the icon from the top bar and leave the application running without the icon.

Issues regarding Qt library

Hi.
I am a Linux Mint 20.2 user. When i try to lounch the software via terminal I get the following message:

jamesdsp: /lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5.15' not found (required by jamesdsp)

How can I fix it?

Thank you for your help.

Import room equalization wizard equalizer files?

Hi there,
i tried to import rew filters into jamesdsp, but it did not imported anything.
I think the file was already in equalizerapo setting, here it is:

Filter  1: ON  PK       Fc     274 Hz  Gain  -9.6 dB  Q 5.000
Filter  2: ON  PK       Fc     497 Hz  Gain  -2.3 dB  Q 1.428
Filter  3: ON  PK       Fc    61.9 Hz  Gain  -8.1 dB  Q 5.171
Filter  4: ON  PK       Fc    71.0 Hz  Gain  -8.4 dB  Q 7.014
Filter  5: ON  PK       Fc     394 Hz  Gain  -3.7 dB  Q 5.000
Filter  6: ON  PK       Fc     208 Hz  Gain  -6.4 dB  Q 14.757
Filter  7: ON  PK       Fc     316 Hz  Gain  -3.3 dB  Q 5.000
Filter  8: ON  PK       Fc     355 Hz  Gain   3.0 dB  Q 5.000
Filter  9: ON  PK       Fc     224 Hz  Gain   3.0 dB  Q 5.000
Filter 10: ON  PK       Fc     440 Hz  Gain   3.0 dB  Q 5.000
Filter 11: ON  PK       Fc     224 Hz  Gain   3.0 dB  Q 5.000
Filter 12: ON  PK       Fc     297 Hz  Gain   3.0 dB  Q 5.000
Filter 13: ON  PK       Fc     196 Hz  Gain  -4.4 dB  Q 5.000
Filter 14: ON  PK       Fc    78.2 Hz  Gain  -5.0 dB  Q 12.628
Filter 15: ON  PK       Fc     164 Hz  Gain  -4.5 dB  Q 15.795
Filter 16: ON  PK       Fc    91.9 Hz  Gain  -4.6 dB  Q 23.086
Filter 17: ON  PK       Fc     176 Hz  Gain   3.0 dB  Q 10.711

Does it expect some sore of keyword? is it fixable by my side? Thanks!

Q: pactl info - "PulseAudio (on PipeWire ...)

in an attempt to solve an issue with EasyEffects, i started looking at JamesDSP as a replacement

i noticed pactl info is returning PulseAudio (on PipeWire 0.3.40) which apparently means PW is running in compatibility mode

what exactly does that mean and what should i do to run PW in its 'native' (non-compatibility) mode?

Manjaro

$ sudo pacman -Qn | grep -i pulse
lib32-libpulse 15.0-1
libpulse 15.0-1
pipewire-pulse 1:0.3.40-1

$ sudo pacman -Qn | grep -i pipewire
gst-plugin-pipewire 1:0.3.40-1
pipewire 1:0.3.40-1
pipewire-alsa 1:0.3.40-1
pipewire-jack 1:0.3.40-1
pipewire-pulse 1:0.3.40-1
pipewire-zeroconf 1:0.3.40-1

[Feature Request] Auto-switching presets

Could you please consider adding an auto-switch functionality for presets based on default output device. I often switch between two different bluetooth headsets and internal speaker. Each of the headsets requires its own DDC config.

Crackling audio (update: if no PTY allocated)

I noticed that when i use jamesdsp, i've crackling sound from time to time with pipewire.
I tried to force the quantum even to 512 to no avail and without jamesdsp I can safely go down to 32.

[plasmauser@Gozer ~]$ uname -a
Linux Gozer 5.17.1-arch1-1 #1 SMP PREEMPT Mon, 28 Mar 2022 20:55:33 +0000 x86_64 GNU/Linux
[plasmauser@Gozer ~]$ pacman -Q jamesdsp
jamesdsp-git 2.3.r29.ga11f428-1
[plasmauser@Gozer ~]$ pacman -Q pipewire
pipewire 1:0.3.49-1

I'm not doing anything special, just playing an mp3 and use an equalizer from jamesdsp.
The crackling appears when firefox is loading a page or maybe when i maximize a window.
I even tried to set jamesdsp to realtime priority.

Not able to launch application on linux mint 20.3

Application installs from repo or deb just fine, but simply doesn't launch.

/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5.15' not found (required by /usr/bin/jamesdsp)

my friend who's on arch said that debian's repositories are years out of date and that I'd have to build qt5base from source to get the latest. am I in the wrong for trying?

I looked at the last issue post which mentions Qt_5.15, however after multiple restarts, update/upgrade, relaunching, command line (how i discovered the qt_5.15 error) I was not able to get past.

AutoEQ Github API rate limit

Hi,
thanks for the project, it is really useful, especially direct access to the AutoEQ database is a great feature.

I just noticed that on every click on a search item it makes a new request to the Github API, which has this rate limits of 60 req/h. That is reached fast, when looking at a few headphones and switching back and forth.

So I could think of 2 solutions:

  • Either add a Github login (OAuth) option, that would increase the rate limit to 5000 req/h, then it would allow > 1 req/sec and should be easily enough for any reasonable usage.

  • Or (preferably) clone the AutoEQ repo one time into local ~/.cache and just refresh every few days or with an option in the settings. That would completely circumvent any rate limiting. Also would have the advantage that it even works on systems which are not always connected to the internet.

SIGSEV Crash on Arch Linux

jamesdsp-pulse-git version compiled from this AUR package, gives the following crash:

Caught SIGSEGV (11) in ???
Fault at memory location 0x0 due to address not mapped to object (1).
Thread 260609: jamesdsp
=== Context:
R8:5d0ee270 R9:c54934e0 R10:c54933e0 R11:293 R12:0 R13:a400b0f0 R14:5d059660
R15:d2f6c520 RDI:0 RSI:10 RBP:5cfaa750 RBX:10 RDX:0 RAX:0 RCX:0 RSP:d2f6c3b8
RIP:c546e515 EFL:10283 CSGSFS:33 ERR:4 TRAPNO:e OLDMASK:0 CR2:0
=== Binary:
Compile date: Oct  9 2021 19:29:55
GNU version: 110100
=== Backtrace:
jamesdsp[5b4e2000](+ce35b)[5b5b035b]
/usr/lib/libpthread.so.0[c584f000](+13870)[c5862870]
/usr/lib/libc.so.6[c530e000](+160515)[c546e515]
jamesdsp[5b4e2000](+a2c1c)[5b584c1c]
jamesdsp[5b4e2000](+a5210)[5b587210]
jamesdsp[5b4e2000](+a5a67)[5b587a67]
jamesdsp[5b4e2000](+92890)[5b574890]
jamesdsp[5b4e2000](+1223be)[5b6043be]
jamesdsp[5b4e2000](main+581)[5b54ebf1]
/usr/lib/libc.so.6[c530e000](__libc_start_main+d5)[c5335b25]
jamesdsp[5b4e2000](+6e1be)[5b5501be]
=== Code:
c546e4d5:  1a 0f bd c0 48 8d 44 07 e0 c5 f8 77 c3 66 66 2e 0f 1f 84 00 00 00 00 00
c546e4ed:  0f 1f 00 31 c0 c5 f8 77 c3 66 2e 0f 1f 84 00 00 00 00 00 f3 0f 1e fa 89
c546e505:  f9 48 89 fa c5 f9 ef c0 83 e1 3f 83 f9 20 77 2b>c5 fd 74 0f c5 fd d7 c1
c546e51d:  85 c0 0f 85 eb 00 00 00 48 83 c7 20 83 e1 1f 48 83 e7 e0 eb 42 66 66 2e
c546e535:  0f 1f 84 00 00 00 00 00 0f 1f 00 83 e1 1f 48 83 e7 e0 c5 fd 74 0f c5 fd
c546e54d:  d7 c1 d3 f8 85 c0 74 1b
=== Local backtrace:
0x00000000000ce5ef: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at ??:?
0x0000000000013870: ?? ??:0
0x0000000000160515: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at ??:?
0x00000000000a2c1c: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at ??:?
0x00000000000a5210: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at ??:?
0x00000000000a5a67: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at ??:?
0x0000000000092890: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_assign(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at ??:?
0x00000000001223be: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at ??:?
0x000000000006cbf1: main at ??:?
0x0000000000027b25: ?? ??:0
0x000000000006e1be: main at ??:?
=== System:
Linux version 5.14.9-zen2-1-zen (linux-zen@archlinux) (gcc (GCC) 11.1.0, GNU ld (GNU Binutils) 2.36.1) #1 ZEN SMP PREEMPT Fri, 01 Oct 2021 19:03:23 +0000

RPM build/repository

Hey all-just spent a decent bit of time getting the pipewire flavor running on fedora's copr infrastructure and it seems to be working well on fedora 35 (and building on 34/rawhide/suse tumbleweed). I had to flatten the submodules because, even though rpkgv3 can handle it fine, fedora's copr is stuck on rpkgv2 for the time being. This, well, makes it a bit hard to pull request. In the meantime, I'll maintain it on my repo in one way or another. 2.2 is currently on the rpm branch if anyone wants to help out with implementing pulse/finds bugs/things i messed up/whatever. The repo is available at https://copr.fedorainfracloud.org/coprs/arrobbins/JDSP4Linux/ and installation can be done from yum as with any copr repository. Let me know!

Always starts maximised

Hi, even though I set to start minimised it doesn't happen and the main window always opens when I start my PC.
Using EndeavourOS Plasma.

Separate EQ for L vs R?

Is there a way to have different EQ settings for each speaker? If one is closer to a corner or some similar interaction with the room it can sound pretty different from the other speaker. So far I can only see how to apply EQ settings to the whole output device.

I can hear the end of the previous buffer after a pause

Hello

Here is how to reproduce the issue i am having:

I don't know what the issue could be, maybe a buffer overflow? timing issue?

OS: Arch Linux
Kernel: 5.18.1-arch1-1 #1 SMP PREEMPT_DYNAMIC
Package: aur/jamesdsp 2.3-3 (+10 1.30)
Audio: extra/pipewire 1:0.3.51-1

Sound is distorted

Hello, i tried jdsp linux but haven't got it work properly in any way.
The sound is hollow and silent if i disable all bass settings (as they destroying the sound), are there any special things of that?

Arch/Manjaro kernel 5.14

Liveprog stays enabled when reloading DSP or switching presets

While I successfully tested the fix for #5, I've noticed that Liveprog remains enabled when I switch between presets or reloaded the DSP via the app menu. In my scenario, I have a preset with Liveprog turned on and another without it. I can also reproduce this behavior when I enable Liveprog without a preset loaded before reloading the DSP or loading another preset.

App version: Git (PulseAudio package from AUR). Note that this can also be reproduced in version 2.0 and 2.1
Distribution: Manjaro

compiling release tgz

cloning from git and compiling works fine.
compiling from the v2.3.tar.gz yields:

../../src/data/EelParser.h:4:10: fatal error: model/codecontainer.h: No such file or directory
4 | #include <model/codecontainer.h>
I was writing a Slackbuild, thats why i fetched the 2.3 release....

Liveprog crashes

I've had the app crash every time I reload JamesDSP from the More menu inside the app while Liveprog is enabled. In addition, JamesDSP would also crash when I enable Liveprog scripts if it was initially disabled at app startup.

App version: 2.0 (PulseAudio build package from AUR)
Distribution: Manjaro

compressor fuzz/static (volume normalization)

enabling the dynamic range compressor produces significant "static" in the audio stream regardless of the source (firefox, audacious, mplayer)

i don't know what triggers this, but i don't think it happened immediately after the first install, however removing ~/.config/jamesdsp and restarting the the app doesn't help

manjaro, jdsp 2.3-1 (AUR)
Server Name: PulseAudio (on PipeWire 0.3.42)
Server Version: 15.0.0
Default Sample Specification: float32le 2ch 48000Hz
Default Channel Map: front-left,front-right

Crashes when the program is started on Ubuntu 21.10

Hi! I just recently upgraded my distro from Ubuntu 20.04 to 21.10. I followed the instructions on JamesDSP setup using Pipewire. But whenever I start the program, it always crashes, and the sink reverts to the default one as opposed to the JamesDSP sink. I checked the crash.dmp and it gave me this output:

cat /tmp/jamesdsp/crash.dmp 

Caught SIGSEGV (11) in ???
Fault at memory location 0x0 due to address not mapped to object (1).
Thread 16995: jamesdsp
=== Context:
R8:0 R9:0 R10:0 R11:0 R12:0 R13:0 R14:60020a40 R15:6002c6a0 RDI:70307d50
RSI:0 RBP:70110010 RBX:400 RDX:54001b60 RAX:0 RCX:54000b60 RSP:6b7fd8d0
RIP:23f76055 EFL:10246 CSGSFS:33 ERR:6 TRAPNO:e OLDMASK:a00 CR2:0
=== Binary:
Compile date: Jan 18 2022 18:42:57
GNU version: 100300
=== Backtrace:
/usr/bin/jamesdsp[23c39000](+22254f)[23e5b54f]
/lib/x86_64-linux-gnu/libc.so.6[78480000](+42520)[784c2520]
/usr/bin/jamesdsp[23c39000](+33d055)[23f76055]
/usr/bin/jamesdsp[23c39000](+179b6a)[23db2b6a]
/lib/x86_64-linux-gnu/libpipewire-0.3.so.0[79f61000](+4d99a)[79fae99a]
/lib/x86_64-linux-gnu/libpipewire-0.3.so.0[79f61000](+5bac9)[79fbcac9]
/lib/x86_64-linux-gnu/libpipewire-0.3.so.0[79f61000](+614ac)[79fc24ac]
/usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-support.so[7040c000](+6e33)[70412e33]
/lib/x86_64-linux-gnu/libpipewire-0.3.so.0[79f61000](+3e226)[79f9f226]
/lib/x86_64-linux-gnu/libc.so.6[78480000](+94947)[78514947]
/lib/x86_64-linux-gnu/libc.so.6[78480000](clone+44)[785a4a44]
=== Code:
23f76015:  f8 ff ff 48 89 ef 89 c6 49 89 f6 e8 7b f0 ff ff 48 89 da 44 89 f6 48 89
23f7602d:  ef e8 3d f9 ff ff 48 85 db 74 38 48 8b 8d 48 7c 1f 00 48 8b 95 50 7c 1f
23f76045:  00 31 c0 0f 1f 84 00 00 00 00 00 f3 0f 10 04 81>f3 41 0f 11 04 84 f3 0f
23f7605d:  10 04 82 f3 41 0f 11 44 85 00 48 83 c0 01 48 39 c3 75 e0 48 83 c4 08 5b
23f76075:  5d 41 5c 41 5d 41 5e 41 5f c3 90 e8 1b f0 ff ff eb ac 66 0f 1f 84 00 00
23f7608d:  00 00 00 4c 89 ce e8 b8
=== Local backtrace:
0x00000000002227c7: sigHandler at airbag.c:?
0x0000000000042520: ?? ??:0
0x000000000033d055: pfloat32 at ??:?
0x0000000000179b6a: PwJamesDspPlugin::process(float*, float*, float*, float*, unsigned long) at PwJamesDspPlugin.cpp:56
0x000000000004d99a: ?? ??:0
0x000000000005bac9: ?? ??:0
0x00000000000614ac: ?? ??:0
0x0000000000006e33: ?? ??:0
0x000000000003e226: ?? ??:0
0x0000000000094947: QList<QGraphicsItem*>::dealloc(QListData::Data*) at qlist.h:923
 (inlined by) QList<QGraphicsItem*>::~QList() at qlist.h:874
 (inlined by) FrequencyPlotScene::setZoom(double, double) at FrequencyPlotScene.cpp:98

In addition to that, running jamesdsp on the terminal gives me this output:

jamesdsp   
[22:48:33.783] [INF] Application version: 66b7cb5 (Pipewire flavor)
[22:48:33.783] [INF] Qt library version: 5.15.2
[22:48:33.783] [DBG] Launched by system session manager: no
[22:48:33.783] [DBG] Environment id: 6304eb548dc74ceab7c6a50a1fb6e075
[22:48:33.784] [INF] SingleInstanceMonitor::isServiceReady: Service registration successful
[22:48:33.784] [INF] Last session crashed unexpectedly. A crash report has been saved here: /tmp/jamesdsp/crash-prev.dmp
[22:48:33.784] [DBG] Submitting anonymous crash dump...
[22:48:33.890] [INF] ============ Initializing audio service ============
[22:48:33.890] [INF] Compiled with PipeWire support.
[22:48:33.890] [INF] This application flavor does not support PulseAudio.
[22:48:33.890] [INF] If you want to use this application with PulseAudio, you need to recompile this app with proper support enabled.
[22:48:33.890] [INF] Refer to the README for more detailed information.
[22:48:33.890] [INF] 
[22:48:33.890] [DBG] MainWindow::ctor: Blocklisted apps: 
[22:48:33.890] [DBG] MainWindow::ctor: Blocklist mode: block
[22:48:33.891] [DBG] PwPipelineManager: compiled with pipewire: 0.3.24
[22:48:33.891] [DBG] PwPipelineManager: linked to pipewire: 0.3.48
[22:48:33.893] [DBG] PwPipelineManager: core version: 0.3.48
[22:48:33.893] [DBG] PwPipelineManager: core name: pipewire-0
[22:48:33.893] [DBG] PwPipelineManager: found metadata: settings
[22:48:33.893] [DBG] PwPipelineManager: found metadata: default
[22:48:33.893] [DBG] PwPipelineManager: found metadata: route-settings
[22:48:33.897] [DBG] PwPipelineManager: Audio/Sink 39 alsa_output.pci-0000_00_1f.3.analog-stereo was added
[22:48:33.897] [DBG] PwPipelineManager: Audio/Source 40 alsa_input.pci-0000_00_1f.3.analog-stereo was added
[22:48:33.897] [DBG] PwPipelineManager: Stream/Output/Audio 53 Brave was added
[22:48:33.898] [DBG] PwPipelineManager: Brave port 47 is connected to alsa_output.pci-0000_00_1f.3.analog-stereo port 41
[22:48:33.898] [DBG] PwPipelineManager: Brave port 63 is connected to alsa_output.pci-0000_00_1f.3.analog-stereo port 43
[22:48:33.898] [DBG] PwPipelineManager: Audio/Sink 93 jamesdsp_sink was added
[22:48:33.898] [DBG] PwPipelineManager: Brave port 47 is connected to jamesdsp_sink port 91
[22:48:33.898] [DBG] PwPipelineManager: Brave port 63 is connected to jamesdsp_sink port 82
[22:48:33.898] [DBG] PwPipelineManager: new metadata property: 0, default.configured.audio.source, Spa:String:JSON, { "name": "alsa_input.pci-0000_00_1f.3.analog-stereo" }
[22:48:33.898] [DBG] PwPipelineManager: new metadata property: 0, default.configured.audio.sink, Spa:String:JSON, { "name": "jamesdsp_sink" }
[22:48:33.898] [DBG] PwPipelineManager: new metadata property: 0, default.audio.sink, Spa:String:JSON, { "name": "jamesdsp_sink" }
[22:48:33.898] [DBG] PwPipelineManager: new metadata property: 0, default.audio.source, Spa:String:JSON, { "name": "alsa_input.pci-0000_00_1f.3.analog-stereo" }
[22:48:33.899] [DBG] PwPipelineManager: new metadata property: 0, default.video.source, Spa:String:JSON, { "name": "kwin_wayland" }
[22:48:33.899] [DBG] PwPipelineManager: new metadata property: 53, target.node, Spa:Id, 85
[22:48:33.926] [DBG] PwJamesDspPlugin: JamesDsp successfully connected to pipewire graph
[22:48:33.927] [DBG] FilterContainer:  link from node 79 to output device 4294967295 failed
Caught SIGSEGV (11)
Collecting infomation about the crash...
[22:48:34.067] [INF] ============ Initializing user interface ============
[22:48:34.074] [DBG] DspHost::update called
[22:48:34.074] [DBG] DspHost::update: Property changed: bass_enable -> QVariant(bool, true) 
[22:48:34.074] [DBG] DspHost::update: Property changed: bass_maxgain -> QVariant(QString, "5") 
[22:48:34.074] [DBG] DspHost::update: Property changed: compression_aggressiveness -> QVariant(QString, "800") 
[22:48:34.074] [DBG] DspHost::update: Property changed: compression_enable -> QVariant(bool, false) 
[22:48:34.074] [DBG] DspHost::update: Property changed: compression_maxatk -> QVariant(QString, "30") 
[22:48:34.074] [DBG] DspHost::update: Property changed: compression_maxrel -> QVariant(QString, "200") 
[22:48:34.074] [DBG] DspHost::update: Property changed: convolver_enable -> QVariant(bool, false) 
[22:48:34.074] [DBG] DspHost::update: Property changed: convolver_file -> QVariant(QString, "\"\"") 
[22:48:34.074] [DBG] DspHost::update: Property changed: convolver_optimization_mode -> QVariant(QString, "0") 
[22:48:34.074] [DBG] DspHost::update: Property changed: convolver_waveform_edit -> QVariant(QString, "\"-80;-100;0;0;0;0\"") 
[22:48:34.074] [DBG] DspHost::update: Property changed: crossfeed_bs2b_fcut -> QVariant(QString, "700") 
[22:48:34.074] [DBG] DspHost::update: Property changed: crossfeed_bs2b_feed -> QVariant(QString, "60") 
[22:48:34.074] [DBG] DspHost::update: Property changed: crossfeed_enable -> QVariant(bool, false) 
[22:48:34.074] [DBG] DspHost::update: Property changed: crossfeed_mode -> QVariant(QString, "0") 
[22:48:34.074] [DBG] DspHost::update: Property changed: ddc_enable -> QVariant(bool, false) 
[22:48:34.075] [DBG] DspHost::update: Property changed: ddc_file -> QVariant(QString, "\"\"") 
[22:48:34.075] [DBG] DspHost::update: Property changed: graphiceq_enable -> QVariant(bool, false) 
[22:48:34.075] [DBG] DspHost::update: Property changed: graphiceq_param -> QVariant(QString, "\"GraphicEQ: 25 0; 40 0; 63 0; 100 0; 160 0; 250 0; 400 0; 630 0; 1000 0; 1600 0; 2500 0; 4000 0; 6300 0; 10000 0; 16000 0\"") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_bassboost -> QVariant(QString, "0.25000") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_decay -> QVariant(QString, "2.09000") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_delay -> QVariant(QString, "0.00000") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_enable -> QVariant(bool, false) 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_finaldry -> QVariant(QString, "-7.00000") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_finalwet -> QVariant(QString, "-9.00000") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_lfo_spin -> QVariant(QString, "0.70000") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_lfo_wander -> QVariant(QString, "0.30000") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_lpf_bass -> QVariant(QString, "600") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_lpf_damp -> QVariant(QString, "9000") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_lpf_input -> QVariant(QString, "18000") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_lpf_output -> QVariant(QString, "17000") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_osf -> QVariant(QString, "1") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_reflection_amount -> QVariant(QString, "0.30000") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_reflection_factor -> QVariant(QString, "1.00000") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_reflection_width -> QVariant(QString, "0.70000") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_wet -> QVariant(QString, "-8.00000") 
[22:48:34.075] [DBG] DspHost::update: Property changed: reverb_width -> QVariant(QString, "1.00000") 
[22:48:34.075] [DBG] DspHost::update: Property changed: liveprog_enable -> QVariant(bool, false) 
[22:48:34.075] [DBG] DspHost::update: Property changed: liveprog_file -> QVariant(QString, "\"\"") 
[22:48:34.075] [DBG] DspHost::update: Property changed: master_enable -> QVariant(bool, false) 
[22:48:34.075] [DBG] DspHost::update: Property changed: master_limrelease -> QVariant(QString, "60") 
[22:48:34.076] [DBG] DspHost::update: Property changed: master_limthreshold -> QVariant(QString, "0") 
[22:48:34.076] [DBG] DspHost::update: Property changed: master_postgain -> QVariant(QString, "15") 
[22:48:34.076] [DBG] DspHost::update: Property changed: stereowide_enable -> QVariant(bool, false) 
[22:48:34.076] [DBG] DspHost::update: Property changed: stereowide_level -> QVariant(QString, "60") 
[22:48:34.076] [DBG] DspHost::update: Property changed: tone_enable -> QVariant(bool, true) 
[22:48:34.076] [DBG] DspHost::update: Property changed: tone_eq -> QVariant(QString, "\"25.0;40.0;63.0;100.0;160.0;250.0;400.0;630.0;1000.0;1600.0;2500.0;4000.0;6300.0;10000.0;16000.0;4;4;3.5;1;0;-0.5;-2;0;2;0;0;1;3;4;4.5\"") 
[22:48:34.077] [DBG] DspHost::update: Property changed: tone_filtertype -> QVariant(QString, "0") 
[22:48:34.078] [DBG] DspHost::update: Property changed: tone_interpolation -> QVariant(QString, "0") 
[22:48:34.079] [DBG] DspHost::update: Property changed: tube_enable -> QVariant(bool, false) 
[22:48:34.079] [DBG] DspHost::update: Property changed: tube_pregain -> QVariant(QString, "200") 
[22:48:34.079] [ERR] DspHost::updateConvolver: Impulse response is empty. Disabling convolver.
[22:48:34.079] [DBG] DspHost::updateConvolver: Unable to read impulse response. No file selected or abnormal channel count?
[22:48:34.079] [DBG] DspHost::refreshLiveprog: Referenced file does not exist anymore. Disabling liveprog.
QFSFileEngine::open: No file name specified
[22:48:34.080] [ERR] DspHost::refreshLiveprog: Cannot open file path. Disabling liveprog.
QIODevice::read (QFile, ""): device not open
[22:48:34.080] [DBG] DspHost::refreshLiveprog: @init section not found
QFSFileEngine::open: No file name specified
QFSFileEngine::open: No file name specified
[22:48:34.379] [DBG] AssetManager::extractGroup: 5 assets extracted (type 0)
[22:48:34.379] [DBG] AssetManager::extractGroup: 3 assets extracted (type 1)
[22:48:34.614] [INF] MainWindow::ctor: UI initialized
[22:48:34.695] [DBG] AppConfig::isAppBlocked("Brave") -> false
[22:48:34.695] [DBG] PwPipelineManager: new metadata property: 53, target.node, Spa:Id, 93
[22:48:35.675] [DBG] CrashReportSender::upload: Successfully submitted
No LSB modules are available.
Done! Crash report saved to /tmp/jamesdsp/crash.dmp.

Consider to launch this application with the parameter '--spinlock-on-crash' to wait for a debugger in case of a crash.

Any help would be appreciated. Thanks!

Edit: Fixed some grammatical errors

Right-click on tray icon does not work properly

Right-click on tray icon triggers show/hide window action in the same way left-click does. Tray menu is only visible for a moment and only when window is being hidden. Happens on both jamesdsp and jamesdsp-git packages from AUR. No unusual logs in console.
My setup: Arch linux + polybar

App doesn't seem to autostart on kde in a Manjaro installation

Even though there's an entry to JamesDSP for Linux Systray in kde's autostart settings, the application doesn't load automatically. I need to manually load the app from the application launcher. Running jamesdsp -t on terminal doesn't pop any error out.

"Unknown Organization" folder in ~/.config

the file in this folder (jamesdsp.conf) appears to contain window geometry - i'm guessing it should probably be moved to ~/.config/jamesdsp/ with the other config files

Limiter threshold and release controls do nothing

Recently, I discovered that changing sliders for limiter threshold and release time have no effect to the output. If they did work, I would expect the sound to become quieter or compressed. The post-gain slider adjusts the volume of the processed audio as expected, however.

App version: 2.2 (PulseAudio build installed from AUR)
JamesDSP core version: 4.1.0
PulseAudio version: 15.0.0
Distribution: Manjaro

Compile from source on Debian 11

Instructions for compiling from source on Debian 11 (with PulseAudio) state that the package libgstreamer-plugins-good1.0-dev should be installed.

But on Debian 11 package libgstreamer-plugins-good1.0-dev is not available, as you can see:

# apt-cache search libgstreamer
libgstreamer1.0-0 - Core GStreamer libraries and elements
libgstreamer1.0-dev - GStreamer core development files
libgstreamermm-1.0-1 - C++ wrapper library for GStreamer (shared libraries)
libgstreamermm-1.0-dev - C++ wrapper library for GStreamer (development files)
libgstreamermm-1.0-doc - C++ wrapper library for GStreamer (documentation)
libgstreamerd-3-0 - GStreamer media framework - D bindings
libgstreamerd-3-dev - GStreamer media framework - development files for D
libgstreamer-ocaml - OCaml interface to the GStreamer library -- runtime files
libgstreamer-ocaml-dev - OCaml interface to the GStreamer library -- development files
librust-gstreamer-sys-dev - FFI bindings to libgstreamer-1.0 - Rust source code
libgstreamer-opencv1.0-0 - GStreamer OpenCV libraries
libgstreamer-plugins-bad1.0-0 - GStreamer development files for libraries from the "bad" set
libgstreamer-plugins-bad1.0-dev - GStreamer development files for libraries from the "bad" set
libgstreamer-gl1.0-0 - GStreamer GL libraries
libgstreamer-plugins-base1.0-0 - GStreamer libraries from the "base" set
libgstreamer-plugins-base1.0-dev - GStreamer development files for libraries from the "base" set

Please advise / alter the instructions to make them compatible with Debian 11.

Thank you.

Rule for wired heasdphone

Would it be possible to alow creating a separate rule for wired headphones? Right now it's not possible, as in my laptop the speakers are fed from the same audio device.

[Feature Request] Whitelist mode for Apps

I currently use this program to filter my music while talking in voice chats.

while this is currently possible I have to add every application that is not playing music to the blocklist manually.

I would love a feature to switch to whitelist mode so that I would only need to select the music app and everything else would remain unaffected by the filter

Disable backtrace option support

I've been trying to create a jamesdsp package for Gentoo, but the package fails to build under musl profile as musl does not implement execinfo.h (here). Is there any chance of having a configuration to disable backtrace through qmake?

EDIT: I tried to use DEFINES += AIRBAG_NO_BACKTRACE, but the aforementioned file is still imported and the error persists.

NO_PUBKEY 0E7DFE0CFBEFBBA6

When i want to add the PPA i get errors!
GPG error, no signed public key, not safe, updating from this repository is turned off.

I could include the exact errors, but they are in Dutch.

compile errors in crash/airbag.c on ARM64

I'm trying to build on Raspberry Pi OS (64-bit) with added locally built packages for pipewire 0.3.49

All goes well until the following:

../../src/crash/airbag.c: In function ‘sigHandler’:
../../src/crash/airbag.c:618:36: warning: implicit declaration of function ‘MCTX_PC’ [-Wimplicit-function-declaration]
  618 |     const uint8_t *pc = (uint8_t *)MCTX_PC(uc);
      |                                    ^~~~~~~
../../src/crash/airbag.c:618:25: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
  618 |     const uint8_t *pc = (uint8_t *)MCTX_PC(uc);
      |                         ^
../../src/crash/airbag.c:773:21: error: ‘NMCTXREGS’ undeclared (first use in this function)
  773 |     for (i = 0; i < NMCTXREGS; ++i) {
      |                     ^~~~~~~~~
../../src/crash/airbag.c:773:21: note: each undeclared identifier is reported only once for each function it appears in
../../src/crash/airbag.c:774:14: error: ‘mctxRegNames’ undeclared (first use in this function)
  774 |         if (!mctxRegNames[i])   /* Can trim junk per-arch by NULL-ing name. */
      |              ^~~~~~~~~~~~
../../src/crash/airbag.c:783:60: warning: implicit declaration of function ‘MCTXREG’ [-Wimplicit-function-declaration]
  783 |         width += safe_printf(fd, "%s:%x", mctxRegNames[i], MCTXREG(uc, i));
      |                                                            ^~~~~~~
../../src/crash/airbag.c:804:14: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
  804 |         pc = (uint8_t *)MCTX_PC(uc);
      |              ^
../../src/crash/airbag.c:818:23: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
  818 |     pc = (uint8_t *)(((uint32_t)pc) & ~3);
      |                       ^
../../src/crash/airbag.c:818:10: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
  818 |     pc = (uint8_t *)(((uint32_t)pc) & ~3);
      |          ^
make[1]: *** [Makefile:3569: airbag.o] Error 1

I'm guessing this is something architecture related in crash reporting? Any clues? Can I just bypass it somehow to get it to build for now?

Unable to compile on Raspberry Pi4 running on Raspberry Pi OS 64 Beta

Compilation fails with several type conversion errors. I'm assuming ARM64 is not supported.

Linux rpi 5.10.60-v8+ #1449 SMP PREEMPT Wed Aug 25 15:01:33 BST 2021 aarch64 GNU/Linux
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
In file included from ../../src/audio/base/DspHost.cpp:1:
../../src/config/DspConfig.h:141:35: error: could not convert ‘variant.QVariant::toFloat(0)’ from ‘float’ to ‘QString’
             return variant.toFloat();
                    ~~~~~~~~~~~~~~~^~
../../src/config/DspConfig.h:144:34: error: could not convert ‘variant.QVariant::toBool()’ from ‘bool’ to ‘QString’
             return variant.toBool();
                    ~~~~~~~~~~~~~~^~
../../src/config/DspConfig.h: In instantiation of ‘T DspConfig::get(const DspConfig::Key&, bool*) [with T = bool]’:
../../src/audio/base/DspHost.cpp:117:76:   required from here
../../src/config/DspConfig.h:129:20: error: cannot convert ‘QVariant’ to ‘bool’ in return
             return variant;
                    ^~~~~~~
../../src/config/DspConfig.h:132:51: error: cannot convert ‘std::__cxx11::string’ {aka ‘std::__cxx11::basic_string<char>’} to ‘bool’ in return
             return variant.toString().toStdString();
                                                   ^
../../src/config/DspConfig.h:135:37: error: cannot convert ‘QString’ to ‘bool’ in return
             return variant.toString();
                                     ^
../../src/config/DspConfig.h: In instantiation of ‘T DspConfig::get(const DspConfig::Key&, bool*) [with T = int]’:
../../src/audio/base/DspHost.cpp:203:5:   required from here
../../src/config/DspConfig.h:129:20: error: cannot convert ‘QVariant’ to ‘int’ in return
             return variant;
                    ^~~~~~~
../../src/config/DspConfig.h:132:51: error: cannot convert ‘std::__cxx11::string’ {aka ‘std::__cxx11::basic_string<char>’} to ‘int’ in return
             return variant.toString().toStdString();
                                                   ^
../../src/config/DspConfig.h:135:37: error: cannot convert ‘QString’ to ‘int’ in return
             return variant.toString();
                                     ^
../../src/config/DspConfig.h: In instantiation of ‘T DspConfig::get(const DspConfig::Key&, bool*) [with T = QVariant]’:
../../src/audio/base/DspHost.cpp:429:63:   required from here
../../src/config/DspConfig.h:132:51: error: could not convert ‘QString::toStdString() const()’ from ‘std::__cxx11::string’ {aka ‘std::__cxx11::basic_string<char>’} to ‘QVariant’
             return variant.toString().toStdString();
                                                   ^
make[1]: *** [Makefile:1634: DspHost.o] Error 1
make[1]: Leaving directory '/home/pi/JDSP4Linux/build/src'
make: *** [Makefile:97: sub-src-make_first] Error 2

Crashes after the latest PipeWire updates

After some of the latest PipeWire updates, JamesDSP started to issue random crashes.
My system is Arch Linux with pipewire from official repo. Tried to build the app with the latest commit from the repo.

Some info from the log:

[INF] Application version: 2.3-7-g66b7cb5 (Pipewire flavor)
[INF] Qt library version: 5.15.2
[DBG] Launched by system session manager: no
[DBG] Environment id: 2db093dc3f5840839806436d6c7fcca0
[INF] SingleInstanceMonitor::isServiceReady: Service registration successful
[INF] ============ Initializing audio service ============
[INF] Compiled with PipeWire support.
[DBG] MainWindow::ctor: Blocklisted apps: 
[DBG] MainWindow::ctor: Blocklist mode: block
[DBG] PwPipelineManager: compiled with pipewire: 0.3.44
[DBG] PwPipelineManager: linked to pipewire: 0.3.44
[DBG] PwPipelineManager: core version: 0.3.44
[DBG] PwPipelineManager: core name: pipewire-0
[DBG] PwPipelineManager: found metadata: settings
[DBG] PwPipelineManager: found metadata: default
[DBG] PwPipelineManager: found metadata: route-settings

Crash dump:

Caught SIGSEGV (11) in ???
Fault at memory location 0x0 due to address not mapped to object (1).
Thread 17859: jamesdsp
=== Context:
R8:2005d040 R9:800 R10:1 R11:1b7fd1b0 R12:20066040 R13:2005d040 R14:0 R15:2006f020
RDI:0 RSI:0 RBP:1ae06010 RBX:800 RDX:d8006c00 RAX:0 RCX:d8004c00 RSP:1b7fd940
RIP:5fb21538 EFL:10246 CSGSFS:33 ERR:4 TRAPNO:e OLDMASK:0 CR2:0
=== Binary:
Compile date: Jan 31 2022 22:53:35
GNU version: 110100
=== Backtrace:
jamesdsp[5f7e0000](+221a59)[5fa01a59]
/usr/lib/libpthread.so.0[3636e000](+13870)[36381870]
jamesdsp[5f7e0000](+341538)[5fb21538]
jamesdsp[5f7e0000](+174dba)[5f954dba]
/usr/lib/libpipewire-0.3.so.0[37821000](+5017a)[3787117a]
/usr/lib/libpipewire-0.3.so.0[37821000](+5ece9)[3787fce9]
/usr/lib/libpipewire-0.3.so.0[37821000](+61f9c)[37882f9c]
/usr/lib/spa-0.2/support/libspa-support.so[201b6000](+698b)[201bc98b]
/usr/lib/libpipewire-0.3.so.0[37821000](+44ba7)[37865ba7]
/usr/lib/libpthread.so.0[3636e000](+9259)[36377259]
/usr/lib/libc.so.6[35e2b000](clone+43)[35f295e3]
=== Code:
5fb214f8:  7c 1f 00 0f 82 df 00 00 00 48 8b bd 30 7c 1f 00 48 29 df 67 e8 4f f3 ff
5fb21510:  ff 48 3d 80 00 00 00 76 07 48 89 9d 30 7c 1f 00 48 85 db 74 32 48 8b 8d
5fb21528:  48 7c 1f 00 48 8b 95 50 7c 1f 00 31 c0 0f 1f 00>f3 41 0f 10 04 86 f3 0f
5fb21540:  11 04 81 f3 41 0f 10 04 87 f3 0f 11 04 82 48 83 c0 01 48 39 c3 75 e1 80
5fb21558:  7d 00 00 48 89 de 48 89 ef 74 6d 67 e8 87 f8 ff ff 48 89 ef 89 c6 49 89
5fb21570:  f6 67 e8 29 f0 ff ff 48
=== Local backtrace:
0x0000000000221ce7: printBacktrace at stacktrace.h:183
 (inlined by) sigHandler at airbag.c:860
0x0000000000013870: ?? ??:0
0x0000000000341538: pfloat32 at jdspController.c:374 (discriminator 3)
0x0000000000174dba: PwJamesDspPlugin::process(float*, float*, float*, float*, unsigned long) at PwJamesDspPlugin.cpp:56
0x000000000005017a: ?? ??:0
0x000000000005ece9: ?? ??:0
0x0000000000061f9c: ?? ??:0
0x000000000000698b: ?? ??:0
0x0000000000044ba7: ?? ??:0
0x0000000000009259: ?? ??:0
0x00000000000fe5e3: QCPFinancial::drawLegendIcon(QCPPainter*, QRectF const&) const at qcustomplot.cpp:27458 (discriminator 8)
=== System:
Linux version 5.16.4-zen1-1-zen (linux-zen@archlinux) (gcc (GCC) 11.1.0, GNU ld (GNU Binutils) 2.36.1) #1 ZEN SMP PREEMPT Sat, 29 Jan 2022 19:08:11 +0000
2db093dc3f5840839806436d6c7fcca0
LSB Version:	1.4
Distributor ID:	Arch
Description:	Arch Linux
Release:	rolling
Codename:	n/a

Random crashes at playback start

OS: Archlinux
Pipewire version: 0.3.45

For quite some time (might be 2-4 weeks, not quite sure) i had a bug that crashed my JamesDSP instance during start of playback, at a random point of working perfectly fine.
It was frustrating and i thought about making bug report
Only thing i'm using is crossfeed with realistic sound

I ran jamesdsp through terminal and collected log, also got crash dump with SIGSEGV (11)
application.log
crash.dmp.txt

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.