| Index: webrtc/modules/audio_device/ios/objc/RTCAudioSession+Configuration.mm
|
| diff --git a/webrtc/modules/audio_device/ios/objc/RTCAudioSession+Configuration.mm b/webrtc/modules/audio_device/ios/objc/RTCAudioSession+Configuration.mm
|
| index 7b0bb586396860bd558aa48073c5db52d4d1feb0..83320b62f08d52a5f4bf5c23a78a30b7d8dcfb54 100644
|
| --- a/webrtc/modules/audio_device/ios/objc/RTCAudioSession+Configuration.mm
|
| +++ b/webrtc/modules/audio_device/ios/objc/RTCAudioSession+Configuration.mm
|
| @@ -49,7 +49,8 @@
|
| }
|
| }
|
|
|
| - if (self.sampleRate != configuration.sampleRate) {
|
| + // self.sampleRate is accurate only if the audio session is active.
|
| + if (!self.isActive || self.sampleRate != configuration.sampleRate) {
|
| NSError *sampleRateError = nil;
|
| if (![self setPreferredSampleRate:configuration.sampleRate
|
| error:&sampleRateError]) {
|
| @@ -59,7 +60,9 @@
|
| }
|
| }
|
|
|
| - if (self.IOBufferDuration != configuration.ioBufferDuration) {
|
| + // self.IOBufferDuration is accurate only if the audio session is active.
|
| + if (!self.isActive ||
|
| + self.IOBufferDuration != configuration.ioBufferDuration) {
|
| NSError *bufferDurationError = nil;
|
| if (![self setPreferredIOBufferDuration:configuration.ioBufferDuration
|
| error:&bufferDurationError]) {
|
|
|