RootlessJamesDSP
by Tim Schneeberger · GPL-3.0-or-later · open source
A system-wide sound processor for phones without root: it captures what other apps play, runs it through the JamesDSP engine for EQ, bass, reverb or your own impulse responses, and plays it back.
Needs:No root · Shizuku or ADB once · Android 10+
2113 Apps is independent, not affiliated with or endorsed by Tim Schneeberger. Official sources: source code on GitHub.
- Version
- 1.6.14
- Size
- 38.6 MB
- Requires
- Android 10+
- Updated
- 2025-05-06
Screenshots





Introduction
RootlessJamesDSP is the no-root edition of JamesDSP, an audio effects engine originally written by James Fung, packaged for Android by Tim Schneeberger. The README describes it as a “System-wide JamesDSP implementation for non-rooted Android devices”, and warns straight away: “This app has several limitations that may be deal-breaking to some people; please read this whole document before using the app.” The latest version is 1.6.14, from April 2025. Changes have been merged into its code in 2026, but no newer version has been released.
How it works without root
Android doesn’t let an app add effects to other apps’ sound, so RootlessJamesDSP takes a detour. It looks up which apps are playing audio, mutes their original output, records that sound through Android’s playback-capture feature (the one screen recorders use), runs it through JamesDSP and plays the result itself. The microphone permission is part of that; in the app’s words, it is “Required to record internal audio. The hardware microphone is not activated.”
For this it needs two rights that apps can’t normally ask for. You grant them once during setup, through Shizuku, through ADB from a computer, or with root if your phone has it. With the overlay permission as well, it can start by itself after a reboot; otherwise it shows a notification to start it.
The effects
From the project’s description: a limiter and output gain, automatic dynamic range compression, dynamic bass boost, an interpolating FIR equalizer, an arbitrary-response (graphic) equalizer, ViPER-DDC, a convolver for impulse-response files, Liveprog, a scripting engine for writing your own effects, analog modelling, soundstage width, crossfeed and a virtual room (reverb). It can also search the AutoEQ database for your headphone model and import a correction curve. A set of example scripts and impulse responses comes inside the app.
What it can’t do
- Apps that block capture stay unprocessed: the README names Spotify and Google Chrome and lists SoundCloud as unsupported. With the default setting, those apps simply play without effects; turned off, they “stay muted”.
- It works on media and game sound; from the code, it doesn’t take in calls, ringtones or notifications, which presumably play as usual.
- It “Cannot coexist with (some) other audio effect apps (e.g., Wavelet…)”, and some games using hardware-accelerated playback, such as some Unity games, need to be excluded by hand.
- Delay: processing adds some latency; for video apps, exclude them or lower the buffer size.
- On Android 15, the app explains that screen-sharing protections hide notification contents while it captures, and that a developer option turns this off.
The root edition, for phones with Magisk, has none of these limits (“All the limitations mentioned above are not relevant for the magisk/root version”), but its developer also writes, “I don’t actively test root builds.” We host the no-root app only.
What goes online
Only one thing in F-Droid’s build uses the internet: searching AutoEQ profiles, which queries the developer’s server aeq.timschneeberger.me when you look up a headphone model. You can set another server in the settings. There is no update check.
F-Droid’s build has no crash reporting or analytics: the Firebase services that the Google Play edition uses aren’t in it. On Play, the setup screen has a crash-report option that is ticked by default and says the app “submits crash reports and other diagnostic data”; F-Droid’s build hides that option. Our scan lists Sentry only as referenced: a logging library the app uses has optional Sentry classes, but the Sentry code isn’t included, and the app writes its logs to a local file.
About this file
- This is F-Droid’s build of version 1.6.14, compiled from the source and signed with F-Droid’s key. The developer publishes the app on Google Play and through F-Droid only, and attaches no APK to the GitHub releases; IzzyOnDroid doesn’t carry it.
- Google Play has the same package name, signed by the developer; on 22 October 2026 Play still listed version 1.6.12. Switching between the two means uninstalling.
- The 38.6 MB file runs on Android 10 and later, on ARM and x86, 32- and 64-bit. Its 15 permissions include the two special rights above, recording audio, the overlay and starting at boot (for starting by itself), a list of your installed apps (for the exclusion list, an F-Droid-only permission that the Play edition dropped) and Shizuku. Our scan found no trackers.
- RootlessJamesDSP is licensed under the GPL-3.0 or later, and the JamesDSP engine inside it under the GPL-2.0.
What’s inside the APK
Trackers
No code matching the Exodus Privacy tracker signatures. Other code in the app refers to Sentry by name, but none of its classes are in the package; see why that isn’t counted.
Native code
Runs on 64-bit and older 32-bit ARM phones.
Android versions
Built for Android 14 (target API 34).
Permissions
2 of them need your approval first.
Shizuku API. Uses the Shizuku API, so it can do ADB-level work without root once Shizuku is running. (rikka.shizuku.Shizuku$$ExternalSyntheticLambda0)
CPU types in this build: arm64-v8a (64-bit ARM, almost every phone since 2017); armeabi-v7a (32-bit ARM, older and budget phones); x86 (32-bit Intel, emulators); x86_64 (64-bit Intel, emulators and Chromebooks).
Asks you first (2)
Android shows a prompt before the app can use these.
- Show notifications (Android 13+) · POST_NOTIFICATIONS
- Record audio with the microphone · RECORD_AUDIO
You switch these on in Settings (1)
Special app access. Nothing is granted until you turn it on yourself.
- Display over other apps · SYSTEM_ALERT_WINDOW
System-level (1)
Reserved for system apps. A normal install does not get these; they only take effect through root, ADB or Shizuku, if at all.
- DUMP
Granted at install (9)
Low-risk permissions Android grants automatically, plus any we have not classified.
- ACCESS_NETWORK_STATE
- FOREGROUND_SERVICE
- FOREGROUND_SERVICE_DATA_SYNC
- FOREGROUND_SERVICE_MEDIA_PROJECTION
- INTERNET
- MODIFY_AUDIO_SETTINGS
- QUERY_ALL_PACKAGES
- RECEIVE_BOOT_COMPLETED
- WAKE_LOCK
Defined by other apps (2)
Permissions that belong to another app or to this app itself.
- me.timschneeberger.rootlessjamesdsp.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
- moe.shizuku.manager.permission.API_V23
More Information
- Package name
- me.timschneeberger.rootlessjamesdsp
- Version
- 1.6.14 (build 51)
- File size
- 38.6 MB (38,647,450 bytes)
- Requires
- Android 10 or later
- Category
- Media
- License
- GPL-3.0-or-later
- Developer
- Tim Schneeberger
- Source code
- github.com/ThePBone/RootlessJamesDSP
- Released
- May 6, 2025
- Signed by
- F-Droid, which built this APK from the published source code. Because the key is F-Droid’s, it won’t install over a copy from Google Play or GitHub (or the other way round) without uninstalling first.
- Signer SHA-256
- 950bc20f057acbb2c4cad75f08c725c972dbb673b7b0785d9fda88c2f51df373
- File SHA-256
- 4cdd6cbc57abb00b1ce28668dc29c021640bae8c4521ec592efc58c4239d83a1
- Checked
- , against the F-Droid index · how we check · verify it yourself
Common questions
Is this APK the official RootlessJamesDSP release?
It is F-Droid’s build rather than the developer’s own: F-Droid compiled RootlessJamesDSP 1.6.14 from the published source code and signed it with its own key. Its SHA-256 matches F-Droid’s signed index. Because the key is F-Droid’s, it won’t install over a copy from Google Play or GitHub without uninstalling first.
What Android version does RootlessJamesDSP need?
Android 10 or later (API level 29). Version 1.6.14 is built for Android 14 (target API 34). Runs on 64-bit and older 32-bit ARM phones.
Can RootlessJamesDSP access the internet?
Yes. The APK requests Android’s internet permission. In total it declares 15 permissions, and 2 of them need your approval first.
Does RootlessJamesDSP contain trackers?
No known trackers: our scan of version 1.6.14 found no code matching the Exodus Privacy tracker signatures. The scan covers known tracker libraries; it doesn’t show what data the app itself sends.
Is RootlessJamesDSP open source?
Yes. RootlessJamesDSP is released under the GPL-3.0-or-later licence, and its source code is published at https://github.com/ThePBone/RootlessJamesDSP.
Why does it need Shizuku or a computer?
It needs two rights that ordinary apps can’t ask for: reading the system’s audio sessions (the DUMP permission) and capturing other apps’ sound without asking each time. Setup grants them once, through Shizuku, through ADB from a computer, where the app suggests the web tool app.webadb.com, or with root.
Why does Spotify or Chrome sound unchanged?
Those apps don’t allow other apps to capture their sound, and the README names them: “Apps blocking internal audio capture remain unprocessed (e.g., Spotify, Google Chrome)”. By default RootlessJamesDSP leaves such apps alone, so they play normally, just without the effects.
The sound is out of sync with video. What can I do?
The app warns that it “may add some delay to the audio stream”, and suggests adding video apps to its exclusion list so their sound isn’t processed. A smaller buffer, in the settings, also lowers the delay.
Can this file update the Google Play version?
No. This is F-Droid’s build, signed with F-Droid’s key, and the Play version is signed by the developer, so Android won’t install one over the other. Export your settings with the app’s backup feature, uninstall, and import them in the new one.
Recent releases
| Version | Released | Size | Requires |
|---|---|---|---|
| v1.6.14 · this download | May 6, 2025 | 38.6 MB | Android 10+ |
| v1.6.13 | Jan 2, 2025 | 38.6 MB | Android 10+ |
| v1.6.12 | Dec 21, 2024 | 38.6 MB | Android 10+ |
Versions currently kept in the F-Droid repository. We host and check only the newest one.