[Release Candidate] Dolby Atmos™

Search This thread

guitardedhero

Senior Member
Jan 17, 2012
7,941
24,094
42
Little Rock
Release Candidates for 9.0+ begin on page 458 and on Telegram.

The troubleshooting guide for Release Candidates is in this post.

updated 20200206



YouTube™ Link!
"Listen to the Dolby Atmos™ Difference!"




Dolby Atmos™
for
Android Oreo

LExesia.jpg


Description:
  • Dolby Atmos™ Digital Signal Processer with effects and Graphic User Interface ported from the latest ZTE™ Axon 7 Android Oreo firmware intended for all Android devices on Android Oreo.

  • Dolby Atmos™ sound effects applied to media audio output supporting various media players.

  • Flexible custom recovery installation archive supporting Magisk and SuperSU installations as well as existing audio mod installations - fully supporting Enforcing SELinux Mode:

    • Multiple installation scenarios available using the included arise_parameters.prop that is automatically copied to /sdcard if not already there. When edited by the user in this /sdcard location, arise_parameters.prop can:

      • Instruct an installation directly to /system if a Magisk user prefers a /system installation over the Magisk module installation.

      • Instruct a system-less module installation using /su if a SuperSU user with the system-less SuperSU installation prefers a module installation for a variety of reasons such as insufficient /system space to accommodate a /system installation or the convenience of a persistent installation unaffected by rom updates.

  • An independent build maintained by @[B]Zackptg5[/B] fully integrated with Unity:

    • Active accommodation of existing and future Magisk modules relevant to audio modification.

    • Flashing the installation archive over a current installation results with an uninstallation of the Dolby Atmos™ Magisk module.

    • @[B]Zackptg5[/B] explains the nuances a bit further here.


Details:
  • A minimum of SDK 26 (Android 8.0) is required for installation to begin, else Exit 1 will abort the recovery installation activity.

  • A root solution or a capable kernel is required in order to automate the execution of scripts during boot to allow the appropriate sepolicy rules necessary for Dolby Atmos™ functionality while in Enforcing SELinux mode.

  • Third party audio effects and DSP's such as ViPER4Android (<--
    link to @[B]docnok63[/B]'s solution :highfive:) may require some extra effort to allow processing due to Dolby Atmos' dependency on its output_session_processing music effect.


Instructions:
  • Performing a backup of the /system partition in recovery is encouraged for users receiving a /system installation:


    • TWRP > Backup > Check System > Edit name, if desired > Swipe to perform backup operation

  • Confirm device requirements are met and installation results are acceptable.

  • Confirm an escape route is available in the event of unsuccessful device boot or unsatisfactory experience.

  • Confirm successful download and location of downloaded archive(s).

  • Boot to recovery > Install > *.zip > Swipe to perform installation operation > Advanced > Copy Log > Reboot

  • Updating procedure is no different unless specified otherwise.


Additional Information:


  • Unsuccessful device boot:

    • If experiencing a bootloop...

      ! ! DO NOT GIVE UP ! !

    • Wait until at least 60 seconds have passed, hold down the device's Power button until a reboot is initiated... and then give up if a successful boot fails to occur.


  • Escape routes for unsuccessful/unsatisfactory installations:

    • Magisk Module Installation:

      • If booted, navigate to /magisk using a capable file manager application and delete /dolbyatmos before rebooting the device. If experiencing an unsuccessful device boot, boot to recovery using the appropriate hardware button combination for the device, install the Magisk Recovery Management archive attached below, and follow the given instructions to delete the Magisk module (/magisk/dolbyatmos).

    • SuperSU /system installations:

      • Restore Backup in recovery if available: TWRP > Restore > appropriate backup folder > Check System > Swipe to perform Restore operation

      • Install the currently installed rom zip in recovery without any partition wipes or install a different rom zip according to the rom developer's installation instructions.


  • Reporting bugs/failures:

    • An acceptable report will include the /sdcard/recovery.log received after the installation session before booting from recovery even if the recovery session appeared to be free from any error. An acceptable report will include relevant information/details to equip me to efficiently address the report.


  • Auditing:

    • Assessing the installation is encouraged for all users and is especially helpful when the collected information is included in reports of less than perfect experiences.

    • Dumpsys:

      • The dumpsys utility in Android can be a very valuable troubleshooting tool, especially audio output processing related issues, when targeting the audioflinger service. Recommended terminal applications include Terminal Emulator for Android and Termux.

      • In Android Terminal:
        Code:
        su
        dumpsys media.audio_flinger
        or
        Code:
        su -c dumpsys media.audio_flinger

      • The output generated upon tapping the Enter key is the information of interest and can be copied from the Terminal and pasted with a report, if necessary.

      • This output includes the list of successfully configured audio sound effect libraries and any successfully created effect-chains from one or more of those libraries when combined with the successful installation of an appropriate apk, Dolby Atmos being one of many examples.

    • Logging:

      • The log utility in Android is another valuable tool for many various purposes, including troubleshooting. This utility is most convenient when used with a logging application such as Matlog in order to utilize features such as word filtering and syntax highlighting among others.

      • Using the logging application's search feature, the user can filter the displayed log output using words or characters relevant to this Dolby Atmos™ port such as: dolby, dax, dlb, dseffect and include that relevant log output with reports, if necessary.


  • Testing:

    • The possibility of my experience being different from others' experiences is always present!

    • Those meeting the installation requirements may certainly test against various aspects stated as facts within this OP such as incompatibility with other audio effects, requirement of Permissive SELinux Mode :highfive:, etc.


  • Vulnerabilities:

    • The installation, as with any device content, is not immune to impact from existing and future installations of custom content. This custom content may remove or modify necessary content, or introduce conflicting content preventing Dolby Atmos™ from functioning as intended by this mod's installation. Security measures can block these scenarios from occuring but will typically be implemented only after the discovery of such cases of "breaking" Dolby Atmos™ functionality, in which case, the relevant vulnerability will be omitted from this particular section.

    • Vulnerability: --

      • Scenario: --


Downloads:


Changelog:

  • Code:
    [B]Standard 20180219 -[/B]
    
    - Expiration met for the Dolby Atmos
    Demo Video component after confirmation
    of its lack for volume support indicated a
    native "bug" and not a porting shortcoming.
    
    - A reduction of 67MB, uncompressed, now
    totaling 15.49MB uncompressed, without
    the Dolby Atmos Demo Video component.
    
    - Abandonment of the recently introduced
    libsurround_proc.so library (suspect of recent
    audio unpleasantness) from the Nokia
    6 Official Oreo build that was paired with
    that same firmware's Dolby Surround Sound
    Settings' menu as an additional apk that is
    currently still included and still in its trial
    period.
    
    - SUBSTANTIAL adjustments, additions, and
    improvements to every script - installation
    and boot scripts, the most comprehensive
    update for this shell component thus far.
    
    
    
    
    [B]Unity 20180220 -[/B]
    
    - Added the debloated apk.

    Code:
    [B]Standard 20180218 -[/B]
    
    - Updated installation script and
    functions with Magisk (1540).
    
    - Adjustments to boot scripts.
    
    - Added surround processing library
    from the native CustDolbySettings.apk
    firmware (Nokia 6 Official Oreo).
    
    - Temporary icon change for
    CustDolbySettings.apk.
    
    
    
    [B]Unity 20180218 -[/B]
    
    - Reworked bootmode support for devices
    with separate vendor partitions, added
    dolby surround app.
    
    
    
    [B]Standard 20180216 -[/B]
    
    - Fixed a critical error in libswvlldp.so's
    effect configuration in the XML
    configuration.
    
    - Several adjustments to boot scripts.
    
    
    
    [B]Unity 20180216 -[/B]
    
    - Fix issues users with devices that use
    audio_effect.xml were having. Thanks to
    [user=7073442]@manhong2112[/user] for the patience
    and troubleshooting.
    
    
    
    [B]Standard 20180215 -[/B]
    
    - Added new CustDolbySettings.apk
    from the latest Nokia 6 official Oreo
    firmware (untested/experimental).
    
    - Slight change in post-fs-data.sh
    boot script.
    
    
    
    [B]Standard 20180214 -[/B]
    
    - Correction to Pixel 2/2 XL detection.
    
    
    
    [B]Unity 20180214 -[/B]
    
    - Adjustments to unique audio effects
    configuration preparation.
    
    
    
    [B]20180214 -[/B]
    
    - Minor corrections and enhancements.
    
    
    
    [B]20180213-2 -[/B]
    
    - Adjustment to SuperSU /su
    module installation.
    
    
    
    [B]20180213-1 -[/B]
    
    - Completed the incomplete service.sh
    script mistakenly thought as completed.
    
    
    
    [B]20180213 -[/B]
    
    - Extensive reworking of boot scripts
    aimed at device boot success and
    debloat.
    
    
    
    [B]20180212-1 -[/B]
    
    - Samsung compatibility attempt
    via the disabling of the SoundAlive
    music output_session_processing
    effect.
    
    
    
    [B]20180212 -[/B]
    
    - Corrected library_migration function.
    
    
    
    [B]20180211-1 -[/B]
    
    - Testing new library migration
    function.
    
    
    
    [B]20180211 -[/B]
    
    - Accommodation for audio_effects.xml
    configurations lacking
    <postprocess></postprocess> section.
    
    - Adjustments to boot scripts focused
    on device boot success.
    
    
    
    [B]20180210 -[/B]
    
    - Resolved accidental omission of
    libstagefright_soft_ddpdec.so.
    
    
    
    [B]20180209-3 -[/B]
    
    - Don't be helpful, be harmless.
    
    
    
    [B]20180209-2 -[/B]
    
    - Corrections and adjustments to
    /system installations.
    
    - Automatic audioserver restoration
    during all system-less installations.
    
    
    
    [B]20180209-1 -[/B]
    
    - Correction to audio_effects.xml
    manipulation.
    
    
    
    [B]20180209 -[/B]
    
    - Correction to typo preventing
    audio_effects.xml manipulation.
    
    
    
    [B]20180208-4 -[/B]
    
    - Minor adjustments and improvements.
    
    
    
    [B]20180208-3 -[/B]
    
    - ...
    
    
    
    [B]20180208-2 -[/B]
    
    - meh.
    
    
    
    [B]20180208-1 -[/B]
    
    - More than enough changes to
    likely introduce new errors.
    
    
    
    [B]20180208 -[/B]
    
    - Script corrections and enhancements.
    
    
    
    [B]20180207-2 -[/B]
    
    - Does it even matter at this.point??
    
    
    
    [B]20180207-1 -[/B]
    
    - Like it even makes a difference...
    
    
    
    [B]20180207 -[/B]
    
    - Various corrections and adjustments.
    
    
    
    [B]20180206-2 -[/B]
    
    - Redundant changelog is redundant.
    
    
    
    [B]20180206-1 -[/B]
    
    - Further error corrections.
    
    
    
    [B]20180206 -[/B]
    
    - Various error corrections.
    
    
    
    [B]20180205-1 -[/B]
    
    - Various error corrections.
    
    
    
    [B]20180205 -[/B]
    
    - Initial release integrating Unity
    installation and scripts courtesy
    of @ahrion and @Zackptg5.
    
    
    
    [B]20180202 -[/B]
    
    - Corrected a critical error recently
    introduced by "reckless thumbing"
    to the audio effects configuration
    operation for /system installations.
    
    - The Magisk binary's --mountimg
    function is once again used for
    mounting the Magisk image volume
    if the standard mount attempt is
    unsuccessful.
    
    - Various enhancements.
    
    
    
    [B]20180201 -[/B]
    
    - Boot scripts completely
    rewritten.
    
    - Bundled Magisk's 1531 binary in
    an attempt to access its functions
    during the recovery session instead
    of the existing binary for certain
    Magisk-specific operations.
    
    - Various corrections and refinements.
    
    
    
    [B]20180131-1 -[/B]
    
    - Minor adjustments.
    
    
    
    [B]20180131 -[/B]
    
    - Numerous corrections and refinements.
    
    - Enforcing SELinux Mode fully supported.
    
    - No longer affects SELinux mode in any way.
    
    
    
    [B]20180129-1 -[/B]
    
    - Minor corrections.
    
    
    
    [B]20180129 -[/B]
    
    - Numerous changes/improvements
    to all scripts.
    
    
    
    [B]20180127 -[/B]
    
    - Numerous changes/improvements
    across the entire archive.
    
    
    
    [B]20180126-6 -[/B]
    
    - Slight adjustment to scripts.
    
    
    
    [B]20180126-5 -[/B]
    
    - Boot scripts restructuring and
    enhancements targeting successful
    device boot and additional
    functionality.[
    
    
    
    [B]20180126-4 -[/B]
    
    - Does it even matter at this point??
    
    
    
    [B]20180126-3 -[/B]
    
    - Reverted the recent option
    introducing unsuccessful results.
    
    
    
    [B]20180126-2 -[/B]
    
    - Redundant changelog is
    redundant...
    
    
    
    [B]20180126-1 -[/B]
    
    - Corrected, yet another, error
    introduced with the latest
    /sdcard/arise_parameters.prop
    option that would only affect those
    installations utilizing this option.
    
    
    
    [B]20180126 -[/B]
    
    - Various corrections of errors
    introduced with the changes to
    accommodate the recently added
    /sdcard/arise_parameters.prop
    option.
    
    
    
    [B]20180125-3 -[/B]
    
    - Corrected duplicate
    output_session_processing entry
    for module installations.
    
    
    
    [B]20180125-2 -[/B]
    
    - Added option to install custom
    dolbyserver instead of native
    audioserver for those unable to
    successfully boot with the native Axon 7
    Oreo /bin/audioserver. (Refer to
    arise_parameters.prop for full details)
    
    - Updated arise_parameters.prop.
    
    
    
    [B]20180125-1 -[/B]
    
    - Updated apk internal filesystem
    and information (Does NOT affect
    installation success-rate).
    
    
    
    [B]20180125 -[/B]
    
    - Adjustment to Xposed detection.
    
    
    
    [B]20180124-1 -[/B]
    
    - Unique atmos library and effect
    UUID to accommodate native Dolby
    effects.
    
    
    
    [B]20180124 -[/B]
    
    - Adjustment to Magisk variables with
    existing audio effects configurations.
    
    
    
    [B]20180122-2 -[/B]
    
    - Mount magisk.img with Magisk's
    util_functions.sh if initial mount
    attempt was unsuccessful.
    
    
    
    [B]20180122-1 -[/B]
    
    - Correction to audio effects
    configuration manipulation.
    
    
    
    [B]20180122 -[/B]
    
    - Correction of introduced errors.
    
    
    
    [B]20180121 -[/B]
    
    - Extensive adjustments to installation script.
    
    - Addressed Pixel, Samsung, /su module, and
    general installations.
    
    - Removed previously bundled music player.
    
    - Beginning of DolbyAtmos.apk customization
    and experimentation.
    
    
    
    [B]20180120-1 -[/B]
    
    - Conservative shift of boot scripts.
    
    
    
    [B]20180120 -[/B]
    
    - Various and discriminate installation
    and boot script adjustments.
    
    
    
    [B]20180119-3 -[/B]
    
    - Third time's the charm??
    
    
    
    [B]20180119-2 -[/B]
    
    - Yet another correction to boot script.
    
    
    
    [B]20180119-1 -[/B]
    
    - Correction to boot script.
    
    
    
    [B]20180119 -[/B]
    
    - Extensive adjustments to systemless
    module creation and boot script.
    
    - Removed build properties.
    
    - Default installations intended to
    accommodate HTC devices.
    
    
    
    [B]20180117-1 -[/B]
    
    - Correction to
    /odm/etc/audio_policy_configuration.xml
    symlink.
    
    
    
    [B]20180117 -[/B]
    
    - Various script corrections.
    
    - Recovery Management zip now supports
    SuperSU's /data/su.img and is now included
    in the Dolby Atmos zip for convenient access.
    
    
    
    [B]20180114-4 -[/B]
    
    - More script corrections.
    
    
    
    [B]20180114-3 -[/B]
    
    - Script error correction.
    
    
    
    [B]20180114-2 -[/B]
    
    - Further script changes.
    
    
    
    [B]20180114-1 -[/B]
    
    - Adjustment to supported .prop detection.
    
    - Removed experimental /*_contexts patches.
    
    - Various script changes.
    
    
    
    [B]20180114 -[/B]
    
    - Corrected Magisk module installation.
    
    - Added systemless installation option
    for SuperSU users (/su/dolbyatmos).
    
    - Updated /sdcard/arise_parameters.prop
    (will overwrite the no longer supported .prop).
    
    - Various script changes.
    
    
    
    [B]20180112-2 -[/B]
    
    - Added missing setprop section
    to script in /system installations.
    
    
    
    [B]20180112-1 -[/B]
    
    - Added two library dependencies
    to accommodate devices without
    either library. (@Zackptg5)
    
    - Adjustment to vendor partition
    audio effects configuration
    detection. (@Zackptg5)
    
    - Added Xposed alert describing
    potential conflict and potential resolution
    of Dolby Atmos functionality. (@MMWolverine)
    
    - Added /system free space detection,
    resolution methods, and installation exit
    for /system installations destined to fail due
    to insufficient space to accommodate the
    Dolby Atmos system.
    
    Massive shout out to the many users
    responsible for the current success rate
    enjoyed by this Dolby Atmos Oreo solution!
    
    :highfive:
    
    
    
    [B]20180112 -[/B]
    
    - Updated Magisk module.prop to 1530
    
    
    
    [B]Initial Release -[/B]
    -


Credits:
 

Attachments

  • Magisk+SuperSU_RecoveryManagement.zip
    1.2 KB · Views: 64,340
  • Screenshot_20180112-005423.jpg
    Screenshot_20180112-005423.jpg
    208.7 KB · Views: 108,167
  • Screenshot_20180112-005445.jpg
    Screenshot_20180112-005445.jpg
    193 KB · Views: 105,825
  • Screenshot_20180112-005504.jpg
    Screenshot_20180112-005504.jpg
    124.7 KB · Views: 105,136
  • Screenshot_20180112-005508.jpg
    Screenshot_20180112-005508.jpg
    111 KB · Views: 96,199
  • Screenshot_20180112-005513.jpg
    Screenshot_20180112-005513.jpg
    117.3 KB · Views: 94,030
  • Screenshot_20180112-005530.jpg
    Screenshot_20180112-005530.jpg
    118.2 KB · Views: 92,454
  • DolbyAtmos-RC1-ACDB.zip
    5.8 MB · Views: 7,886
  • ACDB-0.48.zip
    8.7 KB · Views: 3,819
Last edited:

guitardedhero

Senior Member
Jan 17, 2012
7,941
24,094
42
Little Rock
Android Oreo Database

/system/bin/audioserver <-- Drive link


  • Purpose and Contribution:

    • Introduced with Android Nougat, audioserver appears as its own binary after years of being a component of /system/bin/mediaserver in all Android firmware.
    • Introduced with Android Nougat, vendor provided Dolby Atmos™ software audio solutions appear with a new media.dolby_memoryservice that is compiled into /system/bin/audioserver as well as a unique system library typically appearing as /system/vendor/lib/libdlbmemoryservice.so.
    • These new components are crucial to a functional Dolby Atmos software solution and there is currently no known way of achieving any amount of success without them.
    • While porting the very first Nougat Dolby Atmos system available, courtesy of ZTE™ Axon 7’s initial Nougat firmware image, I discovered this implementation and a functional port was finally available.
    • However, using a Nexus 6 at the time, I was able to evade nearly all bootloop scenarios with much of what would cause a bootloop scenario for others.
    • It took no time to determine that this new media.dolby_memoryservice component was going to be a challenge in achieving a viable Dolby Atmos Nougat port.
    • To begin, results were determined: Successful device boot or Unsuccessful device boot.
    • Stock firmware seemed to fare much better than custom firmware, even for just a single device.
    • A pattern began to emerge for me when focusing only on the audioserver binary: Stock firmware had an audioserver file size range (21.50KB-21.53KB) and Custom firmware had an audioserver file size range of its own (21.58KB-21.60KB).
    • Not a significant difference, unless you were looking for a difference.
    • This assessment presented an effective predictibility of an installation scenario's success and failure with nearly 100% accuracy (nearly only because every possible scenario is not documented).
    • This audioserver database is intended for those that have determined a single scenario as successful or as unsuccessful due to the native audioserver binary in their device’s rom being overwritten or symlinked over with the audioserver native to the ZTE™ Axon 7 Oreo firmware AND NOT A RESULT OF ANY OTHER FILE OR SCRIPT OPERATION!!
    • Simply, those with success have the easier path requiring nearly no effort other than uploading the native audioserver from their firmware along with the firmware build.prop to the WIN audioserver folder.
    • Those contributing to the FAIL audioserver folder with the native audioserver along with the firmware build.prop will only be able to do so after some personal testing to ensure the audioserver switching is the exclusive cause of an unsuccessful device boot after flashing the Dolby Atmos installation archive in recovery.

:good:
 
Last edited:

guitardedhero

Senior Member
Jan 17, 2012
7,941
24,094
42
Little Rock
I'm jealous of my girlfriend's Pixel XL :D I'm desperately trying to get this going on Pixel 2. It Installs after 5 minutes of bootlooping but it freezes up my phone and becomes unresponsive

Sent from my Google Pixel 2 using XDA Labs

Me too, still trying lol. :good:

xpose not allowing to install
magisk showing its not magisk module

The detection of Xposed does not prevent installation, only alerting the user to a possible conflict. The installation is not inhibited in any way with the detection of Xposed. :good:
 

yyz71

Senior Member
Me too, still trying lol. :good:



The detection of Xposed does not prevent installation, only alerting the user to a possible conflict. The installation is not inhibited in any way with the detection of Xposed. :good:

Thank you I won't give up on this ?

Sent from my Google Pixel 2 using XDA Labs
 

Miustone

Senior Member
Jul 23, 2012
3,355
6,184
30
Google Pixel 7 Pro
Thanks for stopping by, "old" friend! I've noticed you've been staying busy as well! :highfive:

I really had to! Always keeping My Eyes open for cool new Android Stuff like that here. :good:
Well, i got stuck on the Dolby Atmos Print with TWRP 3.2.1.0 but i will give it a try again after cleaning and updating up My Device. I was about to Port over the latest Sony Oreo Enhancements but there are a lot of crazy changes compared to Nougat and older Firmwares. Given up after some Hours of researching and forking the XZ Premium Oreo Firmwares. Dolby Atmos Oreo looks also really promising, hope i get at least that running on My Axon...

Think i've to PM You for more, don't want to go to OT here :D
 

guitardedhero

Senior Member
Jan 17, 2012
7,941
24,094
42
Little Rock
I really had to! Always keeping My Eyes open for cool new Android Stuff like that here. :good:
Well, i got stuck on the Dolby Atmos Print with TWRP 3.2.1.0 but i will give it a try again after cleaning and updating up My Device. I was about to Port over the latest Sony Oreo Enhancements but there are a lot of crazy changes compared to Nougat and older Firmwares. Given up after some Hours of researching and forking the XZ Premium Oreo Firmwares. Dolby Atmos Oreo looks also really promising, hope i get at least that running on My Axon...

Think i've to PM You for more, don't want to go to OT here :D

That's been the same scenario for a very few, but I cannot recall seeing a recovery log for such a scenario.

Feel free to personally hit me up any time and for any reason. :good:
 
  • Like
Reactions: Miustone

ainurrofiq

Senior Member
Jan 6, 2015
438
110
It's working , latest version, Oreo 8.1 , cardinal aosp , redmi 3 (Ido)
Thank you :victory:
 

Attachments

  • Screenshot_Dolby_Atmos__20180126-062736.png
    Screenshot_Dolby_Atmos__20180126-062736.png
    74 KB · Views: 3,249
  • Like
Reactions: guitardedhero

guitardedhero

Senior Member
Jan 17, 2012
7,941
24,094
42
Little Rock
Changelog:

  • Code:
    [B]20180125-2 -[/B]
    
    - Added option to install custom
    dolbyserver instead of native
    audioserver for those unable to
    successfully boot with the native Axon 7
    Oreo /bin/audioserver. [B](Refer to
    arise_parameters.prop for full details)[/B]
    
    - Updated arise_parameters.prop.
 

ayaj007

Senior Member
Sep 18, 2014
139
36
installation via recovery is freezing @ dolby atmos screen
I am on pixel experience rom redmi note 4
 

Top Liked Posts

  • There are no posts matching your filters.
  • 231
    Release Candidates for 9.0+ begin on page 458 and on Telegram.

    The troubleshooting guide for Release Candidates is in this post.

    updated 20200206



    YouTube™ Link!
    "Listen to the Dolby Atmos™ Difference!"




    Dolby Atmos™
    for
    Android Oreo

    LExesia.jpg


    Description:
    • Dolby Atmos™ Digital Signal Processer with effects and Graphic User Interface ported from the latest ZTE™ Axon 7 Android Oreo firmware intended for all Android devices on Android Oreo.

    • Dolby Atmos™ sound effects applied to media audio output supporting various media players.

    • Flexible custom recovery installation archive supporting Magisk and SuperSU installations as well as existing audio mod installations - fully supporting Enforcing SELinux Mode:

      • Multiple installation scenarios available using the included arise_parameters.prop that is automatically copied to /sdcard if not already there. When edited by the user in this /sdcard location, arise_parameters.prop can:

        • Instruct an installation directly to /system if a Magisk user prefers a /system installation over the Magisk module installation.

        • Instruct a system-less module installation using /su if a SuperSU user with the system-less SuperSU installation prefers a module installation for a variety of reasons such as insufficient /system space to accommodate a /system installation or the convenience of a persistent installation unaffected by rom updates.

    • An independent build maintained by @[B]Zackptg5[/B] fully integrated with Unity:

      • Active accommodation of existing and future Magisk modules relevant to audio modification.

      • Flashing the installation archive over a current installation results with an uninstallation of the Dolby Atmos™ Magisk module.

      • @[B]Zackptg5[/B] explains the nuances a bit further here.


    Details:
    • A minimum of SDK 26 (Android 8.0) is required for installation to begin, else Exit 1 will abort the recovery installation activity.

    • A root solution or a capable kernel is required in order to automate the execution of scripts during boot to allow the appropriate sepolicy rules necessary for Dolby Atmos™ functionality while in Enforcing SELinux mode.

    • Third party audio effects and DSP's such as ViPER4Android (<--
      link to @[B]docnok63[/B]'s solution :highfive:) may require some extra effort to allow processing due to Dolby Atmos' dependency on its output_session_processing music effect.


    Instructions:
    • Performing a backup of the /system partition in recovery is encouraged for users receiving a /system installation:


      • TWRP > Backup > Check System > Edit name, if desired > Swipe to perform backup operation

    • Confirm device requirements are met and installation results are acceptable.

    • Confirm an escape route is available in the event of unsuccessful device boot or unsatisfactory experience.

    • Confirm successful download and location of downloaded archive(s).

    • Boot to recovery > Install > *.zip > Swipe to perform installation operation > Advanced > Copy Log > Reboot

    • Updating procedure is no different unless specified otherwise.


    Additional Information:


    • Unsuccessful device boot:

      • If experiencing a bootloop...

        ! ! DO NOT GIVE UP ! !

      • Wait until at least 60 seconds have passed, hold down the device's Power button until a reboot is initiated... and then give up if a successful boot fails to occur.


    • Escape routes for unsuccessful/unsatisfactory installations:

      • Magisk Module Installation:

        • If booted, navigate to /magisk using a capable file manager application and delete /dolbyatmos before rebooting the device. If experiencing an unsuccessful device boot, boot to recovery using the appropriate hardware button combination for the device, install the Magisk Recovery Management archive attached below, and follow the given instructions to delete the Magisk module (/magisk/dolbyatmos).

      • SuperSU /system installations:

        • Restore Backup in recovery if available: TWRP > Restore > appropriate backup folder > Check System > Swipe to perform Restore operation

        • Install the currently installed rom zip in recovery without any partition wipes or install a different rom zip according to the rom developer's installation instructions.


    • Reporting bugs/failures:

      • An acceptable report will include the /sdcard/recovery.log received after the installation session before booting from recovery even if the recovery session appeared to be free from any error. An acceptable report will include relevant information/details to equip me to efficiently address the report.


    • Auditing:

      • Assessing the installation is encouraged for all users and is especially helpful when the collected information is included in reports of less than perfect experiences.

      • Dumpsys:

        • The dumpsys utility in Android can be a very valuable troubleshooting tool, especially audio output processing related issues, when targeting the audioflinger service. Recommended terminal applications include Terminal Emulator for Android and Termux.

        • In Android Terminal:
          Code:
          su
          dumpsys media.audio_flinger
          or
          Code:
          su -c dumpsys media.audio_flinger

        • The output generated upon tapping the Enter key is the information of interest and can be copied from the Terminal and pasted with a report, if necessary.

        • This output includes the list of successfully configured audio sound effect libraries and any successfully created effect-chains from one or more of those libraries when combined with the successful installation of an appropriate apk, Dolby Atmos being one of many examples.

      • Logging:

        • The log utility in Android is another valuable tool for many various purposes, including troubleshooting. This utility is most convenient when used with a logging application such as Matlog in order to utilize features such as word filtering and syntax highlighting among others.

        • Using the logging application's search feature, the user can filter the displayed log output using words or characters relevant to this Dolby Atmos™ port such as: dolby, dax, dlb, dseffect and include that relevant log output with reports, if necessary.


    • Testing:

      • The possibility of my experience being different from others' experiences is always present!

      • Those meeting the installation requirements may certainly test against various aspects stated as facts within this OP such as incompatibility with other audio effects, requirement of Permissive SELinux Mode :highfive:, etc.


    • Vulnerabilities:

      • The installation, as with any device content, is not immune to impact from existing and future installations of custom content. This custom content may remove or modify necessary content, or introduce conflicting content preventing Dolby Atmos™ from functioning as intended by this mod's installation. Security measures can block these scenarios from occuring but will typically be implemented only after the discovery of such cases of "breaking" Dolby Atmos™ functionality, in which case, the relevant vulnerability will be omitted from this particular section.

      • Vulnerability: --

        • Scenario: --


    Downloads:


    Changelog:

    • Code:
      [B]Standard 20180219 -[/B]
      
      - Expiration met for the Dolby Atmos
      Demo Video component after confirmation
      of its lack for volume support indicated a
      native "bug" and not a porting shortcoming.
      
      - A reduction of 67MB, uncompressed, now
      totaling 15.49MB uncompressed, without
      the Dolby Atmos Demo Video component.
      
      - Abandonment of the recently introduced
      libsurround_proc.so library (suspect of recent
      audio unpleasantness) from the Nokia
      6 Official Oreo build that was paired with
      that same firmware's Dolby Surround Sound
      Settings' menu as an additional apk that is
      currently still included and still in its trial
      period.
      
      - SUBSTANTIAL adjustments, additions, and
      improvements to every script - installation
      and boot scripts, the most comprehensive
      update for this shell component thus far.
      
      
      
      
      [B]Unity 20180220 -[/B]
      
      - Added the debloated apk.

      Code:
      [B]Standard 20180218 -[/B]
      
      - Updated installation script and
      functions with Magisk (1540).
      
      - Adjustments to boot scripts.
      
      - Added surround processing library
      from the native CustDolbySettings.apk
      firmware (Nokia 6 Official Oreo).
      
      - Temporary icon change for
      CustDolbySettings.apk.
      
      
      
      [B]Unity 20180218 -[/B]
      
      - Reworked bootmode support for devices
      with separate vendor partitions, added
      dolby surround app.
      
      
      
      [B]Standard 20180216 -[/B]
      
      - Fixed a critical error in libswvlldp.so's
      effect configuration in the XML
      configuration.
      
      - Several adjustments to boot scripts.
      
      
      
      [B]Unity 20180216 -[/B]
      
      - Fix issues users with devices that use
      audio_effect.xml were having. Thanks to
      [user=7073442]@manhong2112[/user] for the patience
      and troubleshooting.
      
      
      
      [B]Standard 20180215 -[/B]
      
      - Added new CustDolbySettings.apk
      from the latest Nokia 6 official Oreo
      firmware (untested/experimental).
      
      - Slight change in post-fs-data.sh
      boot script.
      
      
      
      [B]Standard 20180214 -[/B]
      
      - Correction to Pixel 2/2 XL detection.
      
      
      
      [B]Unity 20180214 -[/B]
      
      - Adjustments to unique audio effects
      configuration preparation.
      
      
      
      [B]20180214 -[/B]
      
      - Minor corrections and enhancements.
      
      
      
      [B]20180213-2 -[/B]
      
      - Adjustment to SuperSU /su
      module installation.
      
      
      
      [B]20180213-1 -[/B]
      
      - Completed the incomplete service.sh
      script mistakenly thought as completed.
      
      
      
      [B]20180213 -[/B]
      
      - Extensive reworking of boot scripts
      aimed at device boot success and
      debloat.
      
      
      
      [B]20180212-1 -[/B]
      
      - Samsung compatibility attempt
      via the disabling of the SoundAlive
      music output_session_processing
      effect.
      
      
      
      [B]20180212 -[/B]
      
      - Corrected library_migration function.
      
      
      
      [B]20180211-1 -[/B]
      
      - Testing new library migration
      function.
      
      
      
      [B]20180211 -[/B]
      
      - Accommodation for audio_effects.xml
      configurations lacking
      <postprocess></postprocess> section.
      
      - Adjustments to boot scripts focused
      on device boot success.
      
      
      
      [B]20180210 -[/B]
      
      - Resolved accidental omission of
      libstagefright_soft_ddpdec.so.
      
      
      
      [B]20180209-3 -[/B]
      
      - Don't be helpful, be harmless.
      
      
      
      [B]20180209-2 -[/B]
      
      - Corrections and adjustments to
      /system installations.
      
      - Automatic audioserver restoration
      during all system-less installations.
      
      
      
      [B]20180209-1 -[/B]
      
      - Correction to audio_effects.xml
      manipulation.
      
      
      
      [B]20180209 -[/B]
      
      - Correction to typo preventing
      audio_effects.xml manipulation.
      
      
      
      [B]20180208-4 -[/B]
      
      - Minor adjustments and improvements.
      
      
      
      [B]20180208-3 -[/B]
      
      - ...
      
      
      
      [B]20180208-2 -[/B]
      
      - meh.
      
      
      
      [B]20180208-1 -[/B]
      
      - More than enough changes to
      likely introduce new errors.
      
      
      
      [B]20180208 -[/B]
      
      - Script corrections and enhancements.
      
      
      
      [B]20180207-2 -[/B]
      
      - Does it even matter at this.point??
      
      
      
      [B]20180207-1 -[/B]
      
      - Like it even makes a difference...
      
      
      
      [B]20180207 -[/B]
      
      - Various corrections and adjustments.
      
      
      
      [B]20180206-2 -[/B]
      
      - Redundant changelog is redundant.
      
      
      
      [B]20180206-1 -[/B]
      
      - Further error corrections.
      
      
      
      [B]20180206 -[/B]
      
      - Various error corrections.
      
      
      
      [B]20180205-1 -[/B]
      
      - Various error corrections.
      
      
      
      [B]20180205 -[/B]
      
      - Initial release integrating Unity
      installation and scripts courtesy
      of @ahrion and @Zackptg5.
      
      
      
      [B]20180202 -[/B]
      
      - Corrected a critical error recently
      introduced by "reckless thumbing"
      to the audio effects configuration
      operation for /system installations.
      
      - The Magisk binary's --mountimg
      function is once again used for
      mounting the Magisk image volume
      if the standard mount attempt is
      unsuccessful.
      
      - Various enhancements.
      
      
      
      [B]20180201 -[/B]
      
      - Boot scripts completely
      rewritten.
      
      - Bundled Magisk's 1531 binary in
      an attempt to access its functions
      during the recovery session instead
      of the existing binary for certain
      Magisk-specific operations.
      
      - Various corrections and refinements.
      
      
      
      [B]20180131-1 -[/B]
      
      - Minor adjustments.
      
      
      
      [B]20180131 -[/B]
      
      - Numerous corrections and refinements.
      
      - Enforcing SELinux Mode fully supported.
      
      - No longer affects SELinux mode in any way.
      
      
      
      [B]20180129-1 -[/B]
      
      - Minor corrections.
      
      
      
      [B]20180129 -[/B]
      
      - Numerous changes/improvements
      to all scripts.
      
      
      
      [B]20180127 -[/B]
      
      - Numerous changes/improvements
      across the entire archive.
      
      
      
      [B]20180126-6 -[/B]
      
      - Slight adjustment to scripts.
      
      
      
      [B]20180126-5 -[/B]
      
      - Boot scripts restructuring and
      enhancements targeting successful
      device boot and additional
      functionality.[
      
      
      
      [B]20180126-4 -[/B]
      
      - Does it even matter at this point??
      
      
      
      [B]20180126-3 -[/B]
      
      - Reverted the recent option
      introducing unsuccessful results.
      
      
      
      [B]20180126-2 -[/B]
      
      - Redundant changelog is
      redundant...
      
      
      
      [B]20180126-1 -[/B]
      
      - Corrected, yet another, error
      introduced with the latest
      /sdcard/arise_parameters.prop
      option that would only affect those
      installations utilizing this option.
      
      
      
      [B]20180126 -[/B]
      
      - Various corrections of errors
      introduced with the changes to
      accommodate the recently added
      /sdcard/arise_parameters.prop
      option.
      
      
      
      [B]20180125-3 -[/B]
      
      - Corrected duplicate
      output_session_processing entry
      for module installations.
      
      
      
      [B]20180125-2 -[/B]
      
      - Added option to install custom
      dolbyserver instead of native
      audioserver for those unable to
      successfully boot with the native Axon 7
      Oreo /bin/audioserver. (Refer to
      arise_parameters.prop for full details)
      
      - Updated arise_parameters.prop.
      
      
      
      [B]20180125-1 -[/B]
      
      - Updated apk internal filesystem
      and information (Does NOT affect
      installation success-rate).
      
      
      
      [B]20180125 -[/B]
      
      - Adjustment to Xposed detection.
      
      
      
      [B]20180124-1 -[/B]
      
      - Unique atmos library and effect
      UUID to accommodate native Dolby
      effects.
      
      
      
      [B]20180124 -[/B]
      
      - Adjustment to Magisk variables with
      existing audio effects configurations.
      
      
      
      [B]20180122-2 -[/B]
      
      - Mount magisk.img with Magisk's
      util_functions.sh if initial mount
      attempt was unsuccessful.
      
      
      
      [B]20180122-1 -[/B]
      
      - Correction to audio effects
      configuration manipulation.
      
      
      
      [B]20180122 -[/B]
      
      - Correction of introduced errors.
      
      
      
      [B]20180121 -[/B]
      
      - Extensive adjustments to installation script.
      
      - Addressed Pixel, Samsung, /su module, and
      general installations.
      
      - Removed previously bundled music player.
      
      - Beginning of DolbyAtmos.apk customization
      and experimentation.
      
      
      
      [B]20180120-1 -[/B]
      
      - Conservative shift of boot scripts.
      
      
      
      [B]20180120 -[/B]
      
      - Various and discriminate installation
      and boot script adjustments.
      
      
      
      [B]20180119-3 -[/B]
      
      - Third time's the charm??
      
      
      
      [B]20180119-2 -[/B]
      
      - Yet another correction to boot script.
      
      
      
      [B]20180119-1 -[/B]
      
      - Correction to boot script.
      
      
      
      [B]20180119 -[/B]
      
      - Extensive adjustments to systemless
      module creation and boot script.
      
      - Removed build properties.
      
      - Default installations intended to
      accommodate HTC devices.
      
      
      
      [B]20180117-1 -[/B]
      
      - Correction to
      /odm/etc/audio_policy_configuration.xml
      symlink.
      
      
      
      [B]20180117 -[/B]
      
      - Various script corrections.
      
      - Recovery Management zip now supports
      SuperSU's /data/su.img and is now included
      in the Dolby Atmos zip for convenient access.
      
      
      
      [B]20180114-4 -[/B]
      
      - More script corrections.
      
      
      
      [B]20180114-3 -[/B]
      
      - Script error correction.
      
      
      
      [B]20180114-2 -[/B]
      
      - Further script changes.
      
      
      
      [B]20180114-1 -[/B]
      
      - Adjustment to supported .prop detection.
      
      - Removed experimental /*_contexts patches.
      
      - Various script changes.
      
      
      
      [B]20180114 -[/B]
      
      - Corrected Magisk module installation.
      
      - Added systemless installation option
      for SuperSU users (/su/dolbyatmos).
      
      - Updated /sdcard/arise_parameters.prop
      (will overwrite the no longer supported .prop).
      
      - Various script changes.
      
      
      
      [B]20180112-2 -[/B]
      
      - Added missing setprop section
      to script in /system installations.
      
      
      
      [B]20180112-1 -[/B]
      
      - Added two library dependencies
      to accommodate devices without
      either library. (@Zackptg5)
      
      - Adjustment to vendor partition
      audio effects configuration
      detection. (@Zackptg5)
      
      - Added Xposed alert describing
      potential conflict and potential resolution
      of Dolby Atmos functionality. (@MMWolverine)
      
      - Added /system free space detection,
      resolution methods, and installation exit
      for /system installations destined to fail due
      to insufficient space to accommodate the
      Dolby Atmos system.
      
      Massive shout out to the many users
      responsible for the current success rate
      enjoyed by this Dolby Atmos Oreo solution!
      
      :highfive:
      
      
      
      [B]20180112 -[/B]
      
      - Updated Magisk module.prop to 1530
      
      
      
      [B]Initial Release -[/B]
      -


    Credits:
    45
    Release Candidate 1:
    • 32-bit and 64-bit installations from a single zip.

    • Axon 9 Pro apk and effect library used in both 32-bit and 64-bit installations to provide the most consistent experience for all users.

    • This allows 32-bit users to avoid the 3dB GEQ boost limit as well as any license check by Lenovo.

    • Removed much of the verbose messaging during the installation.

    • Refinements and minor corrections to every single script.

    Procedure:
    • Install ACDB 0.45 if not already installed.

    • Uninstall any existing Dolby Atmos™ installation and reboot.

    • Install RC1 in Magisk Manager or in custom recovery.

    • Save installation log before rebooting.

    • Apply your best effort to find a failure or force a failure of functionality by any reasonable means - deleting/overwriting something will not count, obviously.
    43
    God, I miss him...
    41
    Original thread with the initial two weeks of information and progress: Link
    41
    Android Oreo Database

    /system/bin/audioserver <-- Drive link


    • Purpose and Contribution:

      • Introduced with Android Nougat, audioserver appears as its own binary after years of being a component of /system/bin/mediaserver in all Android firmware.
      • Introduced with Android Nougat, vendor provided Dolby Atmos™ software audio solutions appear with a new media.dolby_memoryservice that is compiled into /system/bin/audioserver as well as a unique system library typically appearing as /system/vendor/lib/libdlbmemoryservice.so.
      • These new components are crucial to a functional Dolby Atmos software solution and there is currently no known way of achieving any amount of success without them.
      • While porting the very first Nougat Dolby Atmos system available, courtesy of ZTE™ Axon 7’s initial Nougat firmware image, I discovered this implementation and a functional port was finally available.
      • However, using a Nexus 6 at the time, I was able to evade nearly all bootloop scenarios with much of what would cause a bootloop scenario for others.
      • It took no time to determine that this new media.dolby_memoryservice component was going to be a challenge in achieving a viable Dolby Atmos Nougat port.
      • To begin, results were determined: Successful device boot or Unsuccessful device boot.
      • Stock firmware seemed to fare much better than custom firmware, even for just a single device.
      • A pattern began to emerge for me when focusing only on the audioserver binary: Stock firmware had an audioserver file size range (21.50KB-21.53KB) and Custom firmware had an audioserver file size range of its own (21.58KB-21.60KB).
      • Not a significant difference, unless you were looking for a difference.
      • This assessment presented an effective predictibility of an installation scenario's success and failure with nearly 100% accuracy (nearly only because every possible scenario is not documented).
      • This audioserver database is intended for those that have determined a single scenario as successful or as unsuccessful due to the native audioserver binary in their device’s rom being overwritten or symlinked over with the audioserver native to the ZTE™ Axon 7 Oreo firmware AND NOT A RESULT OF ANY OTHER FILE OR SCRIPT OPERATION!!
      • Simply, those with success have the easier path requiring nearly no effort other than uploading the native audioserver from their firmware along with the firmware build.prop to the WIN audioserver folder.
      • Those contributing to the FAIL audioserver folder with the native audioserver along with the firmware build.prop will only be able to do so after some personal testing to ensure the audioserver switching is the exclusive cause of an unsuccessful device boot after flashing the Dolby Atmos installation archive in recovery.

    :good: