[APP][ALL ROOT SOLUTIONS][6.0+]ViPER4Android FX 2.7

Search This thread

zgfg

Senior Member
Oct 10, 2016
7,814
5,226
Generally speaking, you should only have a single audio modification when running Viper; and with viper I mean viper only. The Magisk module actually explicitly disables ones found commonly on other ROMs; but not JamesDSP. Installing more than one at the same time is asking for it to fail. Some may get it to work, but its not the way to go, especially when you are having problems. Try each, but uninstall so you only have one, for better chances of them working.
I have both of them, by help of AML and both work

Actually, I first had JDSP, then uninstalled and managed to install V4A but after the experiencing with both (separately), I put back JDSP and keep both, but I usually run only JDSP

As posted a month or more ago, I have better sound with JDSP than V4A (years ago, with the previous phone, it was opposite)

Unfortubately, V4A is not updated for few years (2.7.2.1) and does not keep up with new machines.
To the other side, last week or so I got update on JDSP
 
Last edited:
  • Like
Reactions: bradical711

Morgrain

Senior Member
Aug 4, 2015
907
996
V4A seems to be broken on Android 13; when opening V4A on A13 it wants to install the driver (+ reboot), but after that's done the app still won't work. The Android 12 "workaround" via changing a single file does not work.

Would be awesome to know if someone could share a workaround for A13, or we can together work on one.
 

cd993

Senior Member
May 8, 2009
3,515
1,241
London
Samsung Galaxy S21 Ultra
V4A seems to be broken on Android 13; when opening V4A on A13 it wants to install the driver (+ reboot), but after that's done the app still won't work. The Android 12 "workaround" via changing a single file does not work.

Would be awesome to know if someone could share a workaround for A13, or we can together work on one.
+1
No workarounds appear to allow to successfully install the drivers on Android 13. Will be keen to hear if anyone has managed to...
 
  • Like
Reactions: State.of.mind

sas46

Senior Member
Nov 26, 2013
89
13
Florence
@TheMystic I haven't tried, but I'm following this Thread and this one for the P6P where someone said they tried the suggested fix with no luck. I might try upgrading my OS to A13 just to try my luck now that people have found a way to Downgrade the Pixels if worst comes to worst.
Dolby is force closing on my p6p and Viper has the driver bug

If it's such an essential thing to you then wait until they fix it
 

card13

Senior Member
Nov 27, 2008
442
160
32
Washington State
OnePlus 3T
OnePlus 5
@sas46 V4A is essential in my case as in I really want it, but it's not a need lol.

I pulled the trigger and upgraded to A13.

@TheMystic I now have first hand knowledge that the fix for OOS A11 and A12 that you linked does not work on A13. Honestly I wasn't sure it would to begin with because the Dolby Module is not something I've ever had to install (even on OP8T w/OOS 11).
 
  • Like
Reactions: mmarcz and cd993

mmarcz

Senior Member
Nov 22, 2006
146
48
@sas46 V4A is essential in my case as in I really want it, but it's not a need lol.

I pulled the trigger and upgraded to A13.

@TheMystic I now have first hand knowledge that the fix for OOS A11 and A12 that you linked does not work on A13. Honestly I wasn't sure it would to begin with because the Dolby Module is not something I've ever had to install (even on OP8T w/OOS 11).
Same boat

I tried every trick and even older versions of Viper, and no luck.

Im not a dev, but it seems like the driver isnt actually being loaded into the system, its being blocked.

I have a Pixel 6 as well
 
hey all, finally i found the way to fix it! Viper zip magisk work fine before, but when i flash new rom version it doesnt work. Now i can manager it, but dont know why some app not effect with viper, is it normally?
add these lines in post-fs-data.sh in /data/adb/modules/ViPWE4AndroidFX

Code:
magiskpolicy --live 'allow audioserver audioserver_tmpfs file { read write execute }'
magiskpolicy --live 'allow audioserver system_file file { execmod }'
magiskpolicy --live 'allow mediaserver mediaserver_tmpfs file { read write execute }'
magiskpolicy --live 'allow mediaserver system_file file { execmod }'
magiskpolicy --live 'allow audioserver unlabeled file { read write execute open getattr }'
magiskpolicy --live 'allow hal_audio_default hal_audio_default process { execmem }'
magiskpolicy --live 'allow hal_audio_default hal_audio_default_tmpfs file { execute }'
magiskpolicy --live 'allow hal_audio_default audio_data_file dir { search }'
magiskpolicy --live 'allow app app_data_file file { execute_no_trans }'
magiskpolicy --live 'allow mtk_hal_audio mtk_hal_audio_tmpfs file { execute }'
photo_2022-08-19_09-03-52.jpgphoto_2022-08-19_09-03-56.jpgphoto_2022-08-19_09-04-00.jpgphoto_2022-08-19_09-04-36.jpgphoto_2022-08-19_09-04-40.jpgphoto_2022-08-19_09-07-21.jpg
 
  • Like
Reactions: EthanG_1988

TheMystic

Senior Member
Mar 18, 2017
804
398
@sas46 V4A is essential in my case as in I really want it, but it's not a need lol.

I pulled the trigger and upgraded to A13.

@TheMystic I now have first hand knowledge that the fix for OOS A11 and A12 that you linked does not work on A13. Honestly I wasn't sure it would to begin with because the Dolby Module is not something I've ever had to install (even on OP8T w/OOS 11).
Okay. Thanks for confirming that.
 

EthanG_1988

Senior Member
May 17, 2010
179
122
indianapolis, indiana
Google Pixel 6
hey all, finally i found the way to fix it! Viper zip magisk work fine before, but when i flash new rom version it doesnt work. Now i can manager it, but dont know why some app not effect with viper, is it normally?
add these lines in post-fs-data.sh in /data/adb/modules/ViPWE4AndroidFX

Code:
magiskpolicy --live 'allow audioserver audioserver_tmpfs file { read write execute }'
magiskpolicy --live 'allow audioserver system_file file { execmod }'
magiskpolicy --live 'allow mediaserver mediaserver_tmpfs file { read write execute }'
magiskpolicy --live 'allow mediaserver system_file file { execmod }'
magiskpolicy --live 'allow audioserver unlabeled file { read write execute open getattr }'
magiskpolicy --live 'allow hal_audio_default hal_audio_default process { execmem }'
magiskpolicy --live 'allow hal_audio_default hal_audio_default_tmpfs file { execute }'
magiskpolicy --live 'allow hal_audio_default audio_data_file dir { search }'
magiskpolicy --live 'allow app app_data_file file { execute_no_trans }'
magiskpolicy --live 'allow mtk_hal_audio mtk_hal_audio_tmpfs file { execute }'
View attachment 5689693View attachment 5689695View attachment 5689697View attachment 5689699View attachment 5689701View attachment 5689703

Unfortunately this doesn't seem to work on P6 with A13 stable. Viper still asks for the driver every time I open the app.
 
Unfortunately this doesn't seem to work on P6 with A13 stable. Viper still asks for the driver every time I open the app.
So try this
Or
 

EthanG_1988

Senior Member
May 17, 2010
179
122
indianapolis, indiana
Google Pixel 6
So try this
Or
Thanks, but others have already tried these methods and have proven that they do not work. A13 has introduced a new problem. It will be resolved in time. Such is the risk of not waiting to install the latest OS.

What phone model and OS version did your fix apply to?

See specific post here where user installed all the separate libraries.
https://forum.xda-developers.com/t/anyone-get-viper4android-worked-on-a13.4480467/post-87298431

See overall P6 thread with discussion
https://forum.xda-developers.com/t/anyone-get-viper4android-worked-on-a13.4480467/
 

Morgrain

Senior Member
Aug 4, 2015
907
996
@Morgrain
@cd993

Have you tried this:

None of the fixes in your linked thread, or the ones suggested in this one here, work on A13 stable.
 
Thanks, but others have already tried these methods and have proven that they do not work. A13 has introduced a new problem. It will be resolved in time. Such is the risk of not waiting to install the latest OS.

What phone model and OS version did your fix apply to?

See specific post here where user installed all the separate libraries.
https://forum.xda-developers.com/t/anyone-get-viper4android-worked-on-a13.4480467/post-87298431

See overall P6 thread with discussion
https://forum.xda-developers.com/t/anyone-get-viper4android-worked-on-a13.4480467/
currently i used N90F android Q
 

Top Liked Posts

  • There are no posts matching your filters.
  • 5
    After version 23 the module download list was removed. Just use version 23 to get the modules and follow the video instructions to properly install the Viper4Android. Several people have confirmed this method fully working. 🙂
    Do you really say that the point for Magisk v23 in your 'method' is in Modules downloading?!

    Are you up to date with Magisk v24/v25?
    Have you heard of Fox Magisk Module Manager:

    By using that app you can find and install all modules to Magisk v25, and not only from the old (frozen) Modules Repository but also from three new repositories as well (with lot of new modules)

    But anyway, with that app you can find and install all of your modules ACP, AML, V4A and JDSP if you wish.
    You don't need Magisk v23 for installing those modules from the repos!

    Not to mention that all those modules can be easily googled and found on GitHub, downloaded manually to the phone and installed to Magisk v25 by use of Install from storage option

    Btw, there is a thread devoted to the new Magisk, and all these things like why Modules repo was removed from v24/v24, and how to use instead that FMMM app, and many other instructions about the new things like Zygisk etc can be learnt from the OP posts on the first page:
    4
    Also tried every possible combination and still pixel 6 pro and android 13 viper doesn't work
    3
    Here's a solid way of installing the Viper4Android on the latest Android system. Just uninstall the latest Magisk app and install the version 23 so you can access the module downloads. You can find the version 23 at the official GitHub page. Click this text to enter the thread and see the video.

    For ACP, it is annoying that user has only 3 seconds to choose Yes/No (Vol Up/Down) for each option

    You barely have time to read what was the question, and almost no time to understand what were you asked and what could that mean if you opt for Yes or No

    Unfortunately, there is the same Volume-Key-Selector for JamesDSP but there you have only one simple question, while for ACP there are several questions to read (some related one to another), think about and decide

    To extend your life:
    - download ACP.zip (that is also pretty much an advanture to find😁)
    - unzip
    - go into subfolders common/addon/Volume-Key-Selector
    -edit install.sh, in the line 7 replace:
    local delay=3
    with:
    local delay=30
    - save and properly re-zip ACP zip

    Then, install your modified acp.zip and you will have 30 seconds to think for each option instead of the original 3
    1
    Works perfect on my galaxy note 20 ultra 5g, SM-968B/DS
    you are the man.
    no hd in in developer ops.
    1
    Use Magisk to install Viper4Android. Uninstall the latest Magisk and install this version:


    There you can search for the 3 modules needed for Viper4Android to work correctly.

    Here's a solid video instruction how to install the Viper4Android correctly:


    Still doesn't work. I've installed the audio modification library, the audio compatibility patch, Viper4AndroidFX, and set setenforce to 0 and the problem remains; Viper insists that no driver is installed and wants to install it. After a reboot it says the same thing.

    I haven't had to use the modification library or the compatibility patch since several years back on other phones. Once the driver was installed it worked fine in all apps. The problem since maybe three years back is that the driver doesn't install *unless* I flash Viper in a custom recovery. That step alone used to be the only one necessary. No other modules required and no need to set SELinux to permissive or off. It just worked. Installing it through Magisk however always results in some kind of failure. But since no custom recovery exists for the Pixel 6 the problem with the driver remains.
  • 541
    ViPER4Android FX
    YF7EJvAcFH9ZuuytKO91DimKH-TQUvYOaA-gmdBrioXY-LSgtjoadLI17gtaGgIkR6KBXyVA4IXtcdjfLdQ=w2880-h1608

    By pittvandewitt and MrWhite214

    Introduction
    Many users are enhancing their smartphone audio experience with the popular ViPER4Android software, but some of us have a hard time installing the driver or they don't like the look of the app. As a solution for these troubles we have rewritten the 2.4.0.1 app source and added all 2.5.0.5 features to it. Many more features have been implemented too.
    With our huge success of ViPER4Android 2.6 we decided to completely rewrite the ViPER4Android app in Kotlin. This allowed us to squeeze out the remaining bugs and clean up the code even more. After a long time of waiting for you and developing for us, ViPER4Android 2.7 is finally here!
    There are many new features and improvements compared to 2.6, of which some can be found in the changelog. Hit the download button to check it out yourself!

    Downloads
    You can download the latest version on XDA Labs
    If you were pointed here for the installer by @Zackptg5, the link can be found here

    pittvandewitt's vdc service
    If you've always wanted to get the most neutral and arguably best sound coming from your headphones, make sure to join the VDC service to request a file!

    Donate
    You can donate to us via PayPal or buy our donation package from XDA Labs with extra features!
    Donate via PayPal
    Buy our donation package *coming soon*

    Dev Note
    If you want to include the app in your work, you're free to do so as long as you give proper credits

    Legal notice
    We are not associated with vipersaudio nor audlabs.
    Stating their Github readme we're free to use the driver as long as it's not used commercially.
    The driver parameters are obtained from the 2.4.0.1 source. The graphical EQ interface is inspired by the Cyanogenmod DSP application
    The app is still named ViPER4Android, because the driver isn't any different from what ViPER ACOUSTIC provides.
    Renaming it without changing anything would be considered kanging, which is not what is going on here.

    Credits
    ViPER ACOUSTIC for the driver
    Bappo for Swedish translation
    pittvandewitt for Dutch translation
    sazuke0703 for Thai translation
    R1DEN for Russian translation
    Hede for Danish translation
    gloeyisk for Indonesian translation
    LCS for Chinese simplified and traditional translations
    razor84 for Turkish translation

    Installation
    Download and install the APK from XDA Labs
    Follow the instructions when opening the app

    XDA:DevDB Information
    ViPERAndroid, App for the Apps & Games

    Contributors
    Team_DeWitt, pittvandewitt, Mr_White_214

    Version Information
    Status: Stable
    Current Stable Version: 2.7.2.1
    Stable Release Date: 2020-10-27

    Created 2018-04-09
    Last Updated 2020-10-27
    136
    Currently on the wishing list
    • Car mode / head unit detection
    • More translations. If you're interested, take a look over here to find the files. Fork the repo and make a pull request to get your translation merged in next release!
    • EMUI (Huawei) 8.0+ refuses to load the driver. Ask ViPER ACOUSTIC for a 64bit driver (Can't fix)
    • Updated driver that does not require selinux injections or the libstdc++ dependency workaround (Can't fix)

    Before reporting:
    Make sure you use the latest APK provided on XDA Labs
    Make sure any other audio mod is disabled/removed before installing the driver. We really cannot afford fixing every single device setup, especially when it's not related to the app


    If you would like to report a bug, pm @Team_DeWitt using the following format:
    [Describe the problem and your steps you take to reproduce it]
    [Phone brand and model]
    [OS (ROM) + Android version]
    [Root method (in case of magisk: core or full)]
    [Provide a link to your log file]
    116
    Changelog

    2.7.2.1
    • Improved loading logic for convolution files
    • Fixed an issue when installing the module on older Magisk versions
    • Bug fixes
    • Stability improvements


    2.7.2.0
    • Android 11 support
    • Automatically save/restore settings based on the device type/name
    • Add preset widget
    • Reworked presets
    • Performance improvements
    • Close service when no music playback is active if legacy mode is disabled
    • Add optional crashlytics to help improving future versions

    2.7.1.6
    • Support Magisk 20.3
    • Long press a feature to show description
    • Material theme update
    • Support scoped storage on Android 10+ (Preset dir is now /sdcard/Android/data/com.pittvandewitt.viperfx/files/Preset)

    2.7.1.0
    • Support Magisk 19
    • Add compatibility setting
    • Add ability to attach to sessions
    • Fix preset loading bug
    • Switch from setools to magiskpolicy
    • Important release notes: Link

    2.7.0.0
    • Full rewrite in Kotlin
    • New UI
    • Presets can be managed in the app itself
    • Effects can be set more precisely with seekbars
    • Min API 23
    • Uses 2.5.0.4 driver only
    • Audio routing bug fixed
    • Driver status bug fixed
    • Cross device effect changing bug fixed
    • App follows system dark/light mode (can be toggled with google messages e.g.)
    • Installation is faster and more versatile
    • Notification settings
    • Reduced APK size significantly

    2.6.0.5
    • Add app shortcuts (7.1+)
    • Minor interface redesign
    • Fix muffled sound
    • Fix options not applying
    • Fix profile conversion
    • Introduce vdc service
    • Improve performance
    • Update driver installation
    • Update chinese translations, thanks to KiSS

    2.6.0.4
    • Retain service after clearing recents
    • Emergency service.sh fix
    • Support Magisk core mode
    • Fix profile load loop
    • Recover speaker service
    • Fix convolver
    • Support Pixel devices
    • Use su.d if possible
    • Force global effect mode
    • Add Korean translation by @nebulac

    2.6.0.3
    • Fix /system install and uninstall.
    • Add temporary workaround for the convolver
    • Updated strings

    2.6.0.2
    • Fix FC while installing the driver
    • Add root check before installing the driver
    • Removed lucky patcher check
    • Capitalized driver status outputs
    • Updated strings

    2.6.0.1
    • Fix profile loading
    • Fix assets bug
    2.6.0.0
    • Initial Release
    101
    2.7.1.0 released

    Yay it's finally time to release an update

    And with this release come a few important release notes:
    Support for Magisk prior to v19 is dropped.
    If you did not use magisk, you need to reflash your /system partition and reinstall the driver
    An audio attach setting is added too to improve compatibility and it needs some explanation:
    For every time you play a song, the audio player should send information about what session the audio is played on, so equalizer apps can attach to that session.
    Session 0 is the default but deprecated session. Most of the time V4A processes just fine at session 0, but if it doesn't you can enable this switch and Viper will attach to other sessions. Note that if you don't have any session open, the driver status will say abnormal, which makes sense.
    There is the need for a switch, because in a lot of cases audio players do NOT send the information when a session is closed. So they keep the driver occupied and this mutes all other audio streams, including session 0 which is the fallback session.
    To make this problem a bit less bad, I excluded session 0. But when you still run into this problem, the solution is not to kill viper but to kill the audio app that was playing music previously.
    Bad design, I know. But it's not my fault. You should contact the developer of the music app to fix their crappy code and send a broadcast when audio playback stops/pauses.
    This switch makes ACP obsolete.

    Other things that have improved:
    I've seen multiple issues with android pie where the viper library wasn't detected any longer because a dependency is removed since the update. A workaround is shipped in the new release.
    The compatibility mode switch has been added back. This seems to be mandatory for car mode and some android q builds.
    An issue when loading presets has been resolved

    Download can be found on labs as always: Link
    92
    Answers to some related questions

    Help, the driver status says no
    • In case of Enabled: no; Please flip the Master limiter switch and go sit in a corner for a while
    • In case of Processing: no; If you use an application that uses audio sessions, enable session attaching in the settings. If that does not work, the audio is routed over session 0. You might want to try Audio Compatibility Patch from the Magisk repository in this case.

    What happened to the profiles?
    • They're now called presets. They are reworked to use independently per device, a feature that was very welcome. Because of many technical changes and improvements on how the preset is stored and loaded, they are not compatible with older versions than 2.7. You will have to recreate them by hand unfortunately. You can access the menu by pressing the selected device in case you missed the huge showcase when you first launched the app after installing the driver

    Why does your Magisk module not work?
    • Probably because you installed some other mod that also has an audio_effects file in it. Whatever module gets loaded last will become active
      The easiest way to bypass this is to let the app build a module after you installed all your favorite audio mods, and delete all files containing audio_effects in the other modules
      AudModLib will not come in handy this time, because the app doesn't flash a zip that AML can intercept

    Where can I find the source code?
    • You can't. And there is an obvious reason for that: This app is more sensitive to kangers who start selling this app, likely after adding their bullsh*t to it, rather than to people who actually want to help improve the app. Something like that already happened in the past to other audio software here on xda. Not really something we want to see happen again

    Where did the Selinux switch go?
    • What..? Are you really that careless security wise?
      The app handles this in a much more sophisticated way now. It injects only the absolute necessary rules to allow V4A to process, fully automatically

    Help, why do I still experience service drops?
    • Probably because doze is kicking in because Android doesn't like long running services. The service has been implemented the way the docs suggest. You can try excluding it from doze. Alternatively you can check out dontkillmyapp.com for tips

    Do you have a zip file for me?
    • No. There is no point in providing a zip file anymore. The driver installation is written from scratch and actually works now

    How do I uninstall the driver?
    • Use Magisk Manager to delete the module. If you use another root solution, you can dirty flash your rom or just leave it there