Viper4Android Working on S6 Edge (Root)

Alarand

Senior Member
May 10, 2013
497
148
0
Thanks for your reply guys.

I did download the SELinux changer and tried setting it to permissive with no luck. Maybe it is the pingpong root/stock kernel. Also not sure why the folder I have under data/app was /data/app/com.vipercn.viper4android_v2-1 whereas Alarand did not have "v2-1" in his data/app.

And btw I already tried the link you provided Alarand. No luck there either. Maybe it is the SELinux changer which does not work with Samsung Knox unless you have custom rom.
I couldn't remember the name of the folder when I was writing it :p Mine is also "com.vipercn.viper4android_v2-1"

Not sure what to suggest if selinux is the issue. Does it work at all? Just neon that doesn't worK?
 
Last edited:

vishaljh

Senior Member
Apr 25, 2005
60
14
0
Okay. Thanks.

So folder name is not an issue. This only leaves us with the root method and SELinux.

can anyone confirm if they have neon working on stock kernel rooted with pingpong and SELinux as enforcing?
 

Vaira

Senior Member
Dec 25, 2010
173
67
0
SELinux mode changer never worked on Samsung stock kernels. One has to compile a permissive one, but flashing such trips KNOX.

There is a way to inject the ViPER4Android SELinux policy, allowing it to run in enforcing mode instead of permissive.
Super SU allows to run start scripts from system/su.d

This sounds interesting: http://forum.xda-developers.com/showpost.php?p=61242973&postcount=18854
I don't know why the NEON drivers are not running. It's either because of enforcing mode without policy to run there or the missing lib folder...need to do more tests.
I bet the sound on NEON drivers is even better since you can choose different qualities...
 

vishaljh

Senior Member
Apr 25, 2005
60
14
0
I managed to fix it not working on the G920T so it should work for you.

I believe the problem is that copying it into the sys apps folder wont install the lib folder thats normally there when you just install it by tapping the apk.

I did a full uninstall and followed the guide the same but instead of copying the app into the sys app folder, just install it as a user app from the apk file as you normally would and restart before opening the app. Make sure all permissions are set the same as before with the .conf file but the app folder will be in /data/app/com.vipercn.viper4android instead of system/priv-app.

Check to see if the lib folder is present inside /data/app/com.vipercn.viper4android after installing, and set the com.vipercn folder to 0755 permissions, including all subsets and files before opening. I use root explorer so it has that option when setting permissions to include to set the same permissions for all of the contents. Two restarts, one after installing the app and setting permissions, and another after opening the app and installing the driver.

Convolver and VHS+ working now and NEON support labeled as yes. It also allowed me to choose an audio quality for the driver when prompted to install.

I couldn't remember the name of the folder when I was writing it :p Mine is also "com.vipercn.viper4android_v2-1"

Not sure what to suggest if selinux is the issue. Does it work at all? Just neon that doesn't worK?
SELinux mode changer never worked on Samsung stock kernels. One has to compile a permissive one, but flashing such trips KNOX.

There is a way to inject the ViPER4Android SELinux policy, allowing it to run in enforcing mode instead of permissive.
Super SU allows to run start scripts from system/su.d

This sounds interesting: http://forum.xda-developers.com/showpost.php?p=61242973&postcount=18854
I don't know why the NEON drivers are not running. It's either because of enforcing mode without policy to run there or the missing lib folder...need to do more tests.
I bet the sound on NEON drivers is even better since you can choose different qualities...
I can confirm that I had the lib folder under the app/data/viper.... folder. So that leaves us with the SELinux policy which I don't undersand. I will read through your link.

Thanks.
 

Vaira

Senior Member
Dec 25, 2010
173
67
0
I suppose we're in the same boat. We want NEON enabled but don't want to trip KNOX. Since we cannot change the SELinux mode to permissive, we need to apply a policy to make it allow to run fully on enforcing mode....I do not flash something I wanted to push the 50viper.sh from over there ( from zip file) to system/su.d, then chmod it to 0755 and reboot. Then I wanted to install viper again hopefully to get NEON enabled....since I am not at home I cannot test this today....
 
  • Like
Reactions: vishaljh

vishaljh

Senior Member
Apr 25, 2005
60
14
0
Hi Vaira,

I have tried running the script and this is looking promising. Let me play around a bit more and confirm that everything is definitely working before I start jumping in Joy.

Thanks a lot for everyone's help here. Will update once I am sure all is working well.

I suppose we're in the same boat. We want NEON enabled but don't want to trip KNOX. Since we cannot change the SELinux mode to permissive, we need to apply a policy to make it allow to run fully on enforcing mode....I do not flash something I wanted to push the 50viper.sh from over there ( from zip file) to system/su.d, then chmod it to 0755 and reboot. Then I wanted to install viper again hopefully to get NEON enabled....since I am not at home I cannot test this today....
 

Alarand

Senior Member
May 10, 2013
497
148
0
I can confirm that I had the lib folder under the app/data/viper.... folder. So that leaves us with the SELinux policy which I don't undersand. I will read through your link.

Thanks.
The only other thing I could think of was that the specific v4a apk needs 0755 permission(execute permission?) to properly install the driver seen as the apks in /priv-app have 0644 by default. And the lib folder to be safe lol

Of course you've likely already done that and I'm a fairly big noob when it comes to what permissions are required to do what so it might not even do anything. Sounds like SElinux was throwing a wrench in things but looks like you've figured it out ;p
 

vishaljh

Senior Member
Apr 25, 2005
60
14
0
Thanks Vaira. The Script did the trip.

So glad this is sorted. Have wasted a lot of time trying different things. Now can go back to enjoying great music.
 
  • Like
Reactions: Vaira

el_bazzo

Member
Jul 5, 2007
48
9
0
Thanks Vaira. The Script did the trip.

So glad this is sorted. Have wasted a lot of time trying different things. Now can go back to enjoying great music.
Hi - what exactly did you do? I've tried it and driver status still tells me neon is not enabled.

Thx

Gesendet von meinem SM-G925F mit Tapatalk
 

Vaira

Senior Member
Dec 25, 2010
173
67
0
I am glad my idea worked.:)
Credits go to the original poster of the script maximumentropy.
Maybe the OP can update his post. The solution to have the NEON drivers running on a pingpong rooted enforcing stock kernel is to apply the script 50viper.sh to system/su.d chmodded to 0755.
After reboot viper4android (the one found on the original page) can fully run without a tripping KNOX method (with NEON drivers) on enforcing mode stock kernel following Alarand's method who has it running it on a permissive kernel.
Either one runs it on a permissive kernel which trips KNOX when flashing it, or one uses this method to inject a policy to let it fully run on enforcing mode stock kernel. (pingpong root method without tripping KNOX).

Samsung stock kernels cannot be switched to permissive mode with current tools.

I am happy. :)
 

Vaira

Senior Member
Dec 25, 2010
173
67
0
OK here is the method with NEON enabled (uses NEON drivers for best quality) for those who have SELinux enforcing e.g. rooted with pingpong.
Start over from beginning. If you have it already revert anything back to stock. Uninstall viper drivers within the app, reboot. Delete the Viper4Android folder in "/System/Priv-app/Viper4Android/"
Go back to the original audio_effect.conf in /System/etc/, delete the modified audio_effect.conf in "/vendor/etc/", reboot.

Make sure you have still frozen Adapt Sound 4.0 and SoundAlive 3.0. You can use App Quarantine free to freeze them, no need to spend any money.
Make sure you are using super SU latest version to apply the policy.


Fresh install go from here:
You need busybox and super su latest versions installed. Adapt Sound 4.0 and SoundAlive 3.0. must be frozen.


Create a folder /system/su.d/ chmod the folder to 0755 (Edit 26/6 according to chainfire 0700 is enough)
Copy 50viper.sh (extract it from attachment) to /system/su.d/ chmod it 0755 (Edit 26/6 according to chainfire 0700 is enough), reboot the phone to apply the policy.
Now rename your original audio_effect.conf in /system/etc/ to audio_effect.conf.bak
Copy the modified audio_effect.conf from OP into it and chmod it to 0644 THIS IS VERY IMPORTANT otherwise you might get it bootlooping.
Copy it again to "/vendor/etc/" and chmod it to 0644 THIS IS VERY IMPORTANT otherwise you might get it bootlooping.
Install viper4android from the original Viper page, not from OP, the V4A v2.3.4.0 Update, but DO NOT RUN IT YET.
Use the one Alarand has posted: Make sure you use the ViPER4Android_FX_A4.x.apk and not the older one. http://forum.xda-developers.com/showpost.php?p=61201322&postcount=221

Go to its installation folder data/app/com.vipercn.viper4android_v2-1 Check to see if the lib folder is present inside data/app/com.vipercn.viper4android_v2-1 after installing, and set the com.vipercn.viper4android_v2-1 folder to 0755 permissions, including lib folder, all subsets and files before opening. (AFAIK most of it have it already, though)

Reboot the device!
Execute viper4Android and install the drivers, you'll be prompted to choose the quality. After the installation reboot again.

**Disclaimer***

I am not responsible for any temporary issues in case something goes wrong. Be aware what you are doing!!! I have tested it myself and it works it is also confirmed by vishaljh.
 

Attachments

Last edited:

Vaira

Senior Member
Dec 25, 2010
173
67
0
Since the modified audio_effects.conf from the OP had some things left in the to do list (as comment left there) I reapplied the missing settings from the original since they optimize some things.
Load of myspace, pre_processing and output_session_processing libraries.
Effects: agc, aec, ns, sa3d, fens and lmfv.

Used in pre_processing (mic , camcorder (although commented there), voice_communication, sec_voice_recognition, sec_bargein_driving and sec_voice_communication)
Used in output_session_processing (ring, voice_call and sec_voice_communication). Music uses sound alive I have not imported it.

I also have made the same changes to the mixer_paths.xml for more volume from http://forum.xda-developers.com/tmobile-galaxy-s6-edge/general/volume-mod-t3082560 to the F vaiant. It has a much bigger filesize and I didn't use the one posted there from the T-mobile vaiant.

Be sure when trying those to set their permissions correctly to 0644 before you reboot. Always keep a .bak from the original ones. Setting permissions to 0644 is ESSENTIAL. Most bootloops come from not taking care of it!!!

I have running those and I am happy with them.
So far there are no issues. Make sure not to go too high with the volume since you can go pretty loud now. Although there is no distortion of sound noticeable. Credits for the mixerpath values go to aw2000j I have imported them 1:1.

Feel free to post any comments, also issues if encountered any.

Edit: Regarding convolver irs I don't know. It seems viper4android runs them, but when you saying only a few they might have no effect on the phone or are not compatible. If it would be a general issue no one would work IMHO.

Vaira
 

Attachments

Last edited:

DSR_1106

Senior Member
Dec 27, 2012
770
273
0
53
Limerick
Guys, I got it working on S6, but has someone ever trying to get this to Tab S please? I go for the normal installation on Tab S with KK and everything works, but on LP - it doesn't. I try to get the official version, but then the sound crashes (even Google Play Music doesn't like it). I would like to know, if the version attached inside this thread, it works on the Lollipop tablet. My CSC doesn't support LP, but I'm able to change CSC, then update Tab S by Odin and run LP with different CSC. Everything works except Viper4Android :D The driver installation goes properly. I was trying to force the audioconf file to NEON, but no effects as well. Strange, that it works on KK like a champ.
Any suggestions please?

Cheers,
Marek
This is what I'm using on my s6 edge and EVERYTHING I can find works with V4a..
You mentioned s6 so I can't speak for that but the edge sure likes it.
 

Attachments

Vaira

Senior Member
Dec 25, 2010
173
67
0
Guys, I got it working on S6, but has someone ever trying to get this to Tab S please? I go for the normal installation on Tab S with KK and everything works, but on LP - it doesn't. I try to get the official version, but then the sound crashes (even Google Play Music doesn't like it). I would like to know, if the version attached inside this thread, it works on the Lollipop tablet. My CSC doesn't support LP, but I'm able to change CSC, then update Tab S by Odin and run LP with different CSC. Everything works except Viper4Android :D The driver installation goes properly. I was trying to force the audioconf file to NEON, but no effects as well. Strange, that it works on KK like a champ.
Any suggestions please?


Cheers,
Marek
As for LP Neon drivers run only properly on permissive kernel or with the policy applied. Driver conflicts come due to sound alive and adapt sound / sound_effect.conf settings. If v4a is running properly (without neon) then it is no sound alive/adapt sound/sound_effect.conf settings. conflict. The only thing that is missing is the policy (or permissive mode)..
If there are general issues /without NEON as well then freeze sound alive / adapt sound.

In the sound config use only libv4a_fx_ics.so as v4a_fx. Load it everywhere /replace the paths of other libraries. Keep the first 5 lib-stings only (v4a_fx, bundle, reverb, visualizer and downmix). Remove default pre-processing effects...and output_session_processing
Also use the library v4a_fx, its UUID (here uuid 41d3c987-e6cf-11e3-a88a-11aba5d5c51b) at any effects.

Later if it works re-add default pre-processing effects...and output_session_processing except sound alive related relations
If you compare both versions from the OP you can figure how to go on your Tab S

The structure is simple
The config loads/assigns the different libraries to a defined string (v4a_fx, reverb...) by their paths
Then the different effects (bassboost ..etc) are defined with the lib string from above and the UUID
Then default pre-processing effects are defined

Finally audio preprocessor configurations and output_session_processing are made by assigning effects to mic, camcoder, ring, voice_cal..etc.. .


Any flashable zip with neon. Thats a lot of messing around lol :)
The way I described is for those who have pingpong rooted. We cannot flash since we are still on KNOX 0x0 without custom recovery, lol...but we have NEON enabled and big volume anyway..:p

Add: To chmod su.d and the 50viper.sh to 0700 (as chainfire describes) is enough to apply the policy on each bootup. No need for more rights.
Also the base.apk (viper) seems still to run with original permissions 0644.

So it could work easier. One could just try to freeze the 2 apps, to apply the policy, to exchange/add the sound_effects.conf and then after reboot to install the original viper app from original page and the drivers at once...
One could write an update zip which ONLY replaces / adds sound_effects.conf (mixer_paths.xml) and applies the policy at once. Then one just would to have to install the viper app and its drivers after at once (usual installation)....might work this way...:and it can be used for futher updates of viper without changing the update.zip cool...
 
Last edited:

sublimaze

Senior Member
Oct 13, 2010
2,630
984
193
OK here is the method with NEON enabled (uses NEON drivers for best quality)....
Thank you so much for posting this. It was a bit of a pain, but my OCD was getting the best of me and I knew if anything supported NEON, it should be a brand new S6.
I can confirm this method works. V4A sounded great without NEON, but I am sure it will sound even better now :cool:
 

Epikarus

Senior Member
Oct 8, 2011
376
102
0
I just want to clarify. I'm rooted with ping-pong root so my Knox is still 0x0. Will this process trip Knox warranty? I understand as I long as I don't instal a custom kernel or custom recovery I'm fine but i need to be 100% sure before I screw around. Ha-ha.