summaryrefslogtreecommitdiffstats
path: root/services/audiopolicy/Android.mk
Commit message (Collapse)AuthorAgeFilesLines
* audiopolicy: squashed support for pre-kitkat audio blobsc4572016-03-101-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | Squash of the following: commit 40c41a743a4345ad26b6eab41755c5b474f75853 Author: chrmhoffmann <chrmhoffmann@gmail.com> Date: Sat Nov 29 19:32:27 2014 +0100 pre kitkat audio legacy policy fix for hotword (ok google) Change-Id: I5bb90fb90f373461a98609226a5cea50ac5266e9 commit d47b306954b96142323c79b976edeb3eaa3b46dd Author: chrmhoffmann <chrmhoffmann@gmail.com> Date: Sun Nov 23 18:22:35 2014 +0100 commit d47b306954b96142323c79b976edeb3eaa3b46dd Author: chrmhoffmann <chrmhoffmann@gmail.com> Date: Sun Nov 23 18:22:35 2014 +0100 pre-kitkat audio policy blobs re-activated. Change-Id: Idfcb03d0a4aa0a099bf5a17b7bf592ab402e3255 Change-Id: Iae65c6ccb6dcb120a6fc20978b8a69e6af39a51a
* Add a configurable version of the policy engine based on PFWFrançois Gaffie2015-06-181-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds a configurable version of the policy engine based on the parameter framework. This configurable engine shall be activated with a flag USE_CONFIGURABLE_AUDIO_POLICY within BoardConfig.mk This patch provides the generic configuration as an example. This configuration provides the same user experience as the default policy engine. - Fix M Issue on configurable policy engine version. - Remove the "empty static lib include trick" hack The code was using a hack to import headers only through an empty lib. This trick was used not only by the PFW and its plugin but also internally with policy. This patch removes this hack and either links againts the real libraries if exist or point on the path of the header. However, since header directories are not recursively detected on Andoid, we need to manually add all necessary libraries. (for example libicuuc needed by libxml2) - let the build system decide which compiler and which stl is to be used - Disable by default Audio Policy Settings XML file generation at compilation time In order not to depend on python tool for the configurable policy example, this patch adds the generated Settings XML file and disables the generation from .pfw files at compile time. If the user wishes to regenerate it, he may use the pfw_rebuild_settings option. - Fix Clang issues within Configurable Audio Policy Fix compilation issues revealed when switching to CLANG compiler within the configurable version of policy engine. Change-Id: I3edc26db94c0bf8a76430ab8081bae52e9193705 Signed-off-by: François Gaffie <francois.gaffie@intel.com>
* Revert "Add a configurable version of the policy engine based on PFW"Eric Laurent2015-04-251-15/+0
| | | | | | This reverts commit 65c3781db3443531deacecfbda5c7e7e82868a34. Change-Id: Ib61cd70f97c4c4f4b503fb845643627d6896f4f9
* Add a configurable version of the policy engine based on PFWFrançois Gaffie2015-04-241-0/+15
| | | | | | | | | | | | | | This patch adds a configurable version of the policy engine based on the parameter framework. This configurable engine shall be activated with a flag USE_CONFIGURABLE_AUDIO_POLICY within BoardConfig.mk This patch provides the generic configuration as an example. This configuration provides the same user experience as the default policy engine. Change-Id: Ic8217333ae370b89bfdd2ad11320c5f14ea4da34 Signed-off-by: François Gaffie <francois.gaffie@intel.com>
* Split ManagerDefault into manager and engineFrançois Gaffie2015-04-011-1/+6
| | | | | | | | | | | This patch defines an interface for a new component: policy engine. The APIs found under this interface are the one we may want to customize and to configure easily. This patch also split the current manager code into manager and engine to provide a default version of the policy engine. Change-Id: I97cf59760b53d248fe9efe466ae5e73bd7e5cc06 Signed-off-by: François Gaffie <francois.gaffie@intel.com>
* Migrate helper functions from managerdefault to commonFrançois Gaffie2015-04-011-2/+8
| | | | | | | | | | | | | | | This patch moves from manager to common: -parse helper functions of the policy configuration file -collection helper function on -output / input descriptors -DeviceDescriptor -AudioPatch / Audio Port -IO Profile -HwModule Change-Id: If45e53418db75af1af198f43c4ef27884499055f Signed-off-by: François Gaffie <francois.gaffie@intel.com>
* Split ManagerDefault into Manager and ManagerDefinitionsFrançois Gaffie2015-04-011-10/+13
| | | | | | | | | | | | This patch splits the managerdefault into a manager and a manager defintion library that contains all pillar elements of a policy manager. It renames the file with the name of the main class they contains. It splits the AudioPort into AudioPort and AudioPatch. Change-Id: I992cf0b8aed895805cc003ba0980d2c9e92c985b Signed-off-by: François Gaffie <francois.gaffie@intel.com>
* Refactor AudioPolicyManagerJean-Michel Trivi2015-02-181-8/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | AudioPolicyManager implementation is now split into the following files: files managerdefault/Gains.* class AudioGain class VolumeCurvePoint class StreamDescriptor files managerdefault/Devices.* class DeviceDescriptor class DeviceVector files managerdefault/Ports.* class AudioPort class AudioPortConfig class AudioPatch files managerdefault/IOProfile.* class IOProfile files managerdefault/HwModule.* class HwModule files managerdefault/AudioInputDescriptor.* class AudioInputDescriptor files managerdefault/AudioOutputDescriptor.* class AudioOutputDescriptor All files for libaudiopolicyservice are moved under service/ All files for libaudiopolicymanager are moved under manager/ Change-Id: I43758be1894e37d34db194b51a19ae24461e066e
* make libserviceutility a shared libChong Zhang2015-01-071-3/+3
| | | | | | | | so that we have only one getpid_cached in mediaserver process bug: 18919657 Change-Id: Iff3cd932c9110e874b3885f79705f49bf3e3f1fc
* Add sound trigger control by audio policyEric Laurent2014-08-051-2/+3
| | | | | | | | | | | | | | | | | Audio policy: - Added active capture indication to sound trigger service: recognition stops if concurrent capture is not supported. - Added generation of reserved I/O handle and session ID for utterance capture. Sound trigger service - Added sound model update callback handling. - Added service state callback - Simplified callback shared memory allocation. Bug: 12378680. Change-Id: Ib0292c2733e6df90fdae480633dd9953d0016ef1
* Remove execute bitGlenn Kasten2014-07-211-0/+0
| | | | Change-Id: I1cf0c0d9375779b3074af12f4cbf9c1ec07bf4ff
* frameworks: av: services: audiopolicy: Added AudioPolicyEffectsbryant_liu2014-07-011-1/+2
| | | | | | Manage pre- and postprocessing effects defined in audio_effects.conf Change-Id: Idea1478e3d434f8ff66907adb3c77663db78d583
* audio policy: use factory to create audio policy managerEric Laurent2014-06-101-1/+15
| | | | | | | | Use the class factory to create the audio policy mamager instead of AudioPolicyManager class constructor and use a pointer to an AudioPolicyInterface. Change-Id: Ibb5a8eee5d597db67cf13f279c909181cfee9949
* audio policy: enable use of new AudioPolicyManagerEric Laurent2014-05-221-3/+0
| | | | | | | | | | | | Do not define USE_LEGACY_AUDIO_POLICY by default. By default, all devices will now use the new audio policy implementation in AudioPolicyManager.cpp To continue using the legacy audio policy implemented by AudioPolicyManagerBase in libhardware_legacy a device should define USE_LEGACY_AUDIO_POLICY in its makefile. Change-Id: I7b8cac3cbb24b11105ba6233501c7212f5985727
* audio policy: split audio policy libraryEric Laurent2014-05-211-4/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Split audio policy library into a service part and a policy part. This will allow OEMs to customize the policy part: - libaudiopolicyservice for the service. - libaudiopolicymanager for the policy. Two build options can be defined in device make file to select the policy library: - USE_LEGACY_AUDIO_POLICY = 1: this will use the legacy policy in hardware/libhardware_legacy implemented by AudioPolicyManagerBase class. This policy is loaded as a harware module and exposes the audio policy HAL defined in include/hardware/audio_policy.h and is in a library called audio_policy.XXX.so (e.g audio_policy.default.so) The legacy HAL will not be updated with new features. If USE_LEGACY_AUDIO_POLICY is not defined, the policy is implemented by a class named AudioPolicyManager exposing an interface defined in AudioPolicyInterface.h. The corresponding library is libaudiopolicymanager.so. New features will be added only to AudioPolicyInterface.h The default implementation is provided here in file AudioPolicyManager.cpp OEMs wanting to cutomize the policy can implement the AudioPolicyManager class and provide the libaudiopolicymanager.so library. In this case the device make file should define: - USE_CUSTOM_AUDIO_POLICY = 1 For now, USE_LEGACY_AUDIO_POLICY = 1 is forced in audio policy service make file. This will be removed when the new audio policy is enabled. Change-Id: I066799dacc9b182b468a43d48ff7798c9109a414
* audio policy: add option to use new policy managerEric Laurent2014-03-181-2/+14
| | | | | | | | | | | | | | | | | Add build option USE_LEGACY_AUDIO_POLICY to use either new audio policy manager in local AudioPolicyManager.cpp or the legacy AudioPolicyManagerBase.cpp via the policy HAL. New features will be implemented only by the new audio policy manager. Platform customiization will be by config file or new policy HAL. AudioPolicyClientImplLegacy.cpp copied from AudioPolicyClientImpl.cpp AudioPolicyInterfaceImplLegacy.cpp copied from AudioPolicyInterfaceImpl.cpp New implementations of AudioPolicyInterface and AudioPolicyClient talking directly to AudioPolicyManager. Change-Id: I7a320883a1de13de2c9295343e996addf2f3c154
* audio policy: split implementationEric Laurent2014-03-111-2/+4
| | | | | | | | | | | | | | | Split audio policy service implementation to ease further evolution: AudioPolicyInterfaceImpl.cpp contains the implementation of IAudioPolicyService interface AudioPolicyClientImpl.cpp contains the implementation of the AudioPolicyManager client interface AudioPolicyService.cpp contains the rest of the code mostly command threads implementation and pre processing management. AudioPolicyService.cpp: Change-Id: Ic48ba165532ef66e84a30894d01f750ed6619d02
* move audio policy service to a separate libraryEric Laurent2014-03-111-0/+30
Change-Id: Ibc3ef07aa9860b7fd4f9aaff27b0dbe0dcbf1cbf