[HOW-TO] Viper4android - Install the proper way (Root Required)

kevintm78

Senior Member
May 28, 2013
1,277
2,461
153
Bluegrass State
Viper4android: How to install it properly

This is something I've been meaning to write up for a long time now. All over XDA I see people have trouble with getting Viper4android working and I thought this might shed some light on the issue.

There are many zips out there that will install viper but most of them have other sound mods rolled into it and I prefer viper only. I find that most of the others often distort the sound a little, but with Viper4android only, the sound is just perfect for my tastes.

What you need:

- A root file explorer (RootExplorer, EsFileExplorer, etc.)
- Root (obviously)- Either Magisk or SuperSU
- If using Magisk you'll need a Permissive kernel. My kernel works with certain models and is permissive.
- If using SuperSU you can use enforcing, but will need an extra file that I'll cover later on.
- Some good music to listen to.

This method is really not much of revelation since it's actually on the Viper4android thread itself, but almost everyone tries to let the install the drivers automatically. Do not let the app install the drivers for you. It will install the old driver and it doesn't include the Neon driver.

First things first. We need to do a little cleanup just in case there are already some viper files or drivers partially installed.

Viper4android has three places in which it installs:
/system/lib/soundfx/
/system/etc/audio_effects.conf
/system/app/Viper4android.apk
Screenshot_2017-10-19-23-14-32.jpg

Screenshot_2017-10-19-23-13-57.jpg

Screenshot_2017-10-19-23-19-13.jpg

Screenshot_2017-10-19-23-15-22.jpg

Screenshot_2017-10-19-23-14-59.jpg


Using your root explorer go to /system/lib/soundfx/ and look for any old V4A files and delete them. It should look like this, libv4a_fx_ics_X86.so. Also check in your system/app/ and check to see if you have the old viper app and if so delete that too (the newest version is 2.5.0.5). Note: if you already have the app installed you can go to the settings menu and select uninstall drivers and it should remove everything for you. Then just double check to make sure. Then uninstall the app unless it's the newest version and placed in /system/app/.

Once we have everything cleaned up it's just a matter of placing the right files in the right spot. I've attached a zip that has everything you will need in it. It is not a flashable zip. Just unzip it to get to the necessary files.

1. Place the Viper4android app in /system/app (no extra folder necessary) and change the permission to 0644 or rw-r-r

2. Place the .so files in /system/lib/soundfx/ and change permission to 0644 or rw-r-r

3. If you don't have any other sound mods installed you can swap out my audio_effects.conf file for yours and set permission to 0644 or rw-r-r, but if you do that back up your original file just in case (just rename the original to audio_effects.bak). If you do have other sound mods installed you'll want to add the following red lines to you existing audio_effects.conf file.
Code:
  # List of effect libraries to load. Each library element must contain a "path" element
# giving the full path of the library .so file.
#    libraries {
#        <lib name> {
#          path <lib path>
#        }
#    }
libraries {
 [COLOR="red"]v4a_fx {
	path /system/lib/soundfx/libv4a_fx_jb_NEON.so
  }
#NECESSARY FOR XHIFI
        v4a_xhifi {
          path /system/lib/soundfx/libv4a_fx_jb_X86.so
  }[/COLOR]
# This is a proxy library that will be an abstraction for
# the HW and SW effects
  proxy {
    path /system/lib/soundfx/libeffectproxy.so
  }
# This is the HW implementation library for the effect
  offload {
    path /system/lib/soundfx/libaudioeffectoffload.so
And...

Code:
#        }
#        ...
#    }

effects {
 [COLOR="red"]v4a_standard_fx {
	library v4a_fx
	uuid 41d3c987-e6cf-11e3-a88a-11aba5d5c51b
  }
#NECESSARY FOR XHIFI
        v4a_standard_xhifi {
          library v4a_xhifi
          uuid d92c3a90-3e26-11e2-a25f-0800200c9a66
        }
  }[/COLOR]
  soundalive {
    library proxy
    uuid  05227ea0-50bb-11e3-ac69-0002a5d5c51b
      libsw {
Placement is everything with this. If there's an extra space or missing a space you'll will get the "drivers are not installed" error when opening the viper app. It took me several tries in the beginning to get the audio_effects.conf part of this right, but it will work when everything is correct.

4. This step is dependent on your setup. If you are using a permissive kernel this is not necessary. If you're using SuperSU with an enforcing kernel you'll need to flash the ViPER4Android-supolicy.zip that is included in the attached zip file.

Original instructions are here, but nobody seems to see them including myself for the longest time.

Now if everything is in place properly you should get this:
Screenshot_2017-10-20-00-08-37.jpg

It should work with any music player (I mostly use Spotify), YouTube, video players, etc.

Enjoy. :)


Credits:
@viper520 -for creating Viper4android
@zhuhang - for co-founding and continuing to maintain Viper4android

If anyone knows the identity of who created the ViPER4Android-supolicy.zip let me know. I would love to be able to give proper credits on that as well.
 

Attachments

asia559571

Senior Member
Jul 14, 2013
498
247
0
Hi kevintm78, I have some questions.
1. In your Driver Status screen shoot you have Processing:Yes, I have Processing:No, what does that mean for me?

2. It is said to install or move Viper to System/app, does System/priv-app location achieve the same as System/app?

3. I've heard it said that using DDC and Convolver together is not adviseable, is this true?

4. where can I find/download more DDC profiles?

5. I'm on a Note 4 Android version 6.0.1 Rom: NEMESIS REFINED N7 port, on odd occasions after using the built-in "Smart
Manager app, viper's profile folder contents sometimes disappear, although the DDC and Kernel folders will remain intact.
Would you have ant idea why this happens? That said, I have found that if I delete the Cache and Data of the Smart Manager app, the Viper Profile folder contents will remain more often but as mentioned, they will disappear:(

6. On rare occasions the "Load effect profile" List would be in alphabetical order, is there a way to force this?

I would appreciat your thoughts and help for the questions mentioned.
Many Thanks for Your tutorial. :)
 
Last edited:

kevintm78

Senior Member
May 28, 2013
1,277
2,461
153
Bluegrass State
Hi kevintm78, I have some questions.
1. In your Driver Status screen shoot you have Processing:Yes, I have Processing:No, what does that mean for me?

2. It is said to install or move Viper to System/app, does System/priv-app location achieve the same as System/app?

3. I've heard it said that using DDC and Convolver together is not adviseable, is this true?

4. where can I find/download more DDC profiles?

5. I'm on a Note 4 Android version 6.0.1 Rom: NEMESIS REFINED N7 port, on odd occasions after using the built-in "Smart
Manager app, viper's profile folder contents sometimes disappear, although the DDC and Kernel folders will remain intact.
Would you have ant idea why this happens? That said, I have found that if I delete the Cache and Data of the Smart Manager app, the Viper Profile folder contents will remain more often but as mentioned, they will disappear:(

I would appreciat your thoughts and help for the questions mentioned.
Many Thanks for Your tutorial. :)
You're very welcome. I think I can help with some of your questions.

1. For processing, it will say no unless there's something playing. Try playing a song and then checking it again.

2. You can use priv-app if you'd like. The only difference between the two is that priv-apps are given more system permissions than just /system/app. The results should be the same though with either one.

3. I've been using them together and haven't noticed any negative impact. I'll see if I can find out more on that though, but you should be fine.

4. I think what you're looking for is IRS packages. You can find out more about it here. You can also download the starter IRS packs here. Viper4android has depricated they're XHFI features so I'm not sure that more DDC profiles are helpful anymore (though I could be completely wrong about that.) Most of the other DDC profiles I've found are at least a few years old now.

5. That's strange that they are being removed. Are the folders empty? Maybe that's why they are being removed. Try downloading the IRS starter pack, unzip it, and move the whole folder to the Viper4android/kernel folder on your sdcard. To get that folder to show up just press on the Convolver setting and it should create those folders for you. That's about the only reason I could think of as to why they are being removed.

Thank you by the way for asking those questions. That's something I need to cover a little more thoroughly. I definitely will expand on this topic if it looks like people are interested.
 

damadikaz

Senior Member
Jun 26, 2014
135
54
48
Thank you so much it works! but only for certain music player, i tried it with Phonograph and Samsung's stock music player and it works.
It doesn't work with spotify. I did the exact step you mentioned. I using note 4 exynos eRobot v33. any ideas why?
 

kevintm78

Senior Member
May 28, 2013
1,277
2,461
153
Bluegrass State
Thank you so much it works! but only for certain music player, i tried it with Phonograph and Samsung's stock music player and it works.
It doesn't work with spotify. I did the exact step you mentioned. I using note 4 exynos eRobot v33. any ideas why?
That's strange, Spotify is kind of the only music player I use. What does the driver status say when Spotify is playing? Did it say it's processing while the music is playing?
 

damadikaz

Senior Member
Jun 26, 2014
135
54
48
That's strange, Spotify is kind of the only music player I use. What does the driver status say when Spotify is playing? Did it say it's processing while the music is playing?


I've attached the screenshot. pls check it.
I just check it with another streaming music player called Joox, V4A doesn't work either.
but when I play any local music files even using Solid File manager V4A works.
 

Attachments

Last edited:

Danielreo

New member
Dec 14, 2017
2
0
0
Same problem here. N910c with erobot v33 rom with native viper, magisk, permissive kernel, etc. And still, no processing with Spotify or deezer. Local files are processed.
 

h2olove

Senior Member
Nov 14, 2016
72
49
28
taipei
1.Install Viper as system App & start up app and load preferred version of driver

2.Update build.prop: root/system/build.prop

## ViPER4Android Build.prop Tweaks

lpa.decode=false

lpa.releaselock=false

lpa.use-stagefright=false

tunnel.decode=false
 

Attachments

Last edited:
  • Like
Reactions: kevintm78

Danielreo

New member
Dec 14, 2017
2
0
0
Nothing of the above worked here.

Even before the suggested configs, I realized that the bluetooth mode is processing like a charm. Phone speaker and headset still not. :eek:
 

mateusonego

Member
May 11, 2016
32
0
0
I've followed your step by step (twice), and V4A still asks me to install the drivers...
I placed the apk on system/priv-app (the 1st attempt was on system/app), put the .so files on system/lib/soundfx, replaced the audio.conf on system/etc, changed the permissions exaclty to rw-r-r, then used TWRP Recovery mode to install the SU Policy - even though I have a selinux changer.
On Default Storage, the only option I have to set is "/storage/emulated/0/", not sure if this matters (I think it doesn't, probably it's just where it'll save your profiles etc).
Tried restarting the phone, to see if it would detect, tried to switch compatible/normal, deactivated selinux (using v4a dev mode), tried to change the permissions to rwx-rx-rx... nothing worked. V4A still asks me for the drivers.
It does work, however I install it, but only on compatible mode, and not with Spotify LOCAL synced files - which is a great issue to me.
PS.: I have NoozXoide installed here - cause it's the only one which also works with local files on Spotify. I've already tried to unninstal it and redo all the procedures, though...
OH, also, should I deactivate Android stock Audio effects app?

Can you help me please OP?
 
Last edited:

kevintm78

Senior Member
May 28, 2013
1,277
2,461
153
Bluegrass State
I've followed your step by step (twice), and V4A still asks me to install the drivers...
I placed the apk on system/priv-app (the 1st attempt was on system/app), put the .so files on system/lib/soundfx, replaced the audio.conf on system/etc, changed the permissions exaclty to rw-r-r, then used TWRP Recovery mode to install the SU Policy - even though I have a selinux changer.
On Default Storage, the only option I have to set is "/storage/emulated/0/", not sure if this matters (I think it doesn't, probably it's just where it'll save your profiles etc).
Tried restarting the phone, to see if it would detect, tried to switch compatible/normal, deactivated selinux (using v4a dev mode), tried to change the permissions to rwx-rx-rx... nothing worked. V4A still asks me for the drivers.
It does work, however I install it, but only on compatible mode, and not with Spotify LOCAL synced files - which is a great issue to me.
PS.: I have NoozXoide installed here - cause it's the only one which also works with local files on Spotify. I've already tried to unninstal it and redo all the procedures, though...
OH, also, should I deactivate Android stock Audio effects app?

Can you help me please OP?
Are you using magisk or supersu? Also, I've recently found a secondary spot for the libs and audio-effects.conf if using certain port roms. If using a stock rom that's enforcing, I would supersu and the su policy file.

If it is a stock rom I never had to freeze or uninstall anything to get it fully working. But I can help you get it going if you're still up for it.
 

mateusonego

Member
May 11, 2016
32
0
0
Are you using magisk or supersu? Also, I've recently found a secondary spot for the libs and audio-effects.conf if using certain port roms. If using a stock rom that's enforcing, I would supersu, and I flashed the su policy file.

If it is a stock rom I never had to freeze or uninstall anything to get it fully working. But I can help you get it going if you're still up for it.
Thank you very much for replying mate!! :angel: And sorry for misinforming.
I have a Moto G4 Plus (XT1360) with stock Android 7.0 (never rooted this device before - but I used V4A back in 2015, in a s.g. 4 mini), TWRP, Elemental X, supersu and busybox, if that matters... It was supposed to be enforcing, but I also got SELinuxModeChanger. I tried installing V4A on both system/apps & system/priv-apps. Oh, and I'm listening through headset.

I tried several combinations to try to "trick" the app, tried install drivers > deleted them, tried not to install, tried not to install > use on compatible mode/normal, tried install > renamed the .so provided here ones as the original isc... tried all again restarting my phone between steps, tried all the mentioned them then reflash supolicy, tried all and killing the selinux on dev-mode before playing songs, tried the Build.prop Tweaks... :eek: nothing worked, every time I open V4A, it asks to install the drivers. And it does work afterwards, but only on Compatible, and with Spotify, and not the local files, neither Youtube etc.

I was taking a look on the apk with ES exp, I know **** about android, but there seems to be 4 .so files inside... would there be any way to reference all the 4 on audio.conf?
Oh, I shoul mention I also tried all that I mentioned above, but replacing the files with the 4 ones I extracted from the apk between steps etc - it didn't ask for install drivers when I started it! But again, only worked on Compatible, etc...
I did some research - and got nothing -, saw some people mentioning to freeze Sound Alive, or even delete it. As I mentioned, the stock eq I got is Audio Effects, but I also saw sometimes soundalive on audios.conf... but again, I know **** about Android :/

Tks to be trying to help!
 

kevintm78

Senior Member
May 28, 2013
1,277
2,461
153
Bluegrass State
Thank you very much for replying mate!! :angel: And sorry for misinforming.
I have a Moto G4 Plus (XT1360) with stock Android 7.0 (never rooted this device before - but I used V4A back in 2015, in a s.g. 4 mini), TWRP, Elemental X, supersu and busybox, if that matters... It was supposed to be enforcing, but I also got SELinuxModeChanger. I tried installing V4A on both system/apps & system/priv-apps. Oh, and I'm listening through headset.

I tried several combinations to try to "trick" the app, tried install drivers > deleted them, tried not to install, tried not to install > use on compatible mode/normal, tried install > renamed the .so provided here ones as the original isc... tried all again restarting my phone between steps, tried all the mentioned them then reflash supolicy, tried all and killing the selinux on dev-mode before playing songs, tried the Build.prop Tweaks... :eek: nothing worked, every time I open V4A, it asks to install the drivers. And it does work afterwards, but only on Compatible, and with Spotify, and not the local files, neither Youtube etc.

I was taking a look on the apk with ES exp, I know **** about android, but there seems to be 4 .so files inside... would there be any way to reference all the 4 on audio.conf?
Oh, I shoul mention I also tried all that I mentioned above, but replacing the files with the 4 ones I extracted from the apk between steps etc - it didn't ask for install drivers when I started it! But again, only worked on Compatible, etc...
I did some research - and got nothing -, saw some people mentioning to freeze Sound Alive, or even delete it. As I mentioned, the stock eq I got is Audio Effects, but I also saw sometimes soundalive on audios.conf... but again, I know **** about Android :/

Tks to be trying to help!
Do you have an etc folder in /system/vendor/ ? Some roms have another audio_effects.conf in that location or maybe it's in another location. I have to be honest I'm not familiar with many other kinds of phones besides samsung.

The instructions I'm using are the ones taken from the viper4android thread itself and works with at least this phone with no other steps necessary. Maybe you can find some hints in that thread but I'm thinking that the conf file is either in another location or its different from samsung's version so it's not being found.

The other lib files inside the app aren't necessary. They are just there for different android versions. One set is for ICS and below and the other is for JB and above. The app installs the ICS drivers by default which is why I like using this method instead.

If you want, upload your original audio_effects.conf file. I'll try and modify it for you and see if we can figure out why the drivers aren't being found.
 

mateusonego

Member
May 11, 2016
32
0
0
Do you have an etc folder in /system/vendor/ ? Some roms have another audio_effects.conf in that location or maybe it's in another location. I have to be honest I'm not familiar with many other kinds of phones besides samsung.

The instructions I'm using are the ones taken from the viper4android thread itself and works with at least this phone with no other steps necessary. Maybe you can find some hints in that thread but I'm thinking that the conf file is either in another location or its different from samsung's version so it's not being found.

The other lib files inside the app aren't necessary. They are just there for different android versions. One set is for ICS and below and the other is for JB and above. The app installs the ICS drivers by default which is why I like using this method instead.

If you want, upload your original audio_effects.conf file. I'll try and modify it for you and see if we can figure out why the drivers aren't being found.
Wow, that was right on spot! :) I had another audio_effects conf on vendor/etc. So, I replaced it with yours.
I removed the excessive .so I put on the lib/soundfx, and let only the jb and, later, the ics file.
Now, Viper asks me to install the drivers even after I've already let it install and rebooted :/ and for some reason, it doesn't work both on normal nor compatible mode (ok, as expected, since it's asking to install etc). I checked to see if it had rewrite anything on audio_effects.conf, but it didn't in neither of the files, on system/etc nor vendor/etc. They were still pointing the libraries to the jb files, and v4a did install the ics files on system/lib/soundfx, either way...
It gets weirder and weirder.

UPDATE: I got V4A to work once I commented the jb drivers lines, and re-included the ics path reference on audio_effects.conf at vendor/etc. It's not asking me to install the drivers again, anymore, but it's still not working with local synced files... I tried leaving it pointing to 2 paths, and tried including v4a_neon or something like that, so I could reference the 2 most important drivers, but it only works with v4a_fx pointing only to the ics file, and everything else is ignored.

UPDATE 2: I opened the backup I've mentioned below, and unfortunately I'm pretty sure I haven't done the backup and it is actually your file before I do any mod.

I'm sending you what I THINK is my backup :) but it might be just a backup of yours before I changed some stuff just to test (I replaced my modified files by copying the original one I had on downloads after testing, I got back to yours version on both /etc), sorry. (don't think so, though)
 

Attachments

Last edited:

Iwizzy

New member
Sep 22, 2014
2
0
0
Viper4android: How to install it properly

This is something I've been meaning to write up for a long time now. All over XDA I see people have trouble with getting Viper4android working and I thought this might shed some light on the issue.

There are many zips out there that will install viper but most of them have other sound mods rolled into it and I prefer viper only. I find that most of the others often distort the sound a little, but with Viper4android only, the sound is just perfect for my tastes.

What you need:

- A root file explorer (RootExplorer, EsFileExplorer, etc.)
- Root (obviously)- Either Magisk or SuperSU
- If using Magisk you'll need a Permissive kernel. My kernel works with certain models and is permissive.
- If using SuperSU you can use enforcing, but will need an extra file that I'll cover later on.
- Some good music to listen to.

This method is really not much of revelation since it's actually on the Viper4android thread itself, but almost everyone tries to let the install the drivers automatically. Do not let the app install the drivers for you. It will install the old driver and it doesn't include the Neon driver.

First things first. We need to do a little cleanup just in case there are already some viper files or drivers partially installed.

Viper4android has three places in which it installs:
/system/lib/soundfx/
/system/etc/audio_effects.conf
/system/app/Viper4android.apk
View attachment 4308261

View attachment 4308262

View attachment 4308263

View attachment 4308264

View attachment 4308265


Using your root explorer go to /system/lib/soundfx/ and look for any old V4A files and delete them. It should look like this, libv4a_fx_ics_X86.so. Also check in your system/app/ and check to see if you have the old viper app and if so delete that too (the newest version is 2.5.0.5). Note: if you already have the app installed you can go to the settings menu and select uninstall drivers and it should remove everything for you. Then just double check to make sure. Then uninstall the app unless it's the newest version and placed in /system/app/.

Once we have everything cleaned up it's just a matter of placing the right files in the right spot. I've attached a zip that has everything you will need in it. It is not a flashable zip. Just unzip it to get to the necessary files.

1. Place the Viper4android app in /system/app (no extra folder necessary) and change the permission to 0644 or rw-r-r

2. Place the .so files in /system/lib/soundfx/ and change permission to 0644 or rw-r-r

3. If you don't have any other sound mods installed you can swap out my audio_effects.conf file for yours and set permission to 0644 or rw-r-r, but if you do that back up your original file just in case (just rename the original to audio_effects.bak). If you do have other sound mods installed you'll want to add the following red lines to you existing audio_effects.conf file.
Code:
  # List of effect libraries to load. Each library element must contain a "path" element
# giving the full path of the library .so file.
#    libraries {
#        <lib name> {
#          path <lib path>
#        }
#    }
libraries {
 [COLOR="red"]v4a_fx {
	path /system/lib/soundfx/libv4a_fx_jb_NEON.so
  }
#NECESSARY FOR XHIFI
        v4a_xhifi {
          path /system/lib/soundfx/libv4a_fx_jb_X86.so
  }[/COLOR]
# This is a proxy library that will be an abstraction for
# the HW and SW effects
  proxy {
    path /system/lib/soundfx/libeffectproxy.so
  }
# This is the HW implementation library for the effect
  offload {
    path /system/lib/soundfx/libaudioeffectoffload.so
And...

Code:
#        }
#        ...
#    }

effects {
 [COLOR="red"]v4a_standard_fx {
	library v4a_fx
	uuid 41d3c987-e6cf-11e3-a88a-11aba5d5c51b
  }
#NECESSARY FOR XHIFI
        v4a_standard_xhifi {
          library v4a_xhifi
          uuid d92c3a90-3e26-11e2-a25f-0800200c9a66
        }
  }[/COLOR]
  soundalive {
    library proxy
    uuid  05227ea0-50bb-11e3-ac69-0002a5d5c51b
      libsw {
Placement is everything with this. If there's an extra space or missing a space you'll will get the "drivers are not installed" error when opening the viper app. It took me several tries in the beginning to get the audio_effects.conf part of this right, but it will work when everything is correct.

4. This step is dependent on your setup. If you are using a permissive kernel this is not necessary. If you're using SuperSU with an enforcing kernel you'll need to flash the ViPER4Android-supolicy.zip that is included in the attached zip file.

Original instructions are here, but nobody seems to see them including myself for the longest time.

Now if everything is in place properly you should get this:
View attachment 4308290

It should work with any music player (I mostly use Spotify), YouTube, video players, etc.

Enjoy. :)


Credits:
@viper520 -for creating Viper4android
@zhuhang - for co-founding and continuing to maintain Viper4android

If anyone knows the identity of who created the ViPER4Android-supolicy.zip let me know. I would love to be able to give proper credits on that as well.
This worked for me.

You did not mention where to insert the audio_effects.contf file ... this file should be placed in the /vendor/etc

also you did not state that we would have to install the app after placing it in the /system/app.

Thanks once again