FORUMS
Remove All Ads from XDA

[APP] [8.0+] Dolby Atmos™ Axon 7 Oreo port 20180125

7,642 posts
Thanks Meter: 23,872
 
By guitardedhero, Senior Member on 12th January 2018, 08:50 AM
Post Reply Email Thread
THIS THREAD WILL NO LONGER BE UPDATED AS THE THREAD IS NOW OFFICIALLY HERE!



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




Dolby Atmos™
for
Android Oreo




Description:
  • Dolby Atmos™ Digital Signal Processer with effects and Graphic User Interface ported from the latest ZTE™ Axon 7 Android Oreo firmware.
  • Dolby Atmos™ sound effects applied to media audio output supporting various media players.
  • MiFavor Music Player from the same firmware included only because of its Settings option to directly launch Dolby Atmos™ for testing purposes such as the possibility of additional features and/or other unique functionality.
  • Flexible custom recovery installation archive supporting Magisk and SuperSU installations including the options to install directly to /system for Magisk users and to install to /su for SuperSU¹ users. ¹ Experimental


Details:
  • A minimum of SDK 26 (Android 8.0) is required for installation to begin, else Exit 1 will abort the recovery installation activity.
  • Magisk users are provided the option of installing directly to /system instead of creating a Magisk module using the included arise_parameters.prop.
  • SuperSU users with the systemless root solution are provided the option of creating a SU module instead of installing directly to /system. This is similar to Magisk module installations and is a great alternative for those with insufficient /system space to accommodate a /system installation among other benefits Magisk users enjoy.
    • arise_parameters.prop may be extracted from the installation archive, placed directly into root of internal storage (e.g. /sdcard/arise_parameters.prop), and edited (details and instructions inside prop file) before installing the archive in recovery.
    • arise_parameters.prop (with no options active) will be automatically placed in the root of internal storage if not already present during the installation in recovery.
  • SuperSU users and Magisk users instructing a /system installation via a prepared /sdcard/arise_parameters.prop are encouraged to confirm a minimum of 100MB of /system space is available before beginning installation in recovery.
  • Magisk users performing the default Magisk module installation and SuperSU users performing the optional systemless installation will require 100MB more than the minimum available /data space acceptable (usually 500MB, 500MB + 100MB = 600MB).
  • Permissive SELinux Mode is currently required and will be set automatically each device boot. Do not install archive if this is not acceptable.
  • Third party audio effects and DSP's such as ViPER4Android (<--
    link to @docnok63's solution )
    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 other than Magisk users receiving the default installation in recovery:
    • 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:
  • 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/Magisk /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 application's 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 compatibility with other audio effects, functionality in Enforcing SELinux Mode, 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.
    • Audio Modification Library (ver: ? - 2.9):
      • Scenarios: The AML 2.9 Magisk module has been found to remove a necessary audio effects configuration entry upon every device boot, if found by AML's detection mechanics targeting content to eradicate. This vulnerability for the Dolby Atmos™ system exists in every installation method if AML 2.9 is installed.
      • Solutions: Until this vulnerability is no longer exploited by the AML 2.9 Magisk module, the appropriate AML uninstallation procedure must be performed to restore Dolby Atmos ™ functionality. Fortunately, this vulnerability can be addressed quickly due to the active development of AML in addition to existing and active communication with AML authors.is currently being accommodated by the AML authors and should no longer present an issue with the next AML update. Props to the AML guys for focusing on securing a complimentary experience with this single package.


Downloads:

Changelog:
  • Code:
    20180125 -
    
    - Adjustment to Xposed detection.

    Code:
    20180124-1 -
    
    - Unique atmos library and effect
    UUID to accommodate native Dolby
    effects.
    
    20180124 -
    
    - Adjustment to Magisk variables with
    existing audio effects configurations.
    
    20180122-2 -
    
    - Mount magisk.img with Magisk's
    util_functions.sh if initial mount
    attempt was unsuccessful.
    
    20180122-1 -
    
    - Correction to audio effects
    configuration manipulation.
    
    20180122 -
    
    - Correction of introduced errors.
    
    20180121 -
    
    - 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.
    
    20180120-1 -
    
    - Conservative shift of boot scripts.
    
    20180120 -
    
    - Various and discriminate installation
    and boot script adjustments.
    
    20180119-3 -
    
    - Third time's the charm??
    
    20180119-2 -
    
    - Yet another correction to boot script.
    
    20180119-1 -
    
    - Correction to boot script.
    
    20180119 -
    
    - Extensive adjustments to systemless
    module creation and boot script.
    
    - Removed build properties.
    
    - Default installations intended to
    accommodate HTC devices.
    
    20180117-1 -
    
    - Correction to
    /odm/etc/audio_policy_configuration.xml
    symlink.
    
    20180117 -
    
    - 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.
    
    
    
    20180114-4 -
    
    - More script corrections.
    
    
    
    20180114-3 -
    
    - Script error correction.
    
    
    
    20180114-2 -
    
    - Further script changes.
    
    
    
    20180114-1 -
    
    - Adjustment to supported .prop detection.
    
    - Removed experimental /*_contexts patches.
    
    - Various script changes.
    
    
    
    20180114 -
    
    - 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.
    
    
    
    20180112-2 -
    
    - Added missing setprop section
    to script in /system installations.
    
    
    
    20180112-1 -
    
    - 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:
    
    
    
    20180112 -
    
    - Updated Magisk module.prop to 1530
    
    
    
    20180112 -
    - Updated Magisk module.prop to 1530
    
    
    
    Initial Release -
    -
Attached Thumbnails
Click image for larger version

Name:	Screenshot_20180112-005423.jpg
Views:	25582
Size:	208.7 KB
ID:	4386839   Click image for larger version

Name:	Screenshot_20180112-005445.jpg
Views:	25070
Size:	193.0 KB
ID:	4386840   Click image for larger version

Name:	Screenshot_20180112-005504.jpg
Views:	24970
Size:	124.7 KB
ID:	4386841   Click image for larger version

Name:	Screenshot_20180112-005508.jpg
Views:	23586
Size:	111.0 KB
ID:	4386842   Click image for larger version

Name:	Screenshot_20180112-005513.jpg
Views:	22914
Size:	117.3 KB
ID:	4386844   Click image for larger version

Name:	Screenshot_20180112-005530.jpg
Views:	22320
Size:	118.2 KB
ID:	4386845  
Attached Files
File Type: zip Magisk+SuperSU_RecoveryManagement.zip - [Click for QR Code] (1.2 KB, 10686 views)
The Following 67 Users Say Thank You to guitardedhero For This Useful Post: [ View ] Gift guitardedhero Ad-Free
 
 
12th January 2018, 09:45 AM |#2  
Skittles9823's Avatar
Senior Member
Flag Sydney
Thanks Meter: 1,325
 
Donate to Me
More
Nice work

Sent from my LG Nexus 5X using XDA Labs
The Following User Says Thank You to Skittles9823 For This Useful Post: [ View ] Gift Skittles9823 Ad-Free
12th January 2018, 11:09 AM |#3  
Senior Member
Thanks Meter: 713
 
More
Dos this work on the 5T also ?
12th January 2018, 12:29 PM |#4  
guitardedhero's Avatar
OP Senior Member
Flag Little Rock
Thanks Meter: 23,872
 
Donate to Me
More
Quote:
Originally Posted by SlyUK

Dos this work on the 5T also ?

I have successfully tested both Magisk module and /system installations (Magisk, not SuperSU) on the OnePlus 5 Open Beta 3 during the past seven days or so.

Testing elsewhere has been very minimal and unsuccessful, however, the installation script has continued to improve significantly since the most recent unsuccessful report, and is nearly perfect for the time being.

A successful and compatible installation absolutely hinges upon /system/bin/audioserver (introduced to Android devices with Nougat) of the device. This discovery was made last year when I ported the very first Nougat Dolby Atmos system, which ironically, was from the Axon 7 device as well.

This binary service is crucial to the current Dolby Atmos systems used in Nougat and now Oreo in their native environment. However, this file has completely different dependencies in Oreo than it does in Nougat thanks to the drastic changes to the audio framework in Android 8.0, and still more changes in Android 8.1.

Furthermore, it is not uncommon for /system/bin/audioserver to exist in several forms for a device in the various custom rom's available, so the rom currently installed on the device can play a critical role, although stock firmware seems to always have the better chance, at least for last year's Axon 7 Nougat Dolby Atmos port. For development purposes and efficiency, I only run stock firmware on my device.

When upgrading firmware or changing rom's, pay special attention to /system/bin/audioserver, as any change may allow a successful installation for a device achieving only unsuccessful installations previously. Typically, these unsuccessful installations result with device boot failure due to the media.dolby_memoryservice audioserver overwriting the existing audioserver on the device.

There is no way around this audioserver dependency, but we can certainly learn as much as we can by building a database of device audioservers with two groups:

Successful

Unsuccessful

I was able to determine audioserver compatibility accurately for Nougat, and the same should be possible for Oreo, although using different mechanics, I imagine.

I'll add a link to my Drive where users can upload a successful/unsuccessful audioserver to the relevant folder some time today.
The Following 6 Users Say Thank You to guitardedhero For This Useful Post: [ View ] Gift guitardedhero Ad-Free
12th January 2018, 12:59 PM |#5  
Junior Member
Flag Karlsruhe
Thanks Meter: 2
 
More
Two questions:

is this independent of the "audio tuner" comming with OOS 5.0.1 or is this a replacement?
Does it work with BT connected headphones?
The Following 2 Users Say Thank You to bormo For This Useful Post: [ View ] Gift bormo Ad-Free
12th January 2018, 01:39 PM |#6  
guitardedhero's Avatar
OP Senior Member
Flag Little Rock
Thanks Meter: 23,872
 
Donate to Me
More
Quote:
Originally Posted by bormo

Two questions:

is this independent of the "audio tuner" comming with OOS 5.0.1 or is this a replacement?
Does it work with BT connected headphones?

Fantastic questions!

#1:
Embarrassingly, I completely forgot to check Audio Tuner (Dirac) while testing headset output for Dolby processing a few days ago.

It will be a day or so before I am able to test your inquiry as I am currently "in the doghouse" with my wife (AKA friend's couch), but I would be very surprised if Audio Tuner was negatively affected in any way by this Dolby Atmos installation.

Dirac is typically quite persistent in informing the user of any conflicts and I know for certain that Dirac has not complained once, at least in my usage this week.

#2:
Unfortunately, by not possessing a pair of Bluetooth headphones, I have no way of testing your inquiry. However, my audio sessions are almost exclusively Bluetooth output into a Sony SRS-X88 speaker system and I can confirm success.
The Following 2 Users Say Thank You to guitardedhero For This Useful Post: [ View ] Gift guitardedhero Ad-Free
12th January 2018, 03:10 PM |#7  
MMWolverine's Avatar
Recognized Contributor
Thanks Meter: 4,517
 
More
Hi,

Atmos GUI force closes for me on OOS 5.0.1 with Magisk 15.3. Flashed in codeworkx and blu_spark TWRP recovery. Logs attached.

Previously I was using Ainur Sauron MK II and your Dolby/V4A Oreo ports from the A.R.I.S.E. forum. Everything was working alongside the Dirac Audio Tuner. Of course I uninstalled those mods before flashing this new port.
Attached Files
File Type: log blu_spark-recovery.log - [Click for QR Code] (21.7 KB, 286 views)
File Type: txt 2018-01-12-15-37-36.txt - [Click for QR Code] (7.0 KB, 204 views)
The Following User Says Thank You to MMWolverine For This Useful Post: [ View ] Gift MMWolverine Ad-Free
12th January 2018, 03:20 PM |#8  
guitardedhero's Avatar
OP Senior Member
Flag Little Rock
Thanks Meter: 23,872
 
Donate to Me
More
Quote:
Originally Posted by MMWolverine

Hi,

Atmos GUI force closes for me on OOS 5.0.1 with Magisk 15.3. Flashed in codeworkx and blu_spark TWRP recovery. Logs attached.

Previously I was using Ainur Sauron MK II and your Dolby/V4A Oreo ports from the A.R.I.S.E. forum. Everything was working alongside the Dirac Audio Tuner. Of course I uninstalled those mods before flashing this new port.

Thank you very much for the report and included information!

It seems the sound effect libraries may not be properly configured to allow the apk to function properly.

Would you mind providing the output generated from following the Dumpsys procedure detailed in the Auditing section of the OP?

Thanks again!
The Following 3 Users Say Thank You to guitardedhero For This Useful Post: [ View ] Gift guitardedhero Ad-Free
12th January 2018, 03:33 PM |#9  
MMWolverine's Avatar
Recognized Contributor
Thanks Meter: 4,517
 
More
Quote:
Originally Posted by guitardedhero

Thank you very much for the report and included information!

It seems the sound effect libraries may not be properly configured to allow the apk to function properly.

Would you mind providing the output generated from following the Dumpsys procedure detailed in the Auditing section of the OP?

Thanks again!

Dumpsys attached, hope that helps.
Attached Files
File Type: txt media.audio_flinger.txt - [Click for QR Code] (14.1 KB, 260 views)
The Following User Says Thank You to MMWolverine For This Useful Post: [ View ] Gift MMWolverine Ad-Free
12th January 2018, 03:43 PM |#10  
guitardedhero's Avatar
OP Senior Member
Flag Little Rock
Thanks Meter: 23,872
 
Donate to Me
More
Quote:
Originally Posted by MMWolverine

Dumpsys attached, hope that helps.

This absolutely helped and did, indeed, confirm my suspicion of an audio effect configuration issue.

The dumpsys output confirms that a vendor audio effects configuration is sourced, so our next step is to examine any audio effects configurations existing in /system/vendor/etc (anything similar to audio_effects.conf, including audio_effects.xml).

Be sure to also confirm the presence of /system/(lib&lib64)/soundfx/(libswdap.so&libswvlldp.so)
The Following 2 Users Say Thank You to guitardedhero For This Useful Post: [ View ] Gift guitardedhero Ad-Free
12th January 2018, 03:54 PM |#11  
MMWolverine's Avatar
Recognized Contributor
Thanks Meter: 4,517
 
More
Ok, libswdap.so & libswvlldp.so are present, I've attached audio_effects.conf file and a screenshot of everything inside system/vendor/etc
Attached Files
File Type: zip audio_output_policy.zip - [Click for QR Code] (1.41 MB, 684 views)
The Following 2 Users Say Thank You to MMWolverine For This Useful Post: [ View ] Gift MMWolverine Ad-Free
Post Reply Subscribe to Thread

Tags
arise, atmos, audio, dolby, oreo

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes