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
Revert "libhardware_legacy: Clean up all the audio ifdefs"

This reverts commit 41f1ad76ef5e8bdaeb28b68af8b2a034131560f8.
Merge remote-tracking branch 'cm/cm-11.0' into kk-4.4

Conflicts:
	audio/Android.mk
	audio/AudioPolicyManagerBase.cpp