[APP][AOSP Root 4.4] AudioTricks / VolumeTricks

Search This thread

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,826
4,142
Ottawa/Gatineau, Canada
Thread is under construction. :)
WARNING: There have been 3 reports so far of failure to boot after installing the Shim HAL. This sort of problem should be assumed possible at this early "Alpha level research project" phase.

Please don't install if you have stock recovery or don't know what recovery is.

Please don't install if you are nervous. Wait a while for the bugs to get worked out and info compiled.

Don't install if not confident in your technical skills.

Don't install if you might freak out if your phone gets disabled for a little while.

For bootloops or to fix or remove: http://forum.xda-developers.com/showpost.php?p=52931431&postcount=67

Post #2 has download links and instructions: http://forum.xda-developers.com/showpost.php?p=52765309&postcount=2


Since interest has ramped up quickly, I've published a 99 cent "donate" version on Play: https://play.google.com/store/apps/details?id=fm.a2d.av (Wait until the $200 placeholder price disappears, LOL.)

I'm not sure "donate" is the right word, but it's the exact same app I'm distributing and will continue to distribute for free (for at least X months to a year ??), so nobody is under any obligation to buy to get the app. Updates will be automatic via Play though.

============================================================
AudioTricks / VolumeTricks is a new kind of "audio mod" that is HAL Shim based.

At present, it can raise or lower output volume and microphone input gains digitally.

Only works on ICS Android 4.0.3 and later. AOSP ROMs such as CM11 or other KitKat very much preferred. Many stock ROMs 4.1-4.3, won't work, especially HTC.

Post 2 has download link and instructions.

Disclaimer: Please understand that this is the first public release of this app. Although I endeavour to make my apps as safe as possible, one never knows whether or not some silly bug or unusual interaction might pop a speaker, headset or whatever. I have over 20 devices that I use for testing my apps and I try to "torture test" as much as possible. So if something goes pop, I'll be very sorry and do everything I can to analyze and fix any problems. If you're "not sure", just wait and more adventurous people will do the early testing needed to help ensure nothing breaks.

By it's very nature, any app that can boost volume creates risk for audio output devices as well as your ears.


For those who know my Spirit FM apps, this is a bit of a move for me. Spirit1 and Spirit2 both are alive and well, but the future of FM radio on Android seems to be dimming the last few years. I'll be splitting my time between apps based on the support I get.

Making this HAL Shim based provides some advantages and disadvantages over other methods of changing volume or gain.

Advantages include:
- Audio modification even for apps, games, etc. that use the low level Android NDK OpenSL ES API.

Disadvantages:
- Analog controls, if available, may be better.

AudioTricks is intended to be my name for a group of small apps, and/or a "master app" that includes the features of them all.

VolumeTricks is the first such small app to be released, and is focused on output volumes and input gains.

VolumeTricks may not be limited to the "HAL Shim" approach to audio mods. It may also include ALSA, ALSA UCM, and other methods to manipulate audio.


At this time, the app is free, but Copyright Me. I'll likely maintain a free version for some time, but I gotta eat too so there will be a paid version on Play when it seems ready.

At this time, this app has been tested mostly on CM11 and a few other AOSP ROMs. Many stock ROMs won't work, especially HTC.

The app is currently set to only work on Android KitKat 4.03+.

I haven't tested ART much yet, mostly Dalvik, but it's working OK on my One M7 w/ ART. Shouldn't be too hard to fix any ART issues.

So what the heck is a "HAL Shim" ??

Android uses HALs (Hardware Adaptation Libraries) as an API between Google's Android code and the phone OEMs hardware specific code. Android Audio has at least 2 HALs, one for "Policy" (selects outputs, inputs and some other stuff) and one for the audio transfers. The HAL Shim in this app works with the latter "Primary" HAL for audio transfers.

A SHIM is a component that sits between 2 other components and pretends to be the higher component as well as the lower component. Hierarchy:

Android AudioFlinger
------------------------
HAL Shim
------------------------
Primary Audio HAL

So, the HAL shim pretends to be an audio HAL to Android's AudioFlinger. AND it pretends to be Android AudioFlinger to the Primary Audio HAL.

The HAL shim acts as an intermediary. It can pass everything back and forth unmodified which makes it invisible. Or it can modify anything passing between, including the audio data.

Isn't there a better way to do this ? No, I don't think so. I don't want to be modifying a bunch of HALs on thousands of ROMs. I also don't want to be modifying AudioFlinger on those same hordes of ROMs.

What else can be done with the HAL Shim concept, besides "Volume Tricks".

I think some of these may be feasible:

- Recording all inputs and/or outputs. Maybe even both sides of phone calls.

- Analyze, Visualize, Equalize, Effects-ize all or many inputs and outputs.

- Bypass DRM. :)

- Maybe a method to modify (eg. encrypt / decrypt) phone call audio, inbound and outbound; possibly via pretending to be a BT headset....


Note that, at present, the HAL shim only works with the "Primary Audio Interface". Small-ish mods could do the same for HDMI, A2DP / BT, USB Audio, "Remote Submix" and whatever new audio devices Google defines.
 
Last edited:

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,826
4,142
Ottawa/Gatineau, Canada
Post 2 download link and instructions.

If a boot loop would ruin your day, please see warnings at top of post #1 and don't install this app until more mature.

Disclaimer: Please understand that this is the first public release of this app. Although I endeavour to make my apps as safe as possible, one never knows whether or not some silly bug or unusual interaction might pop a speaker, headset or whatever. I have over 20 devices that I use for testing my apps and I try to "torture test" as much as possible. So if something goes pop, I'll be very sorry and do everything I can to analyze and fix any problems. If you're "not sure", just wait and more adventurous people will do the early testing needed to help ensure nothing breaks.

By it's very nature, any app that can boost volume creates risk for audio output devices as well as your ears.

Android seems to have a ridiculously / hilariously complex audio system... LOL.

v140530: http://d-h.st/2lc#.U4hLA3KBugY

Fixes a LOT of issues, especially SU / mount issues with stock restrictive SELinux like Samsung stock 4.2+.

As always, Press Update/OK to update Shim HAL each new release.
- SU / root fixes, especially for SELinux Samsung 4.2+.
- Fine control removed.
- Coarse control range changed from -60 to +60 db ; now 0 to +36 db. Maybe I'm the only one w/ a need for gain reduction below 1.0 or 0 dB.
- Many other fixes.

Version av-140526:
- Fix the /system/addon.d/ ROM update backup/restore script used during ROM updates.

Version av-140525:
- Automatic gain reduction is now sticky, so reduces distortion when maxed. Touch sliders to reset.
- Numbers for VU.
- After amplification VU display.
- Sliders caiibrated in dB.


May not work on stock ROMs, especially older Android versions and HTC stock ROMs.
Starting this app for the first time should request root and prompt to install the HAL Shim and an addon.d backup/restore script to allow it to survive ROM updates.

After the Shim is installed, the "system_server" is killed in order to activate the Shim. Sometimes it may be better to completely reboot the phone, especially with effects, visualizers and player apps running at install time.

Once the app and Shim are installed, the app shows a "Remove" button that removes the Shim, should it be causing you problems or you just don't want/need it. The button will change to "Update" with newer versions of the app/Shim.

Sometimes, like on ROMs with old Legacy HALs, state detection won't work and the button will only offer to Install with no way to remove. As of v1.0.3 go to the 2nd tab (swipe from right to left) and there is a permanent Remove button.

If you remove the app without removing the Shim, the shim will remain, but should be mostly dormant. The easiest way to remove the Shim would be to reinstall the app and select the Remove button.

To manually remove the Shim and addon.d script, something like this should work from a connected PC with adb shell:

Code:
adb shell
su
mount -o remount,rw /system
ll /system/lib/hw/audio.primary.*.so
# !!!! Note the name of the HAL, like audio.primary.msm8960.so and use this name in next line. (If only audio.primary.default.so exists, use that.)


mv  /system/lib/hw/audio.primary.orig.so /system/lib/hw/audio.primary.msm8960.so
rm /system/addon.d/99-audiotricks.sh
mount -o remount,ro /system
reboot
Using the app:

See post #3 for usage instructions.
 
Last edited:

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,826
4,142
Ottawa/Gatineau, Canada
Usage:

If a boot loop would ruin your day, please see warnings at top of post #1 and don't install this app until more mature.

Disclaimer: Please understand that this is the first public release of this app. Although I endeavour to make my apps as safe as possible, one never knows whether or not some silly bug or unusual interaction might pop a speaker, headset or whatever. I have over 20 devices that I use for testing my apps and I try to "torture test" as much as possible. So if something goes pop, I'll be very sorry and do everything I can to analyze and fix any problems. If you're "not sure", just wait and more adventurous people will do the early testing needed to help ensure nothing breaks.

By it's very nature, any app that can boost volume creates risk for audio output devices as well as your ears.

To select output volume or input gain, swipe left or right or use the tabs. The primary/left screen is for output volume.

Set the enable switch to ON to enable volume/gain adjustments.

The Left and Right indicators are logarithmic/DB audio level indicators, updated every 0.1 seconds with the peak audio level. These show the signal level before amplification. If they are VERY near the full width of the screen, there is little amplification that can be reasonably done. (But 80-90% leaves some room, given the exponential nature.)

For no boost, IE an amplification factor of 1.0, the Coarse and Fine controls should both be set to 0 at centre.

Setting Fine all the way right to +6 dB doubles audio power, setting to -6 dB halves audio power.

Setting Coarse to +30 dB creates an amp factor of 32, assuming Fine is set to 0. Setting -30 dB is about 0.03.

Note that an amp factor of 32 is very high, unless you are dealing with very low input signals.

The Shim detects when the signal will overload, and reduces the amp factor as needed to prevent overload/distortion. To raise it again, use the UI to reset.

There are some "streams" for which amplification will not work. I will support as many stream flags (such as Fast) as I can; remains to be seen; this is still kind of a "research project" at this stage.

At present, all streams are amplified the same amount. Per stream or stream type amp factors will be supported.
 
Last edited:

Rinoceros

Senior Member
Jul 8, 2008
368
165
Volume control?

Hi Mike,

You are making me curious about this new project of you.

I bought a long time ago this app for level control. It is doing his job, but has lack of storing the settings and sometimes still adjust (unwanted) the volume.

Count me in for testing :fingers-crossed:

Edit: get an error parsing the apk :crying:
 
Last edited:
  • Like
Reactions: mikereidis

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,826
4,142
Ottawa/Gatineau, Canada
Hi Mike,

You are making me curious about this new project of you.

I bought a long time ago this app for level control. It is doing his job, but has lack of storing the settings and sometimes still adjust (unwanted) the volume.

Count me in for testing :fingers-crossed:

Edit: get an error parsing the apk :crying:

Welcome to my new thread and app. :)

AFAICT, that app mostly just manipulates standard Android volume levels, which is fine, but not much different than the standard volume control.


I just downloaded my new app linked http://d-h.st/plb myself (7 downloads in first 2 hours now), and it installs fine on my One M7, and matches bit for bit the 1.0 version installed on my test phones.

So you're on stock based InsertCoin ROM ?

As long as it's Android 4.4 KitKat (API Level: 19), it SHOULD parse and install OK.

The binaries are for ARM devices only (ie 99+% of Android devices). Intel x86 or MIPs can't work (at present.)

I can't think of any other reason it won't parse, unless your copy is corrupted. This is the MD5 I get:

Code:
md5sum ~/Downloads/av-release.apk

2c8328e8cbe1f585f3b1634e36200c8f  /home/mike/Downloads/av-release.apk
I'm happy to hear anyone else's stories of success or failure, but I'll need a good 7 hours of sleep first.


------------
Happy Victoria Day to all fellow Canadians & CommonWealther's, and Good Long Weekend to all those with a day off of work this Monday. Finally nice weather here lately... :)
 
Last edited:

Rinoceros

Senior Member
Jul 8, 2008
368
165
I just downloaded my new app linked http://d-h.st/plb myself (7 downloads in first 2 hours now), and it installs fine on my One M7, and matches bit for bit the 1.0 version installed on my test phones.

So you're on stock based InsertCoin ROM ?

As long as it's Android 4.4 KitKat (API Level: 19), it SHOULD parse and install OK.
Aha, here might be my problem. My InsertCoin is still the good old JellyBean 4.3 (I am happy with this version and had nearly no problems and all the stuff is working on this one. So if it ain't broke; don't fix it ;))
The binaries are for ARM devices only (ie 99+% of Android devices). Intel x86 or MIPs can't work (at present.)

I can't think of any other reason it won't parse, unless your copy is corrupted. This is the MD5 I get:

Code:
md5sum ~/Downloads/av-release.apk

2c8328e8cbe1f585f3b1634e36200c8f  /home/mike/Downloads/av-release.apk
I'm happy to hear anyone else's stories of success or failure, but I'll need a good 7 hours of sleep first.
Got the same MD5: 2C8328E8CBE1F585F3B1634E36200C8F
I am confused or it doesn't work on 4.3

Sleep well!
 
Last edited:

pilgrim011

Senior Member
May 3, 2008
1,639
456
Belgrade
www.tvojsajt.com
Thanks for the effort, but it ain't working on i9100, cm 11/kk 4.4.2. Tried to increase volume a little (level was about 3, but as you know, first written value is 5), there was a very strange noise as I tried to.increase volume via volume buttons while listening music via headphones. It was a crackling noise, looked to me like the phone is going to get damaged, so I removed HAL and uninstalled your app.
 

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,826
4,142
Ottawa/Gatineau, Canada
Aha, here might be my problem. My InsertCoin is still the good old JellyBean 4.3 (I am happy with this version and had nearly no problems and all the stuff is working on this one. So if it ain't broke; don't fix it ;))
Got the same MD5: 2C8328E8CBE1F585F3B1634E36200C8F
I am confused or it doesn't work on 4.3

Sleep well!

:)

Here's a v1.0.2 test release that will install on Android 2.2+: http://d-h.st/QfV
 

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,826
4,142
Ottawa/Gatineau, Canada
Does it work on Android below 4.4?

It may. Here's a 2.2+ test release: http://d-h.st/QfV

Chances are lower the lower the Android version. I'd recommend 4.1+, but it may work on some Android 4.0 as well. Android 2.3 GB and older used a "legacy HAL API" which won't work.

At this time it's a "bleading edge" release, and most people comfortable with that have been running 4.4 the last 6 months, I'd think.
 
Last edited:

mikereidis

Inactive Recognized Developer
Jan 28, 2011
7,826
4,142
Ottawa/Gatineau, Canada
Thanks for the effort, but it ain't working on i9100, cm 11/kk 4.4.2. Tried to increase volume a little (level was about 3, but as you know, first written value is 5), there was a very strange noise as I tried to.increase volume via volume buttons while listening music via headphones. It was a crackling noise, looked to me like the phone is going to get damaged, so I removed HAL and uninstalled your app.

It sounds like it was working then, as it does for me on my 9100 with CM11.

In many circumstances audio amplitude will already be maxed out, and trying to increase volume will only result in the automatic gain control kicking in with a different value many times per second, thus leading to distortion and other audio "artifacts".

This solution is more helpful when, for some reason, the audio source material doesn't use the full 16 bits of amplitude. If the VU indicators in the app are showing peaks around 80-90% of the screen width, when the normal volume control is maxed, then amplitude is probably above 16,000 and could be near the absolute peak around 32,000.

For example, some audio may have been recorded that only peaks around 4,000 - 8,000, and for this, and amp factor of 4 may be useful. Another possible solution for this scenario is to enable Compression in DSP Manager or whatever. As with everything, this has pros and cons.

In many circumstances, when possible, it's better to raise analog gain, like Voodoo sound does on the Galaxy S GT-I9000. I'm going to look into this, but this sort of solution is very audio chip dependent.
 
  • Like
Reactions: pilgrim011

Top Liked Posts

  • There are no posts matching your filters.
  • 28
    Thread is under construction. :)
    WARNING: There have been 3 reports so far of failure to boot after installing the Shim HAL. This sort of problem should be assumed possible at this early "Alpha level research project" phase.

    Please don't install if you have stock recovery or don't know what recovery is.

    Please don't install if you are nervous. Wait a while for the bugs to get worked out and info compiled.

    Don't install if not confident in your technical skills.

    Don't install if you might freak out if your phone gets disabled for a little while.

    For bootloops or to fix or remove: http://forum.xda-developers.com/showpost.php?p=52931431&postcount=67

    Post #2 has download links and instructions: http://forum.xda-developers.com/showpost.php?p=52765309&postcount=2


    Since interest has ramped up quickly, I've published a 99 cent "donate" version on Play: https://play.google.com/store/apps/details?id=fm.a2d.av (Wait until the $200 placeholder price disappears, LOL.)

    I'm not sure "donate" is the right word, but it's the exact same app I'm distributing and will continue to distribute for free (for at least X months to a year ??), so nobody is under any obligation to buy to get the app. Updates will be automatic via Play though.

    ============================================================
    AudioTricks / VolumeTricks is a new kind of "audio mod" that is HAL Shim based.

    At present, it can raise or lower output volume and microphone input gains digitally.

    Only works on ICS Android 4.0.3 and later. AOSP ROMs such as CM11 or other KitKat very much preferred. Many stock ROMs 4.1-4.3, won't work, especially HTC.

    Post 2 has download link and instructions.

    Disclaimer: Please understand that this is the first public release of this app. Although I endeavour to make my apps as safe as possible, one never knows whether or not some silly bug or unusual interaction might pop a speaker, headset or whatever. I have over 20 devices that I use for testing my apps and I try to "torture test" as much as possible. So if something goes pop, I'll be very sorry and do everything I can to analyze and fix any problems. If you're "not sure", just wait and more adventurous people will do the early testing needed to help ensure nothing breaks.

    By it's very nature, any app that can boost volume creates risk for audio output devices as well as your ears.


    For those who know my Spirit FM apps, this is a bit of a move for me. Spirit1 and Spirit2 both are alive and well, but the future of FM radio on Android seems to be dimming the last few years. I'll be splitting my time between apps based on the support I get.

    Making this HAL Shim based provides some advantages and disadvantages over other methods of changing volume or gain.

    Advantages include:
    - Audio modification even for apps, games, etc. that use the low level Android NDK OpenSL ES API.

    Disadvantages:
    - Analog controls, if available, may be better.

    AudioTricks is intended to be my name for a group of small apps, and/or a "master app" that includes the features of them all.

    VolumeTricks is the first such small app to be released, and is focused on output volumes and input gains.

    VolumeTricks may not be limited to the "HAL Shim" approach to audio mods. It may also include ALSA, ALSA UCM, and other methods to manipulate audio.


    At this time, the app is free, but Copyright Me. I'll likely maintain a free version for some time, but I gotta eat too so there will be a paid version on Play when it seems ready.

    At this time, this app has been tested mostly on CM11 and a few other AOSP ROMs. Many stock ROMs won't work, especially HTC.

    The app is currently set to only work on Android KitKat 4.03+.

    I haven't tested ART much yet, mostly Dalvik, but it's working OK on my One M7 w/ ART. Shouldn't be too hard to fix any ART issues.

    So what the heck is a "HAL Shim" ??

    Android uses HALs (Hardware Adaptation Libraries) as an API between Google's Android code and the phone OEMs hardware specific code. Android Audio has at least 2 HALs, one for "Policy" (selects outputs, inputs and some other stuff) and one for the audio transfers. The HAL Shim in this app works with the latter "Primary" HAL for audio transfers.

    A SHIM is a component that sits between 2 other components and pretends to be the higher component as well as the lower component. Hierarchy:

    Android AudioFlinger
    ------------------------
    HAL Shim
    ------------------------
    Primary Audio HAL

    So, the HAL shim pretends to be an audio HAL to Android's AudioFlinger. AND it pretends to be Android AudioFlinger to the Primary Audio HAL.

    The HAL shim acts as an intermediary. It can pass everything back and forth unmodified which makes it invisible. Or it can modify anything passing between, including the audio data.

    Isn't there a better way to do this ? No, I don't think so. I don't want to be modifying a bunch of HALs on thousands of ROMs. I also don't want to be modifying AudioFlinger on those same hordes of ROMs.

    What else can be done with the HAL Shim concept, besides "Volume Tricks".

    I think some of these may be feasible:

    - Recording all inputs and/or outputs. Maybe even both sides of phone calls.

    - Analyze, Visualize, Equalize, Effects-ize all or many inputs and outputs.

    - Bypass DRM. :)

    - Maybe a method to modify (eg. encrypt / decrypt) phone call audio, inbound and outbound; possibly via pretending to be a BT headset....


    Note that, at present, the HAL shim only works with the "Primary Audio Interface". Small-ish mods could do the same for HDMI, A2DP / BT, USB Audio, "Remote Submix" and whatever new audio devices Google defines.
    6
    Post 2 download link and instructions.

    If a boot loop would ruin your day, please see warnings at top of post #1 and don't install this app until more mature.

    Disclaimer: Please understand that this is the first public release of this app. Although I endeavour to make my apps as safe as possible, one never knows whether or not some silly bug or unusual interaction might pop a speaker, headset or whatever. I have over 20 devices that I use for testing my apps and I try to "torture test" as much as possible. So if something goes pop, I'll be very sorry and do everything I can to analyze and fix any problems. If you're "not sure", just wait and more adventurous people will do the early testing needed to help ensure nothing breaks.

    By it's very nature, any app that can boost volume creates risk for audio output devices as well as your ears.

    Android seems to have a ridiculously / hilariously complex audio system... LOL.

    v140530: http://d-h.st/2lc#.U4hLA3KBugY

    Fixes a LOT of issues, especially SU / mount issues with stock restrictive SELinux like Samsung stock 4.2+.

    As always, Press Update/OK to update Shim HAL each new release.
    - SU / root fixes, especially for SELinux Samsung 4.2+.
    - Fine control removed.
    - Coarse control range changed from -60 to +60 db ; now 0 to +36 db. Maybe I'm the only one w/ a need for gain reduction below 1.0 or 0 dB.
    - Many other fixes.

    Version av-140526:
    - Fix the /system/addon.d/ ROM update backup/restore script used during ROM updates.

    Version av-140525:
    - Automatic gain reduction is now sticky, so reduces distortion when maxed. Touch sliders to reset.
    - Numbers for VU.
    - After amplification VU display.
    - Sliders caiibrated in dB.


    May not work on stock ROMs, especially older Android versions and HTC stock ROMs.
    Starting this app for the first time should request root and prompt to install the HAL Shim and an addon.d backup/restore script to allow it to survive ROM updates.

    After the Shim is installed, the "system_server" is killed in order to activate the Shim. Sometimes it may be better to completely reboot the phone, especially with effects, visualizers and player apps running at install time.

    Once the app and Shim are installed, the app shows a "Remove" button that removes the Shim, should it be causing you problems or you just don't want/need it. The button will change to "Update" with newer versions of the app/Shim.

    Sometimes, like on ROMs with old Legacy HALs, state detection won't work and the button will only offer to Install with no way to remove. As of v1.0.3 go to the 2nd tab (swipe from right to left) and there is a permanent Remove button.

    If you remove the app without removing the Shim, the shim will remain, but should be mostly dormant. The easiest way to remove the Shim would be to reinstall the app and select the Remove button.

    To manually remove the Shim and addon.d script, something like this should work from a connected PC with adb shell:

    Code:
    adb shell
    su
    mount -o remount,rw /system
    ll /system/lib/hw/audio.primary.*.so
    # !!!! Note the name of the HAL, like audio.primary.msm8960.so and use this name in next line. (If only audio.primary.default.so exists, use that.)
    
    
    mv  /system/lib/hw/audio.primary.orig.so /system/lib/hw/audio.primary.msm8960.so
    rm /system/addon.d/99-audiotricks.sh
    mount -o remount,ro /system
    reboot
    Using the app:

    See post #3 for usage instructions.
    5
    Usage:

    If a boot loop would ruin your day, please see warnings at top of post #1 and don't install this app until more mature.

    Disclaimer: Please understand that this is the first public release of this app. Although I endeavour to make my apps as safe as possible, one never knows whether or not some silly bug or unusual interaction might pop a speaker, headset or whatever. I have over 20 devices that I use for testing my apps and I try to "torture test" as much as possible. So if something goes pop, I'll be very sorry and do everything I can to analyze and fix any problems. If you're "not sure", just wait and more adventurous people will do the early testing needed to help ensure nothing breaks.

    By it's very nature, any app that can boost volume creates risk for audio output devices as well as your ears.

    To select output volume or input gain, swipe left or right or use the tabs. The primary/left screen is for output volume.

    Set the enable switch to ON to enable volume/gain adjustments.

    The Left and Right indicators are logarithmic/DB audio level indicators, updated every 0.1 seconds with the peak audio level. These show the signal level before amplification. If they are VERY near the full width of the screen, there is little amplification that can be reasonably done. (But 80-90% leaves some room, given the exponential nature.)

    For no boost, IE an amplification factor of 1.0, the Coarse and Fine controls should both be set to 0 at centre.

    Setting Fine all the way right to +6 dB doubles audio power, setting to -6 dB halves audio power.

    Setting Coarse to +30 dB creates an amp factor of 32, assuming Fine is set to 0. Setting -30 dB is about 0.03.

    Note that an amp factor of 32 is very high, unless you are dealing with very low input signals.

    The Shim detects when the signal will overload, and reduces the amp factor as needed to prevent overload/distortion. To raise it again, use the UI to reset.

    There are some "streams" for which amplification will not work. I will support as many stream flags (such as Fast) as I can; remains to be seen; this is still kind of a "research project" at this stage.

    At present, all streams are amplified the same amount. Per stream or stream type amp factors will be supported.
    4
    New version 140525: http://d-h.st/rJi

    Also on Play as a 99 center: https://play.google.com/store/apps/details?id=fm.a2d.av (Forgot to enable all countries earlier, thanks for your support... :) )

    Press Update/OK for new features if already installed, otherwise Install/OK.

    The enhancements:

    - Automatic gain reduction is now sticky, so reduces distortion when maxed. Touch sliders to reset.

    - Numbers for VU.

    - After amplification VU display.

    - Sliders calibrated in dB.
    4
    I am also a little bit unhappy about the removed gain reduction, like Zeljko1234.
    So he is not the only person who is missing it. If you find the time, please add it back into the app :fingers-crossed:
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone