diff options
author | Andy Hung <hunga@google.com> | 2014-07-29 23:52:28 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2014-07-29 21:36:00 +0000 |
commit | 8b685b9e56cc207d44b08d124148e7d752ef2241 (patch) | |
tree | bd05bd91ffe8ba1d0e0200884448d0de8d5c60b6 | |
parent | a4daf0b4f934b800a49f199fb8c09409391c8fc0 (diff) | |
parent | 9a60538b9ee2b097770dcd378281b31f4218ae56 (diff) | |
download | frameworks_av-8b685b9e56cc207d44b08d124148e7d752ef2241.zip frameworks_av-8b685b9e56cc207d44b08d124148e7d752ef2241.tar.gz frameworks_av-8b685b9e56cc207d44b08d124148e7d752ef2241.tar.bz2 |
Merge "Update multichannel audio policy handling" into lmp-dev
-rw-r--r-- | services/audiopolicy/AudioPolicyManager.cpp | 6 | ||||
-rw-r--r-- | services/audiopolicy/AudioPolicyManager.h | 5 |
2 files changed, 6 insertions, 5 deletions
diff --git a/services/audiopolicy/AudioPolicyManager.cpp b/services/audiopolicy/AudioPolicyManager.cpp index 37f8513..90baa9e 100644 --- a/services/audiopolicy/AudioPolicyManager.cpp +++ b/services/audiopolicy/AudioPolicyManager.cpp @@ -5574,12 +5574,14 @@ audio_channel_mask_t AudioPolicyManager::AudioPort::pickChannelMask() const return channelMask; } +/* format in order of increasing preference */ const audio_format_t AudioPolicyManager::AudioPort::sPcmFormatCompareTable[] = { AUDIO_FORMAT_DEFAULT, AUDIO_FORMAT_PCM_16_BIT, AUDIO_FORMAT_PCM_8_24_BIT, AUDIO_FORMAT_PCM_24_BIT_PACKED, AUDIO_FORMAT_PCM_32_BIT, + AUDIO_FORMAT_PCM_FLOAT, }; int AudioPolicyManager::AudioPort::compareFormats(audio_format_t format1, @@ -5621,7 +5623,9 @@ audio_format_t AudioPolicyManager::AudioPort::pickFormat() const } audio_format_t format = AUDIO_FORMAT_DEFAULT; - audio_format_t bestFormat = BEST_MIXER_FORMAT; + audio_format_t bestFormat = + AudioPolicyManager::AudioPort::sPcmFormatCompareTable[ + ARRAY_SIZE(AudioPolicyManager::AudioPort::sPcmFormatCompareTable) - 1]; // For mixed output and inputs, use best mixer output format. Do not // limit format otherwise if ((mType != AUDIO_PORT_TYPE_MIX) || diff --git a/services/audiopolicy/AudioPolicyManager.h b/services/audiopolicy/AudioPolicyManager.h index ec94144..e28a362 100644 --- a/services/audiopolicy/AudioPolicyManager.h +++ b/services/audiopolicy/AudioPolicyManager.h @@ -53,10 +53,7 @@ namespace android { #define OFFLOAD_DEFAULT_MIN_DURATION_SECS 60 #define MAX_MIXER_SAMPLING_RATE 48000 -#define MAX_MIXER_CHANNEL_COUNT 2 -// See AudioPort::compareFormats() -#define WORST_MIXER_FORMAT AUDIO_FORMAT_PCM_16_BIT -#define BEST_MIXER_FORMAT AUDIO_FORMAT_PCM_24_BIT_PACKED +#define MAX_MIXER_CHANNEL_COUNT 8 // ---------------------------------------------------------------------------- // AudioPolicyManager implements audio policy manager behavior common to all platforms. |