audio policy: fix gapless playback when effects enabled

Do not allow offloading if one non offloadable effect is enabled. This prevents from
creating an offloaded track and tearing it down immediately after start when audioflinger
detects there is an active non offloadable effect.
Not doing so breaks gapless playback because AwesomePlayer will always be able to open
an offloaded track which will not be compatible with the previous PCM track and
Audiosink::open() will not recycle it.

Bug: 11181933.
Change-Id: I6d163806849d9093b9ec701ba8e8c1ccb658e3c8
merge in klp-release (no-op)
Merge "audio policy: fix gapless playback when effects enabled" into klp-dev
Define and use DRC-specific volume curves when applicable

Add support for property defining whether a DRC on the speaker path
 is enabled and will boost soft sounds.
Define new volume curves with more attenuations than existing ones
 to compensate for DRC-induced boost on sonification sounds to
 provide a more "linear" control to the user over the applied volume.

Bug 11600699

Change-Id: If23dd097a8b9b5ebb61e75dd8512ff75e63ba899
Merge tag 'android-4.4.1_r1' into HEAD

Android 4.4.1 Release 1

Conflicts:
	audio/AudioPolicyManagerBase.cpp

Change-Id: I89ac037649e05540e85f7497e416f85032210776
[HACK] fix ringtone temporarily until proper solution is found (paulb-nl)

Change-Id: Ib4e9ff3459b7cb59a8419c26cbec6d8789ede2e5
audio: Disable sonification on digital USB outputs

 * We don't want to hear touch sounds on our badass USB DACs. Just
   play the damn music, please :)

Change-Id: I08b1c5d672d853fc7116c03cd77b8828881d3a5b
Merge branch 'cm-11.0' of https://github.com/CyanogenMod/android_hardware_libhardware_legacy into cm-11.0
audio: fix offload enabling test parameter

passing NULL as the default to property_get doesn't return false,
it returns random memory junk that evaluates to true... Explicitly
default the state of this property to "false" as a default

Change-Id: Ib2808bf2540b2b4fdf754d489fb44aa5d9e061a8
Merge branch 'cm-11.0' of https://github.com/CyanogenMod/android_hardware_libhardware_legacy into cm-11.0
audio: fix for multi-channel HDMI playback

- Overwrite playback flag to AUDIO_OUTPUT_FLAG_DIRECT
  for PCM_16_BIT multi-channel clips so that HDMI
  profile is used for playback.

Change-Id: Ibf295f506e6ec62ffbd79091361793c18213d494
libhardware: Fix merge damage which was breaking direct output

Change-Id: Ic247e590039c20ace09ed3a19f61e263b1410e96
audio: Do not allow Compress offload mode for AV streaming content

Add system property check to use compress offload mode or not for
audio+video streaming content.

Change-Id: I10aa22995d2d1320b41f58ff9bb2303787c9d40d
CRs-fixed: 587600
audio: Add support for DOLBY DD+ decoding

- Add DOLBY AC3/EAC3 format enums
- Use offload profile for DOLBY decoding
  regardless of duration

Change-Id: I2c9738fa34635304aeca8fb529dbe8c2aa5e528d
audio: Add support for compressed VoIP

Add changes needed to enable VoIP calls using compressed
audio formats.

Change-Id: I7ebdfa1c2cc9b97666c7d8392b5e6ebd9b477184
AudioPolicyManagerBase : MUTE_TIME_MS reduced to 500ms

 - Some streams are muted while the audio path
   is switched for different device switch like
   BT, Headset, AOS and HDMI etc. Audio drop is
   observed for more than 3-4 secs. So tuning
   this macro for better results.

Change-Id: I8bb0b6f5eb5e526b755fce97f31a3f8f6dd22064
CRs-fixed: 572654
libhardware_legacy: Clean up all the audio ifdefs

 * Remove duplicates and differentiate between legacy targets

Change-Id: Iad22875513846b16fa1e5d602d3fd4289d5fbde2
Merge branch 'cm-11.0' of https://github.com/CyanogenMod/android_hardware_libhardware_legacy into cm-11.0
audio :Make isVirtualInputDevice as protected method

- startInput is overridden in AudioPolicyManagerALSA and is
  making a call to isVirtualInputDevice which is private in
  AudioPolicyManagerBase.
- Make isVirtualInputDevice as protected in base class so
  that it can be called from the derived class

Change-Id: I7e499b0c06f9412bc191179d497298cd57af2c3a
CRs-Fixed: 591788
Merge branch 'cm-11.0' of git://github.com/CyanogenMod/android_hardware_libhardware_legacy into cm-11.0