Skip to content

Commit

Permalink
Enable MIUI Dirac Sound Enhancement
Browse files Browse the repository at this point in the history
  • Loading branch information
nitesh-prasad committed May 10, 2017
1 parent a03f1d4 commit aec692f
Show file tree
Hide file tree
Showing 7 changed files with 759 additions and 0 deletions.
3 changes: 3 additions & 0 deletions metadata/filesystem_config.txt
Expand Up @@ -1127,6 +1127,7 @@ system/lib/content-types.properties 0 0 644 selabel=u:object_r:system_file:s0 ca
system/lib/crtbegin_so.o 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
system/lib/crtend_so.o 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
system/lib/lib7z.so 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
system/lib/libDiracAPI_SHARED.so 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
system/lib/libEGL.so 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
system/lib/libETC1.so 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
system/lib/libFFTEm.so 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
Expand Down Expand Up @@ -1395,6 +1396,7 @@ system/lib/soundfx/libaudiopreprocessing.so 0 0 644 selabel=u:object_r:system_fi
system/lib/soundfx/libbundlewrapper.so 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
system/lib/soundfx/libdownmix.so 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
system/lib/soundfx/libeffectproxy.so 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
system/lib/soundfx/libdirac.so 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
system/lib/soundfx/libldnhncr.so 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
system/lib/soundfx/libqcompostprocbundle.so 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
system/lib/soundfx/libqcomvisualizer.so 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
Expand Down Expand Up @@ -2207,6 +2209,7 @@ system/vendor/bin/slim_daemon 0 2000 755 selabel=u:object_r:location_exec:s0 cap
system/vendor/bin/thermal-engine 0 2000 755 selabel=u:object_r:thermal-engine_exec:s0 capabilities=0x0
system/vendor/etc 0 2000 755 selabel=u:object_r:system_file:s0 capabilities=0x0
system/vendor/etc/audio_effects.conf 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
system/vendor/etc/diracmobile.config 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
system/vendor/etc/msm_irqbalance.conf 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
system/vendor/lib 0 2000 755 selabel=u:object_r:system_file:s0 capabilities=0x0
system/vendor/lib/libC2D2.so 0 0 644 selabel=u:object_r:system_file:s0 capabilities=0x0
Expand Down
2 changes: 2 additions & 0 deletions other/build.prop
Expand Up @@ -17,6 +17,8 @@ ro.miui.mnc=9999
ro.setupwizard.mode=OPTIONAL
ro.com.google.gmsversion=6.0_r2
drm.service.enabled=true
#enable dirac effect for speaker
persist.audio.dirac.speaker=true

#Additional Tweaks OSBUSTERS.NET
#####
Expand Down
285 changes: 285 additions & 0 deletions other/system/etc/audio_effects.conf
@@ -0,0 +1,285 @@
#
# This file was modified by Dolby Laboratories, Inc. The portions of the
# code that are surrounded by "DOLBY..." are copyrighted and
# licensed separately, as follows:
#
# (C) 2012-2014 Dolby Laboratories, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# List of effect libraries to load. Each library element must contain a "path" element
# giving the full path of the library .so file.
# libraries {
# <lib name> {
# path <lib path>
# }
# }
libraries {
# This is a proxy library that will be an abstraction for
# the HW and SW effects

#proxy {
#path /system/lib/soundfx/libeffectproxy.so
#}

# This is the SW implementation library of the effect
#libSW {
#path /system/lib/soundfx/libswwrapper.so
#}

# This is the HW implementation library for the effect
#libHW {
#path /system/lib/soundfx/libhwwrapper.so
#}

bundle {
path /system/lib/soundfx/libbundlewrapper.so
}
reverb {
path /system/lib/soundfx/libreverbwrapper.so
}
visualizer {
path /system/lib/soundfx/libvisualizer.so
}
downmix {
path /system/lib/soundfx/libdownmix.so
}
loudness_enhancer {
path /system/lib/soundfx/libldnhncr.so
}
dirac {
path /system/lib/soundfx/libdirac.so
}
#DOLBY_DAP
ds {
path /system/vendor/lib/soundfx/libswdap.so
}
#DOLBY_END
}

# Default pre-processing library. Add to audio_effect.conf "libraries" section if
# audio HAL implements support for default software audio pre-processing effects
#
# pre_processing {
# path /system/lib/soundfx/libaudiopreprocessing.so
# }

# list of effects to load. Each effect element must contain a "library" and a "uuid" element.
# The value of the "library" element must correspond to the name of one library element in the
# "libraries" element.
# The name of the effect element is indicative, only the value of the "uuid" element
# designates the effect.
# The uuid is the implementation specific UUID as specified by the effect vendor. This is not the
# generic effect type UUID.
# effects {
# <fx name> {
# library <lib name>
# uuid <effect uuid>
# }
# ...
# }

effects {

# additions for the proxy implementation
# Proxy implementation
#effectname {
#library proxy
#uuid xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

# SW implemetation of the effect. Added as a node under the proxy to
# indicate this as a sub effect.
#libsw {
#library libSW
#uuid yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy
#} End of SW effect

# HW implementation of the effect. Added as a node under the proxy to
# indicate this as a sub effect.
#libhw {
#library libHW
#uuid zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz
#}End of HW effect
#} End of effect proxy

bassboost {
library bundle
uuid 8631f300-72e2-11df-b57e-0002a5d5c51b
}
virtualizer {
library bundle
uuid 1d4033c0-8557-11df-9f2d-0002a5d5c51b
}
equalizer {
library bundle
uuid ce772f20-847d-11df-bb17-0002a5d5c51b
}
volume {
library bundle
uuid 119341a0-8469-11df-81f9-0002a5d5c51b
}
reverb_env_aux {
library reverb
uuid 4a387fc0-8ab3-11df-8bad-0002a5d5c51b
}
reverb_env_ins {
library reverb
uuid c7a511a0-a3bb-11df-860e-0002a5d5c51b
}
reverb_pre_aux {
library reverb
uuid f29a1400-a3bb-11df-8ddc-0002a5d5c51b
}
reverb_pre_ins {
library reverb
uuid 172cdf00-a3bc-11df-a72f-0002a5d5c51b
}
visualizer {
library visualizer
uuid d069d9e0-8329-11df-9168-0002a5d5c51b
}
downmix {
library downmix
uuid 93f04452-e4fe-41cc-91f9-e475b6d1d69f
}
loudness_enhancer {
library loudness_enhancer
uuid fa415329-2034-4bea-b5dc-5b381c8d1e2c
}
dirac {
library dirac
uuid e069d9e0-8329-11df-9168-0002a5d5c51b
}
}

# Audio global processor configurations.
# The global processor configuration consists in a list of effects elements.
# The name of the effect element must be the name of one of the effects in
# the "effects" list of the file.
# Each effect element may optionally contain a list of parameters and their
# default value to apply when the pre processor effect is created.
# A parameter is defined by a "param" element and a "value" element. Each of these elements
# consists in one or more elements specifying a type followed by a value.
# The types defined are: "int", "short", "float", "bool" and "string"
# When both "param" and "value" are a single int, a simple form is allowed where just
# the param and value pair is present in the parameter description
# global_processing {
# <fx name> {
# <param 1 name> {
# param {
# int|short|float|bool|string <value>
# [ int|short|float|bool|string <value> ]
# ...
# }
# value {
# int|short|float|bool|string <value>
# [ int|short|float|bool|string <value> ]
# ...
# }
# }
# <param 2 name > {<param> <value>}
# ...
# }
# ...
# }
global_processing {
dirac {
bl@lakala {
param {
int 6
}
value {
string *com.lakala.android
}
}
bl@jawboneup {
param {
int 6
}
value {
string *com.jawbone.up
}
}
bl@hojyremote {
param {
int 6
}
value {
string *com.hojy.hremote
}
}
}

#DOLBY_DAP
ds {
library ds
uuid 9d4921da-8225-4f29-aefa-39537a04bcaa
}
#DOLBY_END
}

# Default pre-processing effects. Add to audio_effect.conf "effects" section if
# audio HAL implements support for them.
#
# agc {
# library pre_processing
# uuid aa8130e0-66fc-11e0-bad0-0002a5d5c51b
# }
# aec {
# library pre_processing
# uuid bb392ec0-8d4d-11e0-a896-0002a5d5c51b
# }
# ns {
# library pre_processing
# uuid c06c8400-8e06-11e0-9cb6-0002a5d5c51b
# }

# Audio preprocessor configurations.
# The pre processor configuration consists in a list of elements each describing
# pre processor settings for a given input source. Valid input source names are:
# "mic", "camcorder", "voice_recognition", "voice_communication"
# Each input source element contains a list of effects elements. The name of the effect
# element must be the name of one of the effects in the "effects" list of the file.
# Each effect element may optionally contain a list of parameters and their
# default value to apply when the pre processor effect is created.
# A parameter is defined by a "param" element and a "value" element. Each of these elements
# consists in one or more elements specifying a type followed by a value.
# The types defined are: "int", "short", "float", "bool" and "string"
# When both "param" and "value" are a single int, a simple form is allowed where just
# the param and value pair is present in the parameter description
# pre_processing {
# <input source name> {
# <fx name> {
# <param 1 name> {
# param {
# int|short|float|bool|string <value>
# [ int|short|float|bool|string <value> ]
# ...
# }
# value {
# int|short|float|bool|string <value>
# [ int|short|float|bool|string <value> ]
# ...
# }
# }
# <param 2 name > {<param> <value>}
# ...
# }
# ...
# }
# ...
# }

#
# TODO: add default audio pre processor configurations after debug and tuning phase
#
Binary file added other/system/lib/libDiracAPI_SHARED.so
Binary file not shown.
Binary file added other/system/lib/soundfx/libdirac.so
Binary file not shown.

0 comments on commit aec692f

Please sign in to comment.