| Index: webrtc/modules/audio_device/android/audio_device_template.h
 | 
| diff --git a/webrtc/modules/audio_device/android/audio_device_template.h b/webrtc/modules/audio_device/android/audio_device_template.h
 | 
| index dc32feffab64935cd71b141be880ad3c03ab4134..09706595a9dff7709f5d3c55e7055d21e0c884f6 100644
 | 
| --- a/webrtc/modules/audio_device/android/audio_device_template.h
 | 
| +++ b/webrtc/modules/audio_device/android/audio_device_template.h
 | 
| @@ -331,41 +331,48 @@ class AudioDeviceTemplate : public AudioDeviceGeneric {
 | 
|      return -1;
 | 
|    }
 | 
|  
 | 
| +  // Returns true if the audio manager has been configured to support stereo
 | 
| +  // and false otherwised. Default is mono.
 | 
|    int32_t StereoPlayoutIsAvailable(bool& available) override {
 | 
|      LOG(INFO) << __FUNCTION__;
 | 
| -    available = false;
 | 
| +    available = audio_manager_->IsStereoPlayoutSupported();
 | 
|      return 0;
 | 
|    }
 | 
|  
 | 
| -  // TODO(henrika): add support.
 | 
|    int32_t SetStereoPlayout(bool enable) override {
 | 
|      LOG(INFO) << __FUNCTION__;
 | 
| -    // Allow disabling stereo playout, as that matches returning false(0) from
 | 
| -    // StereoPlayoutIsAvailable and is the default case.
 | 
| -    return enable ? -1 : 0;
 | 
| +    bool available = audio_manager_->IsStereoPlayoutSupported();
 | 
| +    // Android does not support changes between mono and stero on the fly.
 | 
| +    // Instead, the native audio layer is configured via the audio manager
 | 
| +    // to either support mono or stereo. It is allowed to call this method
 | 
| +    // if that same state is not modified.
 | 
| +    return (enable == available) ? 0 : -1;
 | 
|    }
 | 
|  
 | 
| -  // TODO(henrika): add support.
 | 
|    int32_t StereoPlayout(bool& enabled) const override {
 | 
| -    enabled = false;
 | 
| -    FATAL() << "Should never be called";
 | 
| -    return -1;
 | 
| +    enabled = audio_manager_->IsStereoPlayoutSupported();
 | 
| +    return 0;
 | 
|    }
 | 
|  
 | 
|    int32_t StereoRecordingIsAvailable(bool& available) override {
 | 
|      LOG(INFO) << __FUNCTION__;
 | 
| -    available = false;
 | 
| +    available = audio_manager_->IsStereoRecordSupported();
 | 
|      return 0;
 | 
|    }
 | 
|  
 | 
|    int32_t SetStereoRecording(bool enable) override {
 | 
|      LOG(INFO) << __FUNCTION__;
 | 
| -    return -1;
 | 
| +    bool available = audio_manager_->IsStereoRecordSupported();
 | 
| +    // Android does not support changes between mono and stero on the fly.
 | 
| +    // Instead, the native audio layer is configured via the audio manager
 | 
| +    // to either support mono or stereo. It is allowed to call this method
 | 
| +    // if that same state is not modified.
 | 
| +    return (enable == available) ? 0 : -1;
 | 
|    }
 | 
|  
 | 
|    int32_t StereoRecording(bool& enabled) const override {
 | 
|      LOG(INFO) << __FUNCTION__;
 | 
| -    enabled = false;
 | 
| +    enabled = audio_manager_->IsStereoRecordSupported();
 | 
|      return 0;
 | 
|    }
 | 
|  
 | 
| 
 |