Releases: alienware377/RootlessViPER4Android
Release list
RootlessViPER4Android v3.35.0 — the mastering suite, rooted mode, and a name of its own
⚠️ Read this first — v3.35.0 does not update your existing install
The package name has changed to this project's own, so Android treats this as a new app. It installs alongside your current copy rather than updating it, and your settings do not follow on their own.
Back up before you switch. In your existing app: Settings → Backup & restore → Create backup. Install v3.35.0, restore that file, and your presets, card layout and every effect setting come across intact. Then uninstall the old one.
| old | new | |
|---|---|---|
| Rootless | me.timschneeberger.rootlessjamesdsp |
com.alienware377.viper4android.rootless |
| Rooted | james.dsp |
com.alienware377.viper4android.rootful |
The rooted build is now called RootfulViPER4Android, because shipping the rooted app with "Rootless" in its name was never anything but confusing.
🎛 A full mastering suite
Six new effect cards, plus substantial additions to two existing ones.
- Dynamic EQ — bands that act only while their own slice of the spectrum crosses a threshold, so taming a boom that happens on four notes no longer costs body on everything else. Bands are fully editable, and each can be pointed at the centre of the stereo image or its edges — a de-esser can catch a vocal without dulling the reverb around it, and the half you did not aim at comes through bit-for-bit unchanged.
- Multiband stereo imaging — width chosen per frequency range instead of all at once, with a mono-below control so the low end folds to the centre while the top opens up. Mono recordings come through untouched.
- Impact — shapes how a note starts and how long it takes to die, rather than how loud it is, per frequency range. A held tone is left completely alone while a drum hit can be sharpened or softened.
- Low end — a steep subsonic filter so inaudible rumble stops eating headroom, one knob for body, and a wide dip where recordings turn thick.
- Exciter — four ranges each with its own amount, and five characters: three symmetrical ones adding odd harmonics, two lopsided ones adding even harmonics. That difference is what separates a transistor sound from a valve one. The older two-band Bass exciter stays put so existing setups keep working.
- Vintage tape — wow and flutter as a genuinely modulated delay line rather than a phase trick, gentle saturation, a bias control that runs the right way round (down is brighter and grittier, up is duller), and the head bump that makes tape masters sound weightier.
- Maximiser — four limiting algorithms with character, transient emphasis, true-peak detection, stereo linking and oversampling, plus a soft clipper offering three curves: from one that bends immediately and adds density to one that stays linear until the very top and only catches peaks.
- Multiband distortion — pick the ranges to drive, with eight distortion characters, chorus and a global mix, built on the interactive EQ editor.
🔓 Rooted mode
A Magisk module carrying this fork's own engine as a system-wide audio effect, so rooted devices run these effects rather than the stock JamesDSP set. Ships as a separate app, RootfulViPER4Android, alongside the rootless one. Legacy effect HAL, so Android 14 and below — Android 15 moved to a binder service and that work is still in progress.
🎨 Theme builder
Design a scheme from a single base colour with hue, saturation and brightness sliders or a hex value, with dark and pure-black switches and a live preview of the derived roles. Hand-set Secondary and Tertiary now actually reach the things they should, including the equaliser graphs.
🎚 Equaliser
A linear / minimum phase toggle for the FIR equaliser — the coefficient generator always supported both, but the mode was pinned to minimum phase. It appears on both equaliser cards, since the two are merged into one filter before the engine sees them, and the setting stays in step across them.
🐛 Notable fixes
- Presets now actually load. Loading a preset applied nothing at all in some cases (#3).
- Your card layout is yours. Loading a preset no longer replaces your arrangement. The one thing it may still do is reveal a card it switches on, so an effect can never come on with nothing on screen to show for it. Take a preset's layout deliberately with long-press → Apply card layout. Backups now carry the layout too.
- The card order stopped decaying as it saved.
- Cutoffs actually cut off — the control drew a gentle slope across the whole spectrum rather than a corner.
- Six controls that looked live and did nothing now do what they say.
- Distortion was inaudible, and the overdrive curve behind it was wrong.
- The tube simulator's drive was divided by 100 before reaching the engine, capping it around 0.12 dB.
- Effects added after you had reordered your chain were silently dropped from it.
- Every new effect was missing from the default chain, so on a fresh install the six cards above did nothing at all. They were switched on, configured and receiving parameters — simply never dispatched.
- A crash when switching an effect off freed its buffers under the audio thread.
- Several layout and preset crashes, and a crash re-applying a layout whose groups had changed.
- Cold-open scrolling no longer stutters while cards install in the background.
- Effects designed at one sample rate now follow when the rate changes — previously a filter asked to sit at 30 Hz could sit at 27.6 Hz for a whole session.
- Vintage tape no longer drops out for 12 ms when switched on, or pops when switched off.
🙏 Credits
Built on JamesDSP by james34602 and RootlessJamesDSP by Tim Schneeberger, which made system-wide DSP without root a reality. ViPER4Android effects are native re-implementations.
138 commits since v2.8.2.
RootlessViPER4Android v2.8.2
A big release: the classic ViPER experience, three new reverb rooms, library management, and a fix for idle battery drain.
✨ New
ViPER4Android-only mode — a switch at the top of Settings that narrows the app to the effects V4A shipped, with its naming, its processing order (taken from the original) and its limiter. Everything else is switched off so it uses no resources, and the search, layout editor and groups step aside for the single fixed list V4A had. Turn it off and your own setup comes back untouched.
ViPER4Android classic theme — the classic look with purple accents on neutral grey, flat full-width rows, and the master limiter doubling as the power switch. Available on its own in Appearance, so you can have the look without giving up any features.
Three new reverb rooms — alongside the original ViPER model: a smooth studio Plate (Dattorro figure-eight tank), a large warm Concert hall (8-line feedback delay network with per-band decay), and a natural Room with early reflections. Controls follow V4A naming, and sliders that don't apply to the selected room hide themselves. Thanks to @Menorah for the request and the research.
ViPER classic limiter — a faithful re-creation of the original V4A limiter, with the lookahead, smoothed attack and transient bite that let it run louder before it clamped down. Available as a limiter mode for everyone, and used automatically in V4A-only mode.
Convolver & DDC library management — search your libraries, sort them your way, hide what you don't use, and organise them into groups. The add menu can also download more impulse responses and DDC profiles from public repositories, skipping anything you already have, and you can add your own repository by pasting a link.
Speaker optimization, retuned — the old curve spent most of its effect removing bass a phone speaker can't reproduce. It now works where a small speaker is actually heard, with noticeably more presence and air.
🐛 Fixed
- Idle battery drain — processing kept running through silence whenever an app sat paused holding its audio session. It now stands down after 20 seconds of quiet and resumes instantly on the first sound.
- Parametric EQ — Remove now works on the band you have selected (it was the other way around), and adjusting Q right after dragging a handle no longer snaps the band back.
- Effect card icons — some icons, including Reverberation, could render blank.
- Various fixes to layout groups, the delay panel and the output limiter's unused controls.
📥 Install
Most phones and tablets want arm64-v8a. Use universal if you are unsure. Installs alongside the original RootlessJamesDSP, so you can keep both.
🔐 SHA-256
59e8958872a246854c4af6ee4dd6b7d51cb5855bce789c072c8b260cf1a9d578 arm64-v8a
5309e860e88589815ff4deed56ba035b16f1ce7761c35c2c132faacfbb0d1c90 armeabi-v7a
d82775ed6341e48d72efcd2364b263960427acdaaee2353d2a2dcaa4f4c0c81b universal
468da5d419632977467cebb6c016b69741385f2acc2c12bf72b3b2b2fef67b9e x86
4036e0f4c8ba34c02c9c05a954fc90174a3abc15498bfd723dfb75ffc3a80194 x86_64
RootlessViPER4Android v2.0.0
The biggest release yet — new effects, a rebuilt interface, and major work on speed and stability.
✨ New
Reorderable DSP chain — drag effects into any order you like on the new Processing order screen. The output limiter stays pinned last so nothing can clip past it.
Interactive parametric equalizer — drag bands straight on the response curve, long-press to add or remove, and tune frequency, Q and gain on rotary controls. Bands sort themselves by frequency, selecting a handle opens its controls, changes apply live, and full undo/redo has your back. Import and export supported, with a ±30 dB preamp.
Echo / delay — a complete delay unit on its own knob panel: mono, stereo and ping-pong models, filtered feedback (LP/HP/BP with resonance), sample-rate and bit-depth crushing, tape-style modulation of time and cutoff, diffusion with spread, feedback distortion (limit or saturate, with knee and symmetry), plus input level, tone and wet/dry. The panel reflows to fit any screen size.
Chained Liveprog — run up to four EEL2 scripts at once. Pick them all in a single multi-select pass, where numbered badges show which slot each script feeds. Every slot gets its own parameters and editor.
Pitch shifter — ±12 semitones with a dry/wet mix.
Customisable layout — reorder, hide and group the effect cards, and search across every effect. Your layout travels with your presets.
🐛 Fixed
- Startup freeze — the app blocked for several seconds on launch. Three separate causes: ~26 preference screens inflating synchronously (3.4 s), the main screen being rebuilt twice on every activity recreate, and memory bloat. Cards now load as they scroll into view.
- Silence after switching off — if closing the engine failed, the audio capture was never released and every app on the device stayed silent. Teardown now releases the capture first and guards each step.
- Memory use — large effect buffers lived inside the engine struct, which is created per audio session, so idle effects cost tens of megabytes. Buffers are now allocated only while an effect is on: native heap dropped from ~176 MB to ~92 MB.
- Echo/delay silencing all audio — the feedback filter was unstable above ~fs/6 and the default 12 kHz cutoff drove it to NaN. Replaced with a topology-preserving filter that is stable to Nyquist.
- Chained Liveprog never running — scripts in slots 2-4 compiled correctly but were never enabled.
- Tube simulator did nothing — its make-up gain exactly cancelled the drive, measuring 0.00% THD at every setting.
- Crash logs now persist and can be viewed any time under Settings → Troubleshooting.
📥 Install
Most phones and tablets want arm64-v8a. Use universal if you are unsure. Installs alongside the original RootlessJamesDSP, so you can keep both.
🔐 SHA-256
133b60536f12ccfca0e486a855fb74034145fbd711c2aec8e19790bb2a7a9f72 arm64-v8a
31be352796f58a52a85922031a04afffee12daf99b4ca611ea93d8cc429dd6c9 armeabi-v7a
9bda29b6e114bd66aa5f9f417c926b8fbabd654f6a40f8a11ac019149d827267 universal
fb1c7f8025803493e1c2c5c387c810accebba5b133b3135ea6cf9548742556e0 x86
def9cc895ce4f2a7ac7ffb82a4c95e1ae3c8383869cb5e2295b94fa0a7f0c773 x86_64
RootlessViPER4Android v1.2.0
🎶 v1.2.0 — Pitch shifter, optimized release builds & smooth audio
New
- 🎤 Pitch shifter: shift everything ±12 semitones in real time without changing speed (0.1-st steps + wet/dry mix) — from deep-voice to chipmunk
- ℹ️ Info rows now use a proper Material icon (user feedback — thanks!)
- 👋 Setup wizard greets you as RootlessViPER4Android
Fixed / Changed
- 🚀 Now shipping optimized release builds — fixes audio stuttering caused by debug-only tooling (LeakCanary heap dumps + Pluto inspector) and runs the DSP engine fully optimized
- 📦 New package id (
….v4a): installs as a fresh app alongside any older build. Set it up once, then uninstall the previous version. Future updates install in place - 🛡 Launch self-check now accepts the new package
Which APK?
Most phones: arm64-v8a. Unsure: universal.
SHA-256
8ec0ddac1472c1f4292f10f13ff3a401d0496749c9e151ddd4688efa84d8c5ed RootlessViPER4Android-v1.2.0-arm64-v8a.apk
c7295809249f84cae4865ab011a103b09668b61d8a7e6fc26409f15bf04df6b0 RootlessViPER4Android-v1.2.0-armeabi-v7a.apk
5ae8a5c00d8f22306fc899ff122b3bb8bbab39f96610087e1ab29fe782acc87d RootlessViPER4Android-v1.2.0-universal.apk
4380f1fa1f3e242425d666fc857adb314343a871921b9019cb2f08dbb7928d30 RootlessViPER4Android-v1.2.0-x86.apk
e50067ff03dc55d83bd52e04aa16de661f82639a9a96660d3444d02377cc86fc RootlessViPER4Android-v1.2.0-x86_64.apk
RootlessViPER4Android v1.0.1
💜 v1.0.1 — ViPER Purple theme
- 🎨 New default "ViPER Purple" theme: V4A-style dark gray with vibrant purple accents
- ☀️ Matching white + purple light theme
- 🌗 Follows system dark mode automatically; switch manually anytime via Settings → Appearance → Theme mode (Auto/Light/Dark) and pick your palette under App theme
- 🐛 Includes the launch self-check fix and the new viper icon from post-1.0.0 builds
Existing users: if you had a palette selected before, tap ViPER Purple once in Settings → Appearance.
SHA-256
f16105797549165b82e72134bc4d036b3cd5a85d9b3a83acb658ce5f3e2aa605 RootlessViPER4Android-v1.0.1-arm64-v8a.apk
2ab94272f26c9fe02a2996f2f376edd27b6176f232fabb95ad360353320cb103 RootlessViPER4Android-v1.0.1-armeabi-v7a.apk
d079002dd07a2f39f8f79c3263630024303ebac3a6c5904a5ff87d1f554e3f40 RootlessViPER4Android-v1.0.1-universal.apk
3e0e07505e283f84a47bb036e98899d9520442f431a11ff918956d7ce4a6b287 RootlessViPER4Android-v1.0.1-x86.apk
a87ac55e1d5bccf38d19a30aeb054fbc8bc288f1a5eda994a82d72359f07f750 RootlessViPER4Android-v1.0.1-x86_64.apk
RootlessViPER4Android v1.0.0
🐍 RootlessViPER4Android v1.0.0 — first release!
ViPER4Android-style audio effects on Android — no root required. A feature-extended fork of RootlessJamesDSP.
Highlights
- 🎛 16 ViPER effect sections in authentic V4A order: AGC, FET Compressor, ViPER-DDC (446 profiles bundled), Spectrum Extension, FIR EQ, Convolver, Field/Differential/Headphone Surround+, Reverberation, Dynamic System (19 presets + custom), Tube Simulator 6N1J, ViPER Bass, ViPER Clarity, Cure+, Speaker Optimization
- 🔊 Dual-band psychoacoustic bass exciter
- 🛡 Selectable limiter modes (peak / soft-saturation / off)
- 🔥 Fixed upstream tube-gain bug (effect was inaudible) — now up to 24 dB
- 🪄 One-line info explainers, smart slider hiding, crash diagnostics
- 🐍 Brand-new viper icon
Which APK?
Most phones: arm64-v8a. Not sure: universal.
Installs alongside the original RootlessJamesDSP as a separate app.
Credits 💜
Built on JamesDSP by James Fung and RootlessJamesDSP by Tim Schneeberger. Effects inspired by ViPER4Android by the ViPER's Audio team. Thank you!
SHA-256
1e34cb77d6034e41251ecc4f80b6c5b520087f8f0905c5e54ae7008cf025dbc9 RootlessViPER4Android-v1.0.0-arm64-v8a.apk
e5dff31c7e1c9f355c849a0b880aa7819536729de4f4e8c713fa80bb7794984e RootlessViPER4Android-v1.0.0-armeabi-v7a.apk
82e43f5a1e55a63b2a35d9fd233c87700834da391c0ed8267fad72479672165a RootlessViPER4Android-v1.0.0-universal.apk
89cd49e3449b7c62153c0455ffe89d47e66b39ec4e844ae66ca99d7dd94179cf RootlessViPER4Android-v1.0.0-x86.apk
c1767945e651fbc07e8010c1485968d02268cd18b04455a2919ebc4ebc48f2a6 RootlessViPER4Android-v1.0.0-x86_64.apk