[MOD] Audio Modification Library v5.1

Which mods do you use?

  • AM3D

    Votes: 73 3.9%
  • V4AFX

    Votes: 1,326 70.2%
  • V4AXhifi

    Votes: 120 6.4%
  • Dolby Atmos (ahrion)

    Votes: 228 12.1%
  • Dolby Atmos Oreo (guitardedhero)

    Votes: 175 9.3%
  • Dolby Digital Plus

    Votes: 218 11.5%
  • B&O Ice (Ainur)

    Votes: 32 1.7%
  • Arkamys (Ainur)

    Votes: 33 1.7%
  • Dirac (Ainur)

    Votes: 42 2.2%
  • Dirac Hexagon (Ainur)

    Votes: 38 2.0%
  • JamesDSP

    Votes: 203 10.7%
  • Audio Compatibility Patch (formerly udbr)

    Votes: 230 12.2%
  • Ainur Sauron

    Votes: 379 20.1%

  • Total voters
    1,889
Search This thread

TheKerevas

Senior Member
Sep 7, 2014
269
19
27
Agrigento
Quick PSA everybody. Narsil has some issues with the install script I'm currently working on. No ETA but be aware that if you're having weird issues and you have narsil installed, it's more than likely the culprit. This isn't an aml issue in this case
I have Narsil and new versione of AML, no problem. I have Pocophone F1 with MIUI 11.0.6.0 Global Stable
 

Zackptg5

Recognized Developer
Sep 18, 2014
4,148
7,005
zackptg5.com
Google Pixel 4a
Google Pixel 5a
Quick turnaround the past couple days but v3.2 is already here! This may fix the xposed issues users were having - it did for me

Changelog:
* Restructured script for better efficiency/faster running time - may fix xposed issues
* Fix prop issue where non-aml supported mods were affected
* Favor module .aml.sh scripts over built-ins
 

moozyedogawa

New member
Nov 12, 2016
3
1
36
I installed dolby, viper and aml but why did the sound in the sound game have no effect, while the music player and youtube went well. Can it be helped answer?
 
  • Like
Reactions: alwynjoshy

alwynjoshy

Senior Member
May 28, 2014
628
65
Chicago
Quick turnaround the past couple days but v3.2 is already here! This may fix the xposed issues users were having - it did for me

Changelog:
* Restructured script for better efficiency/faster running time - may fix xposed issues
* Fix prop issue where non-aml supported mods were affected
* Favor module .aml.sh scripts over built-ins
After long use of Bluetooth, The output stops comes from Bluetooth and comes from earpiece only. A restart will fix the issues. But i was hoped it will be fixed on v3. I have attached the log cat. Please look into it.
 

Attachments

  • 2020-03-17-04-23-04.txt
    31.5 KB · Views: 7

Zackptg5

Recognized Developer
Sep 18, 2014
4,148
7,005
zackptg5.com
Google Pixel 4a
Google Pixel 5a
I installed dolby, viper and aml but why did the sound in the sound game have no effect, while the music player and youtube went well. Can it be helped answer?
Try install still compatibility patch

After long use of Bluetooth, The output stops comes from Bluetooth and comes from earpiece only. A restart will fix the issues. But i was hoped it will be fixed on v3. I have attached the log cat. Please look into it.
Can you post the files/folders noted in the troubleshooting guide in the op?
 

moozyedogawa

New member
Nov 12, 2016
3
1
36
Try install still compatibility patch


Can you post the files/folders noted in the troubleshooting guide in the op?

I have installed it, but I'm confused which choice I choose? when installing the patch compatibility module, maybe I made the wrong choice and had no effect when I played the game

The settings I installed
Skip Audio policy NO
Remove (old logic) VOL DOWN
Skip notif NO
Skip usb NO
YES
 

Zackptg5

Recognized Developer
Sep 18, 2014
4,148
7,005
zackptg5.com
Google Pixel 4a
Google Pixel 5a
I have installed it, but I'm confused which choice I choose? when installing the patch compatibility module, maybe I made the wrong choice and had no effect when I played the game

The settings I installed
Skip Audio policy NO
Remove (old logic) VOL DOWN
Skip notif NO
Skip usb NO
YES
Best to bring that up on the audio compatibility thread, question is probably already answered there - check the OP of that thread
 
Updating to version 3.2 breaks Viper4Android processing when used alongside Ainur Sauron. I'm currently on Android Oreo on my Galaxy S9. To other users who will update on Oreo, just remain at version 2.5.

I already knew it was a stupid idea to update when the older version was working perfectly fine. I just hope there is an option here to download the older versions. Reverting to an older version before the boot script fixed the problem.

Regardless, thank you for your hard work, none of this paid and truth be told, we don't really have any right to complain.
 
Last edited:

repey6

Senior Member
Quick turnaround the past couple days but v3.2 is already here! This may fix the xposed issues users were having - it did for me

Changelog:
* Restructured script for better efficiency/faster running time - may fix xposed issues
* Fix prop issue where non-aml supported mods were affected
* Favor module .aml.sh scripts over built-ins

Thanks a lot for v.3.2! Good job!
 
  • Like
Reactions: Zackptg5

Zackptg5

Recognized Developer
Sep 18, 2014
4,148
7,005
zackptg5.com
Google Pixel 4a
Google Pixel 5a
Updating to version 3.2 breaks Viper4Android processing when used alongside Ainur Sauron. I'm currently on Android Oreo on my Galaxy S9. To other users who will update on Oreo, just remain at version 2.5.

I already knew it was a stupid idea to update when the older version was working perfectly fine. I just hope there is an option here to download the older versions. Reverting to an older version before the boot script fixed the problem.

Regardless, thank you for your hard work, none of this paid and truth be told, we don't really have any right to complain.
If you get the chance, could your upload the aml module folder when using 3.2 as outlined in op for troubleshooting? I'd like to see what the problem is so I can fix it
 

Jonas Cardoso

Senior Member
Mar 22, 2014
1,681
2,989
25
São José dos Campos
If you get the chance, could your upload the aml module folder when using 3.2 as outlined in op for troubleshooting? I'd like to see what the problem is so I can fix it

i am using your last version from https://github.com/Magisk-Modules-Repo/ViPER4Android-FX and https://github.com/Magisk-Modules-Repo/aml, but i has problem (pic bellow), after kill viper app and re-open, all get back to normal, this problem is recurrent, i uploaded logs bellow, if you need anything more, just tell me
 

Attachments

  • photo_2020-03-20_14-29-52.jpg
    photo_2020-03-20_14-29-52.jpg
    58.5 KB · Views: 197
  • saved_logs.zip
    363.8 KB · Views: 11

Top Liked Posts

  • There are no posts matching your filters.
  • 145
    Audio Modification Library is a library of known audio mods. It'll search your magisk directory for any supported audio mods and incorporate them into itself. It's been completely redone to act as a standalone module so devs no longer need to worry about using a framework for their audio mods and users no longer are limited to just mods using that framework.

    Some history
    Originally, Unity Installer and AML were combined into one. That's what's archived on ahrions github.
    Nowadays, unity is its own thing and AML was completely redesigned into what it is today. The whole purpose of aml is to combine the audio effect/policy/mixer/etc files from multiple audio mods into one set because only one copy of a file can be active mounted at any given time. With non-magisk installs, the actual copies of those audio files are all modified by various mods (aka they all work with the same copy) and so there's no need for aml

    What is the purpose of this?
    Audio mods often function in part by modifying some audio files (such as audio_effects, mixer_paths, etc.). The problem here is that each mod has it's own copy of the files and magisk can only mount 1 copy of each, so only 1 mod will completely work. AML functions by combining them all into one set of files to remedy this issue.

    So how does it work?
    It's now a standalone zip that is flashed once and forgetten about. It's magisk only for obvious reasons and will incorporate all supported audio mods into itself automatically during install, and then during each boot if any changes were detected. So it will adjust for any changes in audio mods such as new ones being installed, some being removed, or an existing one being updated.

    Where the Mod is Located:
    This is more of the nitty gritty for anyone interested but the aml specific copies of audio files and the mod itself are stored in the aml folder in the magisk directory like a typical module. However, it moves any detected audio files out of the folder of any audio mods so they won't be mounted by magisk and conflict. They're moved to .core/aml for safe keeping so they can be restored back to the mod later if you choose to uninstall aml or if upgrading aml

    When do I flash this?
    Unlike with older version of aml, order doesn't matter. However, it's best to flash aml FIRST. The reason for this is that an increasing number of audio mods look for aml and behave differently if it doesn't yet exist.

    Compatibility:
    • Magisk v20.4+
    • Magisk Delta
    • KernelSU
    Troubleshooting:
    If a mod didn't work before you flashed aml, it probably won't work after. Take up the issue on the mod's thread.
    Otherwise, if a mod works before flashing aml and doesn't after: First, try uninstalling all audio mods and then reinstalling them (including aml). If that doesn't work, then I'll need you to make a post with this in it:
    • Recovery log after flashing AML
    • List of Audio Mods Installed
    • AML version last working on (if applicable)
    • Zip attachment of your aml magisk module (/data/adb/modules/aml) folder (note that there's a debug.log file in here that's shows everything)
    • Zip attachment of your aml backup folder (/data/adb/aml) folder
    Currently Supported Mods:
    • AM3D
    • AudioWizard
    • V4AFX
    • V4AXhifi
    • Dolby Atmos (ahrion's ports)
    • Dolby Atmos Axon 7 Oreo (guitardedhero's port)
    • Dolby Digital Plus
    • Bang&Olufsen ICEPower (only tested ainur version)
    • Arkamys (only tested ainur version)
    • Dirac (only tested ainur version)
    • Dirac Hexagon (only tested ainur version)
    • JamesDSP
    • MaxX Audio 3
    • Audio Compatibility Patch (formerly universal deep_buffer remover)
    • Ainur Sauron
    • SquareSound
    • Sony Xperia Z2 Sound System
    • Ainur Narsil
    • Ainur DTSX
    • Ainur DTS Ultra
    • Dolby Atmos Pie/Q+ (guitardedhero's ports)
    • Numerous other mods

    Want an audio mod added to AML?
    Make a post about it and I'll see if it's eligible. No guarantees that I'll add it but these are things that it must have to even be considered:
    • Original/unique (so not a repackaging of other audio mods)
    • Universal(ish) (support a large number of devices - not specific to a handful of devices)
    • Patches files rather than replaces them (the whole point of aml is to be a collection of patches)
    • Patches must be static (won't be changing with each mod update)

    Audio Mod Can't be Added to AML Directly? You can still add it in! :)
    If it doesn't meet these requirements, you can still make it aml compatible.
    You just need your mod to create a file called ".aml.sh" in the root of the mod directory ($MODPATH typically). It'll need to have the patches for your mod in a format that aml can understand:

    1. For patching audio_effect files, AML includes a 'patch_cfgs' function that makes life much easier. So if you have an effect and library to add:
      Code:
      patch_cfgs <effect_name> <UUID> <library_name> <library_path>
      For example:
      Code:
      patch_cfgs v4a_fx 41d3c987-e6cf-11e3-a88a-11aba5d5c51b v4a_standard_fx /vendor/lib/soundfx/libv4a_fx.so
      Note that this patch_cfgs function is for audio effects files only. If you're patching audio policy or mixer_paths files, then you'll need to make the patches the old fashioned way yourself.
      So if you're not patch audio effects files, skip on down to the 'Some other variables/options' section :cowboy:

      'patch_cfgs' has several flags that can be used (the format followed by an example for each is listed here as well):
      • -l: patch library
        Code:
        patch_cfgs -l <library_name> <library_path>
        Code:
        patch_cfgs -l v4a_fx /vendor/lib/soundfx/libv4a_fx.so
      • -e: patch effect
        Code:
        patch_cfgs -e <effect_name> <UUID> <library_name>
        Code:
        patch_cfgs -e v4a_standard_fx 41d3c987-e6cf-11e3-a88a-11aba5d5c51b v4a_fx
      • -o: patch output_session_processing (postprocessing). Typically used with both 'l' and 'e' flags as well
        Code:
        patch_cfgs -ole <osp_section> <effect_name> <UUID> <library_name> <library_path>
        Code:
        patch_cfgs -ole music atmos 9d4921da-8225-4f29-aefa-aacb40a73593 atmos /vendor/lib/soundfx/libatmos.so
      • -q: patch pre_processing (preprocessing). Typically used with both 'l' and 'e' flags as well
        Code:
        patch_cfgs -qle <pp_section> <effect_name> <UUID> <library_name> <library_path>
        Code:
        patch_cfgs -qle music atmos 9d4921da-8225-4f29-aefa-aacb40a73593 atmos /vendor/lib/soundfx/libatmos.so
      • -p: patch proxy effect (note that since this is a special kind of effect, it cannot be used with '-e'). When used by itself
        Code:
        patch_cfgs -p <proxy_effect_name> <proxy_UUID> <sw_library_name> <sw_UUID> <hw_library_name> <hw_UUID>
        Code:
        patch_cfgs -p dax 9d4921da-8225-4f29-aefa-6e6f69726861 dax_sw 6ab06da4-c516-4611-8166-6168726e6f69 dax_hw a0c30891-8246-4aef-b8ad-696f6e726861
        But it's typically used with 'l'
        Code:
        patch_cfgs -pl <proxy_effect_name> <proxy_UUID> <sw_library_name> <sw_UUID> <sw_library_path> <hw_library_name> <hw_UUID> <hw_library_path>
        Code:
        patch_cfgs -pl dax 9d4921da-8225-4f29-aefa-6e6f69726861 dax_sw 6ab06da4-c516-4611-8166-6168726e6f69 /vendor/lib/soundfx/libswdax.so dax_hw a0c30891-8246-4aef-b8ad-696f6e726861 /vendor/lib/soundfx/libhwdax.so
      • -r: replace. Normally, aml will only apply any of the above if it doesn't exist in the audio cfg file. With this flag enabled however, it'll replace any existing effects. It's pretty rare that this would be needed (none of the mods patches built-in to aml have this)
      • no flag specified: if no flags are specified, patch_cfgs will use -le by default (patch library and effect). This is what's typically used (like in the first example before this list)
    2. For patching other files: just add you script logic like it it was in your mod.
      If you're patching mixers for example:
      Code:
      for i in $(find $MODPATH/system -type f -name "*mixer_paths*.xml"); do
        <add_patch_here> for mixer '$i'
      done
      MODPATH is equivalent to aml's directory since it's running the aml.sh script
    3. Then when AML is installed, it'll detect this .aml.sh file and apply the patches accordingly


    Source

    Download
    29
    AML 3.0 is finally HERE!!!

    I've had several different beta channels over the past couple months including many scrapped ideas. The big one was using diff3 but there was no good way to automate conflict merging and so that was scrapped.
    Instead I rewrote 2.5 to be much learner, more efficient, and easier to make an aml.sh script for if you need to.
    Note that the logic for aml.sh files has been changed - it's much easier now - as you can see by the bottom section in the OP

    If you were on a previous beta, completely uninstall that beta first (I used different directories in that one). If you fail to do this, you'll have to reinstall all of your audio mods

    Changelog:
    * Complete overhaul - most everything happens in the boot script now, no need for redunduncies
    * Added Guitardedhero's Dolby Atmos Pie/Q
    * Added Ainur DTS
    * Removed IceWizard
    20
    Updated AML to v1.8.3!
    It came to my attention that there may be the situation in which a user may disable one audio mod rather than uninstall it. In this case, AML would do nothing and so all of the patches/props would still be present for that mod. So with this update, I fixed that.
    Changelog: Have AML remove patches/props for disabled mods and have it not patch disabled mods in the first place

    So now you can disable/enable audio mods and aml will compensate for that
    18
    Updated AML to new magisk template! Note that it's compatible with magisk 18+ now (19 fixes issues with most problem devices anyways)
    18
    So a quick update on the progress for AML v3.0

    As you may already know, it's completely different from aml v2.x in that it uses diffutils to compare files and some hacky scripting to merge conflicts. The problem here is that conflict merging is a manual process and so there's no way for me to script it to be truly automated. Due to this, I'm not going ahead with the v3 beta that uses the diffutils. I took down the beta builds I posted here to eliminate confusion

    Instead, I'm working on updating and revamping/redoing v2.x so it'll become the v3 once it's ready.

    What's changed?
    The mod itself has been completely rewritten - slimmer, more efficient, more idiot proofed.
    The big change for any audio module devs is that the aml.sh logic has changed slightly - it actually makes things much easier now:
    • The extra variables (NAME, LIBDIR, RUNONCE, COUNT) have been removed. There's no need for them anymore and they made things way more confusing then they needed to be.
      The aml.sh script only runs once which is why the above is no longer needed. If you're patching aml files, call them like you would any other - $MODPATH/system/whatever
      This isn't really a change - it behaved the same way before minus how many times the script is run
    • The syntax for patch_cfgs has changed to be more streamlined. the <library_path> actually should point to your library now:
      i.e. /vendor/lib/soundfx/whatever.so
      Note that lack of $MODPATH or any magisk paths - just use what the path would show up as if you were patching an audio_effect file

    Once this becomes stable - I'll update the OP and such with better instructions but as you can see, the changes you would need to make are minimal and make life easier