diff options
| author | 2015-08-10 13:42:15 +0000 | |
|---|---|---|
| committer | 2015-08-10 13:42:15 +0000 | |
| commit | a2e39c6a1197f87cab2712a7776ff9022433b90a (patch) | |
| tree | 6c05c1a0736932b4a93be3e44ae727505a9d7758 | |
| parent | beda6e2b9abf576e7d33b520232d45b34a4ed168 (diff) | |
| parent | 1135457a3d656057fc65effd706ae238a5f99a50 (diff) | |
Merge "Filtering Remote-Submix and Back-mic devices from AudioDeviceInfo API." into mnc-dev
| -rw-r--r-- | media/java/android/media/AudioManager.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/media/java/android/media/AudioManager.java b/media/java/android/media/AudioManager.java index 5290cacb300c..875e7165fa81 100644 --- a/media/java/android/media/AudioManager.java +++ b/media/java/android/media/AudioManager.java @@ -3757,6 +3757,12 @@ public class AudioManager { port.role() == AudioPort.ROLE_SOURCE && (flags & GET_DEVICES_INPUTS) != 0; } + private static boolean checkTypes(AudioDevicePort port) { + return AudioDeviceInfo.convertInternalDeviceToDeviceType(port.type()) != + AudioDeviceInfo.TYPE_UNKNOWN && + port.type() != AudioSystem.DEVICE_IN_BACK_MIC; + } + /** * Returns an array of {@link AudioDeviceInfo} objects corresponding to the audio devices * currently connected to the system and meeting the criteria specified in the @@ -3779,7 +3785,7 @@ public class AudioManager { // figure out how many AudioDeviceInfo we need space for... int numRecs = 0; for (AudioDevicePort port : ports) { - if (checkFlags(port, flags)) { + if (checkTypes(port) && checkFlags(port, flags)) { numRecs++; } } @@ -3788,7 +3794,7 @@ public class AudioManager { AudioDeviceInfo[] deviceList = new AudioDeviceInfo[numRecs]; int slot = 0; for (AudioDevicePort port : ports) { - if (checkFlags(port, flags)) { + if (checkTypes(port) && checkFlags(port, flags)) { deviceList[slot++] = new AudioDeviceInfo(port); } } |