# 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 {
  v4a_fx {
    path /system/lib/soundfx/libv4a_fx_ics.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
  }
  output_session_processing {
    path /vendor/lib/liblvverx_3.27.02.so
  }
  pre_processing {
    path /vendor/lib/liblvvetx_3.27.02.so
  }
  mysound {
    path /system/lib/libmysound.so
  }
  myspace {
    path /system/lib/soundfx/libmyspace.so
  }
  loudness_enhancer {
    path /system/lib/soundfx/libldnhncr.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.
#    effects {
#        <fx name> {
#            library <lib name>
#            uuid <effect uuid>
#        }
#        :
#    }

effects {
  v4a_standard_fx {
    library v4a_fx
    uuid 41d3c987-e6cf-11e3-a88a-11aba5d5c51b
  }
  bassboost {
    library bundle
#    uuid 8631f300-72e2-11df-b57e-0002a5d5c51b
    uuid a926a540-418a-11e1-b2f1-0002a5d5c51b
  }
  virtualizer {
    library bundle
#    uuid 1d4033c0-8557-11df-9f2d-0002a5d5c51b
    uuid c747f6a0-418a-11e1-a621-0002a5d5c51b
  }
  equalizer {
    library bundle
#    uuid ce772f20-847d-11df-bb17-0002a5d5c51b
    uuid c117b70-f97f-11e0-be50-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
  }
  agc {
    library pre_processing
    uuid 3b75f00-93ce-11e0-9fb8-0002a5d5c51b
  }
  aec {
    library pre_processing
    uuid d6dbf400-93ce-11e0-bcd7-0002a5d5c51b
  }
  ns {
    library pre_processing
    uuid df0afc20-93ce-11e0-98de-0002a5d5c51b
  }
  lmfv {
    library output_session_processing
     uuid 989d9460-413d-11e1-8b0d-0002a5d5c51b
  }
  fens {
    library output_session_processing
     uuid cbcc5980-476d-11e1-82ee-0002a5d5c51b
  }
  dha {
    library mysound
     uuid 263a88e0-50b1-11e2-bcfd-0800200c9a66
  }
  sa3d {
    library myspace
     uuid 3462a6e0-655a-11e4-8b67-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 "key" 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"
#    pre_processing {
#        <input source name> {
#            <fx name> {
#                <param name> {
#                    key {
#                        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>
#                        :
#                    }
#                }
#                :
#            }
#            :
#        }
#        :
#    }

#            level {
#                key {
#                    int test
#                }
#                value {
#                    short 9000
#                }
#            }

pre_processing {
    mic {
        agc {}
        ns {}
        aec{}
    }
    camcorder {
#        ns {}
    }
    voice_communication {
        agc {}
        ns {}
        aec {}
    }
    sec_voice_recognition{    # for BargeIn
        agc {}
        ns {}
        aec {}
    }
    sec_bargein_driving{    # for BargeIn driving
        agc {}
        ns {}
        aec {}
    }
    sec_voice_communication{
        agc {}
        ns {}
        aec {}
    }
}

output_session_processing {
    music {
        v4a_fx {}
    }
    ring {
        sa3d {}
    }
    voice_call {
        fens {}
        lmfv {}
    }

    sec_voice_communication {
        fens {}
        lmfv {}
    }

}
