diff --git a/packages/stream_video/CHANGELOG.md b/packages/stream_video/CHANGELOG.md index d1b1fa336..d24372ac7 100644 --- a/packages/stream_video/CHANGELOG.md +++ b/packages/stream_video/CHANGELOG.md @@ -2,6 +2,7 @@ 🐞 Fixed * Fixed an issue where the leave call operation could fail if the there were some issues in parsing custom data. +* Fixed an issue where the Android audio configuration could not be applied correctly for participants joining the call ## 0.10.4 diff --git a/packages/stream_video/lib/src/call/session/call_session.dart b/packages/stream_video/lib/src/call/session/call_session.dart index 683349e57..fd72ad9fc 100644 --- a/packages/stream_video/lib/src/call/session/call_session.dart +++ b/packages/stream_video/lib/src/call/session/call_session.dart @@ -409,6 +409,20 @@ class CallSession extends Disposable { await onRtcManagerCreatedCallback?.call(rtcManager!); _rtcManagerSubject!.add(rtcManager!); + // Set Android audio configuration right after creating rtcManager + if (CurrentPlatform.isAndroid && + _streamVideo.options.androidAudioConfiguration != null) { + try { + await rtc.Helper.setAndroidAudioConfiguration( + _streamVideo.options.androidAudioConfiguration!, + ); + } catch (e) { + _logger.w( + () => '[start] Failed to set Android audio configuration: $e', + ); + } + } + stateManager.sfuPinsUpdated(event.callState.pins); _logger.d(() => '[start] completed');