| Index: webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioManager.java
|
| diff --git a/webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioManager.java b/webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioManager.java
|
| index 7359486a3f78a3e66abe7c02b8fd8013e32fd435..f40317b25d04b7aa3d491cfbc3ba4f58ff6468b3 100644
|
| --- a/webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioManager.java
|
| +++ b/webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioManager.java
|
| @@ -10,6 +10,7 @@
|
|
|
| package org.webrtc.voiceengine;
|
|
|
| +import android.annotation.TargetApi;
|
| import android.content.Context;
|
| import android.content.pm.PackageManager;
|
| import android.media.AudioFormat;
|
| @@ -189,20 +190,26 @@ public class WebRtcAudioManager {
|
| // No overrides available. Deliver best possible estimate based on default
|
| // Android AudioManager APIs.
|
| final int sampleRateHz;
|
| - if (!WebRtcAudioUtils.runningOnJellyBeanMR1OrHigher()) {
|
| - sampleRateHz = WebRtcAudioUtils.getDefaultSampleRateHz();
|
| + if (WebRtcAudioUtils.runningOnJellyBeanMR1OrHigher()) {
|
| + sampleRateHz = getSampleRateOnJellyBeanMR10OrHigher();
|
| } else {
|
| - String sampleRateString = audioManager.getProperty(
|
| - AudioManager.PROPERTY_OUTPUT_SAMPLE_RATE);
|
| - sampleRateHz = (sampleRateString == null)
|
| - ? WebRtcAudioUtils.getDefaultSampleRateHz()
|
| - : Integer.parseInt(sampleRateString);
|
| + sampleRateHz = WebRtcAudioUtils.getDefaultSampleRateHz();
|
| }
|
| Logging.d(TAG, "Sample rate is set to " + sampleRateHz + " Hz");
|
| return sampleRateHz;
|
| }
|
|
|
| + @TargetApi(17)
|
| + private int getSampleRateOnJellyBeanMR10OrHigher() {
|
| + String sampleRateString = audioManager.getProperty(
|
| + AudioManager.PROPERTY_OUTPUT_SAMPLE_RATE);
|
| + return (sampleRateString == null)
|
| + ? WebRtcAudioUtils.getDefaultSampleRateHz()
|
| + : Integer.parseInt(sampleRateString);
|
| + }
|
| +
|
| // Returns the native output buffer size for low-latency output streams.
|
| + @TargetApi(17)
|
| private int getLowLatencyOutputFramesPerBuffer() {
|
| assertTrue(isLowLatencyOutputSupported());
|
| if (!WebRtcAudioUtils.runningOnJellyBeanMR1OrHigher()) {
|
|
|