yashsingh1/xdaforums huggingface dataset:
[Android Apps and Games] DiamondJohn:
Its a little shady, in that TWRP does ALL its functions through root. So the install of Viper is basically using root. Your recovery is rooted, even though your OS is not. But because your recovery is rooted with superuser privileges, you can thereby install apps using root methods, even though your OS is not rooted.

So that installs the driver, but I assume it does not change the SELinux allows. Getting viper to work on a non rooted phone can be problematic as there is also the issue of SELinux allows. Average ROMs do not have the required SELinux allows, to run enforcing. A few years back before I started using Magisk for my Viper. I use to build the ROMs I ran on my device, and to get around that, I explicitly modified the SELinux allows in the ROM source, but I always ran rooted, so could of changed it at boot also, but I made it simpler for others who used my ROMs.
[Android Apps and Games] purgy:
I use AutoNotification to set viper to lowest priority, so it sits with the "silent" notifications, and is minimised by default. You could also hide it completely.
[Android Apps and Games] DiamondJohn:
I simply go into settings> apps and turn off all notifications from Viper.
[Android Apps and Games] purgy:
I found that without the notification, viper was being killed when updating apps from play store / using the camera etc, and would require a reboot to get working again.
[Android Apps and Games] DiamondJohn:
you can oom and nice viper to keep it low on the kill priority list. Also check battery optimisation and memory levels.

As for a reboot, a firce stop and restart might get viper back without a reboot.
[Android Apps and Games] shegeloaf:
This working on Android 11?
[Android Apps and Games] tranquillador:
There is no APK at the link. Under the V4A drop-down, there is a Magisk module (which does install the APK), a rootless driver in a .zip file, a link to this thread, a profile converter, and VDCs. The instructions do not make sense, since there is no direct link to an APK.

Using "common sense" and just installing the Magisk module and then opening the app, installing the drivers, and rebooting, the app does not work (Pixel 4 XL, stock ROM w/ Magisk and ElementalX kernel). This is a frustrating experience and I would **love** to properly document the correct install procedure for the rest of the community.
[Android Apps and Games] Carlos_Rojas:
I'm wondering if there's any way to upgrade the sample rate of Viper. The device that I'm currently using supports hi res output up to (192/96khz 24bit) and I think that viper re samples all the audio to 48khz. Is it possible to get a higher sample rate? Thanks for your replies.
[Android Apps and Games] MarkLev:
Here is the link to download the apk, copied from magisk module.

https://zackptg5.com/downloads/v4afx.apk
[Android Apps and Games] Stenkstep:
Hi!

I just installed Resurrection Remix 8.6.7 on my Redmi Note 9S, and I would like to clean install V4A, because for now it only displays the famous abnormal status (whatever if I'm using Legacy Mode or not, Compatibility Mode also doesn't change anything).

There is already a system equalizer installed. What should I do? Should I uninstall it? I also tried installing Busybox (I don't really know how to use it, I just saw it was sometimes used as solution) but I did not see any change for now.

Thank you!
[Android Apps and Games] _mysiak_:
Try this: https://xdaforums.com/t/mod-viper4android-miui-12-magisk-21-1.4203489/
[Android Apps and Games] Stenkstep:
I'm not using MIUI anymore but still I'll try it

EDIT: the magiskpolicy solution worked perfectly. Thanks!
[Android Apps and Games] Ziyad_Mhd:
Is it working well with Android 11? Last time I used was on Pie (Pixel Experience).
[Android Apps and Games] _mysiak_:
Yes, but unless you want to run in SElinux permissive mode, it might need an extra fix due to Magisk changes (https://xdaforums.com/t/mod-viper4android-miui-12-magisk-21-1.4203489/).
[Android Apps and Games] Drunkpilot:
Running well on my pixel 4 running on Android 11 with the audio mod library and the magisk policy solution. The only reason I really root my phone now and for the ad blocking. Also Xposed. Ok, but mostly for Viper. It has always made a huge difference in sound quality.
[Android Apps and Games] timofonic:
Is Viper4Android still actively developed?

What's the official site?

What's the software license?

I would like some audio boost options. Sometimes I need to hear audio with low volume or need to be at very high one, but not having external speakers in that moment.

I use it on my S21u thanks to DrKetan's Tweaks Pro. It works nice, but I would like to know more about the project.
[Android Apps and Games] 73sydney:
fwiw, heres the V4A magisk module zips that i use for Android 11. Not my work (except adding a few lines to permissive.sh in the enforcing version ala @DiamondJohn) so credit given where due.

Pick one to suit your needs

ViperFX_Android11_Permissive.zip

Permissive: This is the original one (permissive) - credit to Ichigo Kywrosaki

ViperFX_Android11_Enforcing.zip

Enforcing: This is the one that switches back to enforcing after 90 seconds - credit to @DiamondJohn and his permissive.sh script tip which is exactly the same as the Permissive zip, with:

/systems/scripts/permissive.sh

from

#!/system/bin/sh
setenforce 0
echo 0 > /sys/fs/selinux/enforce

to:

#!/system/bin/sh
setenforce 0
echo 0 > /sys/fs/selinux/enforce

# after 90 seconds, switch to enforcing
(sleep 90;
setenforce 1
echo 1 > /sys/fs/selinux/enforce)&
[Android Apps and Games] DiamondJohn:
73sydney an FYI, I am currently running 90s (ie 1.5 minutes) after boot to enforcing very reliably (I think 30s worked as well). I also have the switch as part of my unrelated / independent and asynchronous boot scripts.

I think it would be good to contact "Ichigo Kywrosaki" as there are a couple of other things he may wish to change, and release a cleaner / complete version, or you could do it. I had it running like this (ie as below), but I had to reflash my phone due to other reasons, and haven't bothered to redo it all manually again.

The "permissive.sh" script could be moved out of the general service scripts, and moved into the Viper specific module itself. ie encapsulated

There are 2 different SELinux allow methods set up by the module. One is a script in the shared service.d script area (porly named as magiskpolicy.sh) and the other is a sepolicy.rule file. These dont exactly align but do have mostly the same allows. I previously found the union of the two, update the rule file, and removed the spurious poorl;y namned script file (magiskpolicy.sh in serfvice.d)

Doing the above makes for a much cleaner Viper installation / module.
[Android Apps and Games] 73sydney:
I get your point i think about the sepolicy.rule and magiskpolicy.sh stuff, theres duplication in them, and actually sepolicy.rule has 2 more rules than in magiskpolicy.sh. Not sure what exactly you mean about moving permissive.sh. Both are something i'll play with when i do my next clean flash

In the meantime, going on your findings about a shorter delay, ive adjusted the delay in my last and the zip and reuploaded it
[Android Apps and Games] DiamondJohn:
RE permissivce.sh in simple steps (going off memory), rename it to service.sh and move it into the viper module, and out of the Magisk shared service.d folder. ie make the viper script specific to the viper module. thus if you disable or delete viper within the Magisk UI, the viper script will be removed, whereas leaving it in the shared magisk area, leaves no link (that I know of, or even just logically) between the two, for Magisk to manage correctly.
[Android Apps and Games] 73sydney:
Got you
[Android Apps and Games] ndubat@gmail.com:
This is what should posted in all the pages. Updated. It's what worked for me after hours of trying original instructions and several googling
[Android Apps and Games] DiamondJohn:
different5r people have had success with different methods, and some (inc me) with a lot less messing about. So I dont think posting it on every page will help everyone.
[Android Apps and Games] ndubat@gmail.com:
you are right. was speakig from emotios...because i had tried everything right from Page 1...almost gave up. lol.

but you are right.
[Android Apps and Games] BHUSHAN7988:
Thanks to this my v4a legacy with old drivers works and enforcing after 90 seconds.

Just copied the lines in service.sh lines in v4a folders under modules.

Thanks very much.
[Android Apps and Games] 73sydney:
All thanks on that go to @DiamondJohn

I just repackage others work, its what im famous for :)
[Android Apps and Games] DiamondJohn:
the real work was done by "Ichigo Kywrosaki"

https://xdaforums.com/t/app-officia...ew-features-7-0-support.2191223/post-84908237
[Android Apps and Games] ssojyeti2:
Thank you very much man!
[Android Apps and Games] SouthOkanagan:
Is this particular version for all root solutions? Like to be used by everybody that's rooted?

Cuz I tried about half dozen Viper FX installs not one of them would work.

I'll give this one a shot but if anybody knows that I'm doing something wrong speak up, and I'll follow your direction.

Thank you, @SouthOkanagan
[Android Apps and Games] gfrank227:
V4A FX should automatically detect the correct driver to install.

Several suggestions - have you used Audio Modifications Library? First, install AML, restart and V4A, and install the V4A drivers. Then disable AML, restart, go into V4A again, and install drivers again.

Then, make sure that either Selinux is set to permissive, or that you make the changes to the setup file in the root that is discussed above.

See if this helps.
[Android Apps and Games] DiamondJohn:
which "particular solution" are you speaking about?

It wold be best if you let people know your Device, ROM & android version.
[Android Apps and Games] ProjectAlly:
Ran a search in the thread, but was curious if anyone with a (Pixel 5) running the latest Android 12 beta, has had any success in flashing v4a. Thinking specifically of Ichigo Kywrosaki's v2716.

I've just upgraded and learned that while I can get reliable root through Magisk, v4a closes upon opening. Thanks for any input! :)
[Android Apps and Games] DiamondJohn:
Logcat.
[Android Apps and Games] ProjectAlly:
Here's my logcat: Pixel 5 V4A 2716 Android 12 Beta 3 Log

Hopefully it shows what is going on. I'm suspecting the driver isn't properly installing or isn't loading correctly.

The version I mentioned before I've been using since Android 10. I imagine that Android 12 does things differently.

I should also mention that I've used both the original Ichigo permissive build, and the enforcing zip that was posted a page or two back. Same issue either way.

The app will load, stay open for a few seconds then crash before I can mess with settings. This is also on a newly wiped and fresh Android 12 Beta 3 flash. When flashing the OS I disabled verity and verification as per a post for my device, in order to successfully obtain root with Magisk Canary.

Also within Magisk, V4A is the only module installed, since running this particular zip over two other Android OS versions, I've had no need for AML, ACP, etc, because they weren't necessary to run Viper without issue.
[Android Apps and Games] DiamondJohn:
I am assuming you are using the same zip I linked to above.

Your error is:

[07-18 01:01:38.208 27084:27084 E/AndroidRuntime]
FATAL EXCEPTION: main
Process: process.ViPER4Android, PID: 27084
android.app.ForegroundServiceDidNotStartInTimeException: Context.startForegroundService() did not then call Service.startForeground(): ServiceRecord{263590a u0 com.pittvandewitt.viperfx/.service.ViPER4AndroidService}
at android.app.ActivityThread.throwRemoteServiceException(ActivityThread.java:1915)
at android.app.ActivityThread.access$2500(ActivityThread.java:250)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2140)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:201)
at android.os.Looper.loop(Looper.java:288)
at android.app.ActivityThread.main(ActivityThread.java:7829)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:982)

To be clear, I am NOT running A12, but A11 on a Pixel 4A, so all the below is a blind stab in the dark.

Its failing to start the viper service (from above log), before viper opens.

Try starting the service [com.pittvandewitt.viperfx/.service.ViPER4AndroidService] manually through a shell. Check if that works or gives you any different errors. (not sure if the below will work without modifying the APK manifest)

see: https://stackoverflow.com/questions/7415997/how-to-start-and-stop-android-service-from-a-adb-shell

am start-foreground-service com.pittvandewitt.viperfx/.service.ViPER4AndroidService;
[Android Apps and Games] ProjectAlly:
@

DiamondJohn​

So I tried that command and interestingly it kind of helps the app stay open without immediately closing. It's also the same effect I get when quickly going to the options settings inside V4A and toggling the "compat mode" and "attach audio effects" settings.

Either way the app is now running, but just like with v2.7.2.1 on A11 and 12, I can't get V4A to enable or process audio at all. Would this be driver related or come down to editing the manifest file for V4A? Also when installing the Ichigo version 2.7.1.6 I've used all this time up until now, it usually has a persistent notification on in the notification area, but on Android 12 it won't let it run a persistent notification at all.
[Android Apps and Games] Adevem:
Took a video last night and the recorded audio is a bit glitchy and "weaves" in and out. It's not totally clear. Almost like there's a limiter or noise gate on the mic during recording.

I have it in legacy mode with permissive mode on - I'm on the OP5T

Only have Master Limiter and Gain Control on, could those be the culprit?

Any ideas will be insightful - Thanks!
[Android Apps and Games] gfrank227:
In Android 10 and 11, many people, including myself, needed to install AML, reboot, then install v4a drivers, then disable AML, reboot, and reinstall drivers. Not sure about 12, but you should try this first, if you haven't already.
[Android Apps and Games] timofonic:
Excuse me.

Did V4A development stalled?

Are there an Open Source alternative?

If development stalled: Any hopes to Open Source it even by some kind of bounty?
[Android Apps and Games] ProjectAlly:
Curious about this as well. I know its probably a no-no to ask about these kinds of things, but is there anyone actively still developing this audio mod?

A lot of us have come to rely on it, it's really the only reason I root my phone at all. If there was a system wide EQ app that actually sounded great then I'm sure that would eliminate need of this.

But I love V4A, just have no knowledge on app development, I'd love to maintain it if I did have this knowledge. :)
[Android Apps and Games] Lord Sithek:
The app itself is still in development, although not updated very frequently. But the driver has been always closed source and the original devs abandoned it long time ago

As an alternative you can try JamesDSP, although it's not that simple and straightforward to use as Viper
[Android Apps and Games] gfrank227:
James is good, but not as good.

I don't know anything about app development either. But I imagine if the project has been abandoned, someone must be able to extract the code somehow and work on it?
[Android Apps and Games] Lord Sithek:
I don't know nothing about extracting the code. The only thing I know is that the app was forked (hope this is the proper word?) by @Team_DeWitt and updated to work on newer Android versions
[Android Apps and Games] DiamondJohn:
I thihk you quoted the wrong person. I HAVE a working viper running on A11 using a single Magisk Zip, with no jumping through hoops installing extra components or the drivers as a seperate step, and rebooting multiple times and doing things in any special order. I simply flash a single Magisk Zip,. reboot, and it works. The post you quoted was me trying to assist someone else getting it to work in A12; that was not my error.
[Android Apps and Games] DiamondJohn:
You can decompile Java code to an extent, but what comes out is NOT pretty, and for a complex app such as this, it is not practical. Also, the magic would really be occurring in the driver, which I presume would not be written in java (ie not practicle to decompile).

And if it was as simplke as all that, someone would of already done it. Viper has been around for a long time.
[Android Apps and Games] timofonic:
Is JamesDSP still in development too?

GitHub - james34602/JamesDSPManager: 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.

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. - james34602/JamesDSPManager

github.com
[Android Apps and Games] timofonic:
That team didn't post here since late 2020...
[Android Apps and Games] Lord Sithek:
I think yes. But you can reach devs mostly on Telegram these days: https://t.me/jDSP_V4A
[Android Apps and Games] Lord Sithek:
True, they're not active here. I don't know if they follow this thread, but I know that the main dev appears from time to time on the official Viper Telegram group:

https://t.me/Viper4Android FX

(Looks like big part of the community moved to Telegram these days 😉)

And from what I remember, the dev mentioned something about new release. But nobody knows when... As I said, the app seems to be still in development, but it's not rapid and if I understand correctly, it is al labout adjusting the app to the new Androids. And since the driver is closed source, the music quality and other features don't change
[Android Apps and Games] timofonic:
S

So it's dead, Jim. We all are making necrophillia, unfortunately.

And this is a growing problem in Android, worsened by closed source projects. But there's Substratum, dead as hell despite being Open Source.

This demotivates me...
[Android Apps and Games] Lord Sithek:
It's your point of view. I'm happy Viper user on Android 11
[Android Apps and Games] Sudhangshu:
Hello guys

Hope everyone's doing fine and thanks a lot for providing us this awesome module. I wanted to install this module on my Oneplus3t and the thing is I didn't saw or may be I have missed installation instruction, so please can some provide me any link to instruction for installing viper4android.

I'm greatly grateful for your response.

Thank you very much.
[Android Apps and Games] ProjectAlly:
If you use MAGISK for root on your phone, it's a module that you can install from there, under the "Modules" section in the app. V4A on there is the latest version, it might work for you, or it might not, you'll have to try it.

If that doesn't work for you try these: 73sydney - XDA V4A Thread Post no. 5374. It's the older version (v2.7.1.6) that some (including myself) have had a lot of success with installing and using! If you're using MAGISK, just download those zip archives, and install through the "Modules" section of the app by selecting the option at that top that says "Install from Storage".

Simple to flash and just use, no other modules required to get it working.

Hope that helps :)
[Android Apps and Games] Sudhangshu:
Alright I'll try.

Thanks man.
[Android Apps and Games] Sudhangshu:
Well hello I would like to confirm that your suggested method worked and really thanks for that, though I had one more question does this module can also be used to increase earpiece volume too.
[Android Apps and Games] ProjectAlly:
Nice! Glad to hear that it worked!

Yes to increase volume, just play around with the "Playback gain control" option under the "Master power" setting in V4A. I think it has something to do with "strength and Maximum gain" in particular. Before moving the sliders take note of their default values, and then test all of those sliders and find what works for you. :)

On another note (not related to Sudhangshu's reply).

I've been testing Android 12 Beta 3 on my Pixel 5 with V4A, and have had no success.

Have resorted to using Wavelet for the time being, but am seriously tempted to just reflash the last July 2021 Android 11 update again and stick with it.

Not sure if anyone here is running A12 yet, but I can't figure out why after starting the service for V4A (Ichigo 2716), the app still auto closes after a few seconds. I feel like it has something to do with not being able to get access to having a persistent notification in the notification area, or it may have something to do with how the driver is being installed.

Have taken some time to dig through the Android manifest file for this version of V4A, noticed there's a lot of comments or lines dedicated to Android SDK 23, went through and changed all of these to version 31 (the latest available now I believe), but haven't tried adding this to the archive and reflashing through Magisk. Not even sure it's worth it to try, because that manifest file might not actually have anything to do with Viper being installed.

For me, if there aren't any issues with the Viper driver being installed (not sure), my main goal is to have a way to update and flash Viper (Ichigo 2716) on my own through any Android version going forward from Android 11. Because eventually in order to keep my Pixel 5 up to date, using Android 12 is going to happen. Can't stay on an older OS forever.

I just don't know where to start, or where to look to achieve this. Not trying to be a bother to anyone here either, including the devs, but they seem to have moved on possibly.

Lol maybe I care too much about audio quality, but it's difficult to listen to and really enjoy music/audio without V4A. Maybe there are alternatives, but nothing that scratches that itch. :D
[Android Apps and Games] timofonic:
Me too! But it's a dead end, using zombie software. It's not a viable long term solution.
[Android Apps and Games] DiamondJohn:
NOTHING about android is "long term". It is a constantly evolving environment that is guaranteed to change. Every year google puts out a new OS that kills functionality for many apps, and also breaks existing functionality that some would consider core (I know I am annoyed that in A11 they have broken non-embedded album art :mad:). Use it while you can, find work-arounds for others if you can.

Even if you find an app (Im talking non google type devs) that is under current development, there is no real guarantee that it will be the case tomorrow. But even Google have dropped projects that they once supported.
[Android Apps and Games] gfrank227:
This general issue is part of the reason why I tend to buy my phones one generation back. (the other reason is that they are MUCH cheaper). I'm running A10; it would be nice to get A11, but I don't think Motorola will be giving my phone A11. That's fine with me; i believe in the idea of, "if it ain't broke, don't fix it."

Hopefully by the time I am forced to use A12, someone will have figured it out. Keep us posted, please. I'm sure it would benefit the entire community.

I agree with you - I can tell an immediate difference on my headphones with or without V4A. I'm not sure I could ever do without it. I suppose James would work, but it would not be the same. So long live V4A.
[Android Apps and Games] gfrank227:
Out of curiosity, were you able to simply install the drivers and it worked right away? Or did you have to play with it, such as installing and then disabling Audio Modifications Library like some, including myself, have needed to do?
[Android Apps and Games] Sudhangshu:
No nothing like that, i just flashed the magisk module reboot my device and after it when I open the app it asked me whether I want to install drivers and that's it.
[Android Apps and Games] gfrank227:
Wow that's awesome....you're lucky. Many of us had to jump through hoops to get it to process audio. Definitely worth it, though. No comparison to the audio quality.