JamesDSP Audio Manager [MMT-EX]

Search This thread

sawdoctor

Senior Member
Sep 11, 2016
1,178
1,423
Google Pixel Fold
Running the rootless version on the zfold 3 and really impressed. Shame about Spotify but it works perfectly with Tidal and Plex. Only thing I'd say is make the headphone/earbuds profile's a bit easier to find. Unless you read the playstore instructions you'll probably not find them and most users are too lazy to read
 

21071992

Senior Member
Feb 26, 2012
211
29
Running the rootless version on the zfold 3 and really impressed. Shame about Spotify but it works perfectly with Tidal and Plex. Only thing I'd say is make the headphone/earbuds profile's a bit easier to find. Unless you read the playstore instructions you'll probably not find them and most users are too lazy to read
Which android version are you using? I cant get rootless jamesdsp to work on my poco f3, I tried Miui 14 and Pixelos 13, both cant get rootles jdsp to work properly. As soon as I enable jdsp, sounds is distorted, reverb, stutter, lagging, unusable at all. I really want to try rootless because I dont want to root my phone, I have no need for any module.
 

21071992

Senior Member
Feb 26, 2012
211
29
FYI from this post: Just make sure you have enough RAM to run both of them at the same time as well as your audio app while......

You can try the attachment there.
This post refer to root version, and I have problem with rootless version, I also don't use v4a so can't relate to this post. I tried root jdso and it works fine, only rootless version gives problems
 

sawdoctor

Senior Member
Sep 11, 2016
1,178
1,423
Google Pixel Fold
Which android version are you using? I cant get rootless jamesdsp to work on my poco f3, I tried Miui 14 and Pixelos 13, both cant get rootles jdsp to work properly. As soon as I enable jdsp, sounds is distorted, reverb, stutter, lagging, unusable at all. I really want to try rootless because I dont want to root my phone, I have no need for any module.
I'm on the zfold 3 but my son has a xaiomi redmi note 10 pro and it works. Auto dynamic range compressor caused distortion for me so I just leave that toggled off
 

sawdoctor

Senior Member
Sep 11, 2016
1,178
1,423
Google Pixel Fold
Although I know sound can differ from device to device, it would be nice if you can post your JDSP settings, preferably with screenshots. Or, is there a simple User's Guide somewhere?
Tbh I'm still playing with it and haven't actually decided on the best settings but have noticed 2 things. Auto dynamic range compressor caused terrible distortion and secondly less is more. The more options I toggle on the more likely I am to have issues
 
  • Like
Reactions: m0han

zgfg

Senior Member
Oct 10, 2016
10,688
9,203
Redmi K20 / Xiaomi Mi 9T
Xiaomi Mi 11
Since there are substantial changes in magisk --path between Magisk v26 and earlier, both official latest AML and JamesDSP modules don't work on Magisk v26

I have adapted both modules and successfully tested on my two phones, one with Magisk v25210 and the other with Magisk v26102 (Canary)

Ie, I have now both Viper4Android and JamesDSP (drivers merged with AML) co-working both on Magisk v26 and v25

My modded modules are attached, you can install and test

@Zackptg5 - please take a look and fix/release your official modules

For JAmesDSP, I had to adapt $ORIGDIR in functions.sh

For AML, I had to adapt $MAGISKTMP in post-fs-data.sh and $MODPATH both in post-fs-data.sh and service.sh

They are adapted to work both for Magisk v26 and earlier

All the rest is same/original in both modules. Your excessive logging helped a lot to fix/adapt them👍

---

Edit:

Per OP developer @Zackptg5 (see his post #1357 below), his latest JDSP module version
https://raw.githubusercontent.com/Zackptg5/JamesDSPManager/master/install.zip

was adapted and should work on Magisk v26 (I have also tested and it worked for me on Magisk v26102 Canary) hence I'm removing my JDSP module (fix for Magisk v26) from the attachment.

Please use his official JDSP (or newer, if/when released):
id=ainur_jamesdsp
name=JamesDSP Manager
version=v4.7 (8-4-2022)
versionCode=87
 

Attachments

  • Audio_Modification_Library-v4.2(57)-fix_for_Magisk_v26.zip
    7.7 KB · Views: 263
Last edited:

zgfg

Senior Member
Oct 10, 2016
10,688
9,203
Redmi K20 / Xiaomi Mi 9T
Xiaomi Mi 11
Yeah, but the first step was to make the AML scripts to start logging somewhere

With the original env variables (incorrect for Magisk v26), post-fs-data.sh and service.sh scripts didn't even log

When I got them to start logging, then I had to inspect all "no such file" or "read only filesystem" errors in the logs to further correct the scripts to do their job

But at the end (easy to be a general now after the battle) it was all about properly setting the few env variables at the beginning of the scripts

---

Edit:

Per OP developer Zackptg5 (see his post #1357 below), his latest JDSP module version
https://raw.githubusercontent.com/Zackptg5/JamesDSPManager/master/install.zip

was adapted and should work on Magisk v26 (I tested and it worked for me on Magisk v26102 Canary) hence I've removed my JDSP module (fix for Magisk v26) from the attachment.

Please use his official JDSP (or newer, if/when released):
id=ainur_jamesdsp
name=JamesDSP Manager
version=v4.7 (8-4-2022)
versionCode=87
 
Last edited:

zgfg

Senior Member
Oct 10, 2016
10,688
9,203
Redmi K20 / Xiaomi Mi 9T
Xiaomi Mi 11

Attachments

  • IMG_20230601_152735.jpg
    IMG_20230601_152735.jpg
    341.5 KB · Views: 49

Lughnasadh

Senior Member
Mar 23, 2015
6,110
7,567
Google Nexus 5
Huawei Nexus 6P
Since there are substantial changes in magisk --path between Magisk v26 and earlier, both official latest AML and JamesDSP modules don't work on Magisk v26

I have adapted both modules and successfully tested on my two phones, one with Magisk v25210 and the other with Magisk v26102 (Canary)

Ie, I have now both Viper4Android and JamesDSP (drivers merged with AML) co-working both on Magisk v26 and v25

My modded modules are attached, you can install and test

@Zackptg5 - please take a look and fix/release your official modules

For JAmesDSP, I had to adapt $ORIGDIR in functions.sh

For AML, I had to adapt $MAGISKTMP in post-fs-data.sh and $MODPATH both in post-fs-data.sh and service.sh

They are adapted to work both for Magisk v26 and earlier

All the rest is same/original in both modules. Your excessive logging helped a lot to fix/adapt them👍
Both mods are working on my devices:

Pixel 2 XL
Android 11
Magisk Canary 26102
JamesDSP also working with V4A (latest hoch)
AML (Magisk 26)

Pixel 6 Pro
Android 14 Beta 2.1
Magisk Canary 26102
JamesDSP also working with V4A-RE (Reverse Engineered)
AML (Magisk 26)

Interestingly, JamesDSP was working on the Android 14 DPs, but stopped working on the Android 14 Betas. I believe something changed with the betas to make it stop working. A few others with Pixel 6/7 devices also reported that JamesDSP stopped working when they updated from the Android 14 DPs to the Betas

This Android 14 Beta bug is unrelated to Magisk 26, I believe, as I was using Magisk Canary 26001 with Android 14 DP2 and it was working fine. . . So these two mods may have killed an Android 14 Beta "bug" as well.

Also, on both devices replacing the JamesDSP apk with the Rootless apk version works fine for me.

Thanks for updating these two mods!

UPDATE: Both mods are also working on my Pixel 7 Pro running Android 13 (May) & Stable Magisk 26.1, although both older mods were working on this device and setup beforehand as well.
 
Last edited:
  • Like
Reactions: zgfg

21071992

Senior Member
Feb 26, 2012
211
29
I'm on the zfold 3 but my son has a xaiomi redmi note 10 pro and it works. Auto dynamic range compressor caused distortion for me so I just leave that toggled off
It's weird because I cant get the rootless version to work on my poco f3, tried stock rom, xiaomi.eu and aosp rom like pixelos but it just doesn't work, I really want to try the rootless version.
 

Zackptg5

Recognized Developer
Sep 18, 2014
4,148
7,005
zackptg5.com
Google Pixel 4a
Google Pixel 5a
Since there are substantial changes in magisk --path between Magisk v26 and earlier, both official latest AML and JamesDSP modules don't work on Magisk v26

I have adapted both modules and successfully tested on my two phones, one with Magisk v25210 and the other with Magisk v26102 (Canary)

Ie, I have now both Viper4Android and JamesDSP (drivers merged with AML) co-working both on Magisk v26 and v25

My modded modules are attached, you can install and test

@Zackptg5 - please take a look and fix/release your official modules

For JAmesDSP, I had to adapt $ORIGDIR in functions.sh

For AML, I had to adapt $MAGISKTMP in post-fs-data.sh and $MODPATH both in post-fs-data.sh and service.sh

They are adapted to work both for Magisk v26 and earlier

All the rest is same/original in both modules. Your excessive logging helped a lot to fix/adapt them👍
I already updated jdsp a couple days ago, aml should obtain whatever magisk --path is
 
  • Like
Reactions: _mysiak_

sawdoctor

Senior Member
Sep 11, 2016
1,178
1,423
Google Pixel Fold
It's weird because I cant get the rootless version to work on my poco f3, tried stock rom, xiaomi.eu and aosp rom like pixelos but it just doesn't work, I really want to try the rootless version.
Is the distortion on both speaker and earphones and have you tried toggling all the options off then enable one at a time. Can't think of anything else
 

21071992

Senior Member
Feb 26, 2012
211
29
Is the distortion on both speaker and earphones and have you tried toggling all the options off then enable one at a time. Can't think of anything else
Distortion from both speaker and earphones, if I only toggle the master switch and no options on, there is noticeably noise in the background
 

zgfg

Senior Member
Oct 10, 2016
10,688
9,203
Redmi K20 / Xiaomi Mi 9T
Xiaomi Mi 11
I already updated jdsp a couple days ago, aml should obtain whatever magisk --path is
If you think this AML:

module.prop:
id=aml
name=Audio Modification Library
version=v4.2
versionCode=57


That one does not work for me on Magisk v26:
- it produces empty folders /data/adb/aml and /data/adb/modules/aml/system,
- and there were no even log files debug-pfsd.log and debug.log

Indeed, your post-fs-data.sh script starts with:
[ -d "/sbin/.magisk" ] && MAGISKTMP="/sbin/.magisk" || MAGISKTMP="$(find /dev -mindepth 2 -maxdepth 2 -type d -name ".magisk")"
MODPATH=$MAGISKTMP/modules/aml


I don't have /sbin (and never had) and now for Magisk v26
its tmp dir has moved from /dev/<something> to /debug_ramdisk

hence your setup produces:
$MAGISKTMP = ""
$MODPATH = "/modules/aml"


As a result, post-fs-data.sh cannot read/write or do anything with that non-existing $MODPATH folder,
and it can not even write the log to "$MODPATH/debug-pfsd.log" to see what/why went wrong

So please see the path changes I made in my 'fix-for-Magisk-v26' for $MAGISKTMP and $MODPATH, they work for me on Magisk v26 and v26 as:
[ "$(magisk --path 2>/dev/null)" ] && MAGISKTMP="$(magisk --path 2>/dev/null)/.magisk" || MAGISKTMP="/sbin/.magisk"
MODPATH=/data/adb/modules/aml


or simpler:
MAGISKTMP="$(magisk --path 2>/dev/null)/.magisk"
MODPATH=${0%/*}


I have tested my fix both on Magisk v26 and v25

On Magisk v26 it cannot be anymore:
MODPATH=$MAGISKTMP/modules/aml

since /debug_randisk/.magisk/modules is now read-only folder on Magisk v26 (hence that change is also needed for service.sh, otherwise even service.sh cannot write its debug.log)

There are also few other users (here and in the AML thread) who confirmed that this fix now works for them, while the original AML did not work on Magisk v26
 
Last edited:

ichmyselfandi

Senior Member
Mar 6, 2018
106
22
Since there are substantial changes in magisk --path between Magisk v26 and earlier, both official latest AML and JamesDSP modules don't work on Magisk v26
Hello, I can't get JamesDSP to work, it crashes with 'JamesDSP keeps stopping'. I also allowed the 2 app permissions.
My steps: installed your AML version via Magisk; restart system; install your JamesDSP via Magisk; restart system; error. Without AML and James only I get the same error.

LineageOS 19, Android 12
Magisk Official 26.1 (26100)
Zygisk: No
Ramdisk: Yes


Edit:

It worked with Magisk Delta (from HuskyDG) and official AML.
I also enabled Zygisk, but did not test if necessary.

 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 184
    Description:
    This is a reformed audio effect digital signal processing engine for Android. The GUI is copy from Omnirom DSPManager, but the internal audio engine is enhanced and reformed!

    Features:
    • Pro dynamic range compression
    • Bass Boost
      • --> 1023/4095/8191 order FIR linear phase low pass bass boost
    • Reverberation (Dual engine reverb)
      • --> GVerb
      • --> Progenitor 2
    • 10 Band Hybrid Equalizer
    • Stereo Widen
    • Triode dual stage vacuum tube simulation
      • --> Simulate with real mathematical model of 12AX7 tube
      • Auto partitioning high efficient convolution engine
      • --> Support mono / stereo / full stereo(LL, LR, RL, RR) impulse response
      • --> Samples per channels should less than 1000000* for stereo
      • --> Samples per channels should less than 400000* for full stereo
      • --> Impulse response file support: V4A IRS, FLAC, WAV

    Install:
    • Install via Magisk Manager, Flashfire, or recovery (Magisk or System install will detect automatically)

    Uninstall:
    • Delete module in Magisk Manager
    • OR Flash module in recovery

    Audio Mod Troubleshooting Guide

    Download

    Notes:
    Convolver have been tested working even in stereo impulse response with 16121304 samples per channels on Snapdragon 820

    If you look at the source code from Java part, you will find some are similar with Viper4Android, but this is not true.
    Viper4Android only open source it's interface, their core drivers source code have never been released.
    For convenient sake, I copy some interface code to accelerate my development.

    How to compile the source code?
    Use Android NDK & Eclipse

    Previous post



    XDA:DevDB Information
    JamesDSPManager, App for the Apps & Games

    Contributors
    james3460297, ahrion, Zackptg5
    Source Code: https://github.com/james34602/JamesDSPManager


    Version Information
    Status: Stable
    Current Stable Version: v3.3
    Stable Release Date: 2020-11-02

    Created 2017-11-11
    Last Updated 2020-11-02
    17
    New JDSP is finally here everyone!
    11
    Anyone give links for PRESETS and IRS.... I downloaded from an old post , but that's causing the app to crash!
    1) You can download Convolvers and DDC from
    https://androidfilehost.com/?fid=1322778262904011552

    Unzip and
    - copy IRS files from Kernel folder to Internal memory: /JamesDSP/Convolver
    - enable Convolver and select an Impulse Response filter

    - copy VDC files from DDC folder to Internal memory: /JamesDSP/DDC
    - enable ViPER-DDC and select a DDC file

    Btw, with IdealEQ.vds for DDC file, there is also a notable increase in Volume (tested for Speaker and Headset)

    2) For Equalizer, enable Hybrid equalizer (for Speaker, Headset and Bluetooth), select Custom, and from the top-right menu chose Save preset, name it like MyDefault

    Open by eg MiXPlorer, Internal memory:
    /JamesDSP/Presets/MyDefault/james.dsp.speaker.xml
    (repeat the same for Headset and Bluetooth XML files)

    edit as Text file, find the line starting with
    <string name="dsp.tone.eq.custom">

    and replace by 'Small speaker' parameters:
    <string name="dsp.tone.eq.custom">7.0;6.8;6.4;3.5;0.0;0.0;0.0;0.0;0.0;0.0;0.0;-3.5;-6.4;-3.3;-3.5;</string>

    Then in JamesDSP, top-right menu, chose Load preset and select your MyDefault
    10
    JDSP has been updated to v1.7! See james' github for changelog, this installer uses the hq libs
    9
    Can you define HQ and SQ in specific terms?

    Yes. @Zackptg5 Yes, for sure.
    HQ process audio using float 64 data type, although Android audio framework most likely provide only 16 bit data, this doesn't mean it is unnecessary, because float 64 guarantee less rounding error, thus less noise.
    SQ mode is pretty standard in DSP, float 32 satisfy most situations, this is most power saving, and fastest.