james34602/JamesDSPManager logo

james34602/JamesDSPManager

Free

Audio DSP effects build on Android system framework layer. This is a repository contains a pack of high quality DSP algorithms specialized for audio processing.

FreeFree tier
Type
Open Source

About james34602/JamesDSPManager

JamesDSP is a cross-platform audio effect and digital signal processing library, with a GUI based on Omnirom DSP Manager. It runs on most Android devices from 5 to 10, including AOSP, Cyanogenmod, Huawei (arm64), LineageOS, Samsung, and recent HTC. The app offers a wide range of high-quality DSP algorithms: multiband dynamic range compander, auto bass boost, reverb (Progenitor 2 IIR network), interpolating FIR and IIR equalizers, partitioned convolver (auto segmenting convolution), live programmable DSP via EEL2 code (including advanced math and DSP functions), stereo widener, crossfeed (BS2B and HRTF), vacuum tube modelling, and Viper DDC. It supports 16, 24 (3/4 byte integer), and 32 (integer/float) bit depths. This repository is an Android variant; JDSP4Linux uses the core library from this repo.

Key Features

Multiband, multiresolution dynamic range compander
Auto Bass Boost with frequency detection
Reverb using Progenitor 2 (complicated IIR network)
Interpolating FIR and IIR equalizers with flat response when gain is uniform
Partitioned convolver supporting mono, stereo, and full/true stereo IR
Live programmable DSP with EEL2 code (includes advanced math routines, linear algebra, optimization, spectral processing, filter design, etc.)
Stereo widening that enhances soundstage without affecting vocal integrity
Crossfeed with traditional BS2B mode and convolution-based HRTF
Vacuum tube modelling (second harmonic generator)
Viper DDC (Cascaded Second-Order Sections Form II IIR filterbank)

Pros & Cons

Pros
  • High-quality DSP algorithms optimized for audio
  • Wide range of effects from basic EQ to advanced convolution and programmable DSP
  • Live programmable DSP via EEL2 with many built-in math/DSP functions
  • Cross-platform core library used also for Linux (JDSP4Linux)
  • Supports many Android devices and ROMs over a wide version range
  • Flat-response equalizers when gain is uniform, unlike some competitors
Cons
  • Manual installation may require system-level modifications (e.g., root access)
  • Effect may be unloaded by Android system when no audio stream is active for a while
  • Some features (e.g., convolver) require external audio files (.wav/.irs/.flac)
  • Not available on Google Play Store; must be installed via custom recovery or manually
  • Compatibility with newer Android versions (11+) not explicitly stated

Best For

Audio processing on Android devices for music enthusiastsCustom audio effects for Android custom ROMsLive sound experimentation with programmable DSPAudio engineering and digital signal processing learningConvolution reverb and impulse response simulationEqualization and dynamic range control in portable audio

FAQ

What computation datatype does JamesDSP use?
JamesDSP uses Float32 for audio processing.
What is the convolver effect?
The convolver applies convolution (a mathematical operation) on the input signal to perfectly apply a user-desired response, simulating physical space. It requires an audio file (.wav/.irs/.flac) as the impulse response source.
How do I install JamesDSP?
There is an advanced manual installation method. You need to add a line in audio_effects.conf, e.g., 'jdsp { path /system/lib/soundfx/libjamesdsp.so }' under the bundle section, and place the library file in /system/lib/soundfx/.