Index: media/audio/android/opensles_input.cc |
diff --git a/media/audio/android/opensles_input.cc b/media/audio/android/opensles_input.cc |
index 3d0079efdd997e0a698f748fab69a4455332acdb..0df5bc1ca69d0dcd7197eca93e6259daaa9ae3ac 100644 |
--- a/media/audio/android/opensles_input.cc |
+++ b/media/audio/android/opensles_input.cc |
@@ -24,8 +24,13 @@ OpenSLESInputStream::OpenSLESInputStream(AudioManagerAndroid* audio_manager, |
format_.samplesPerSec = static_cast<SLuint32>(params.sample_rate() * 1000); |
format_.bitsPerSample = params.bits_per_sample(); |
format_.containerSize = params.bits_per_sample(); |
- format_.channelMask = SL_SPEAKER_FRONT_CENTER; |
format_.endianness = SL_BYTEORDER_LITTLEENDIAN; |
+ if (format_.numChannels == 1) |
+ format_.channelMask = SL_SPEAKER_FRONT_CENTER; |
+ else if (format_.numChannels == 2) |
+ format_.channelMask = SL_SPEAKER_FRONT_LEFT | SL_SPEAKER_FRONT_RIGHT; |
+ else |
+ NOTREACHED() << "Unsupported number of channels: " << format_.numChannels; |
buffer_size_bytes_ = params.GetBytesPerBuffer(); |