[WebRTC]Upgrade to 145.8.0#1148
Conversation
📝 WalkthroughWalkthroughThis PR updates the stream-video-swift-webrtc dependency from version 145.6.0 to 145.8.0 across all build configuration files (SwiftPM, CocoaPods, and Xcode project), and documents a fix for an AVAudioEngine initialization failure in the changelog. ChangesWebRTC Dependency Update to 145.8.0
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@CHANGELOG.md`:
- Line 7: The "Fixed" heading under the "# Upcoming" section is using a triple-#
level ("### 🐞 Fixed") which jumps heading levels and triggers MD001; change the
"### 🐞 Fixed" line to a second-level heading "## 🐞 Fixed" so it directly
follows "# Upcoming" correctly and preserves markdown heading hierarchy; locate
the lines containing the "# Upcoming" heading and the "### 🐞 Fixed" heading to
make this adjustment.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: ce6e6b3b-8140-4e8e-8316-1c337b2c14ab
⛔ Files ignored due to path filters (1)
Sources/StreamVideo/Generated/SystemEnvironment+Version.swiftis excluded by!**/generated/**
📒 Files selected for processing (5)
CHANGELOG.mdPackage.swiftStreamVideo-XCFramework.podspecStreamVideo.podspecStreamVideo.xcodeproj/project.pbxproj
| # Upcoming | ||
|
|
||
| ### 🔄 Changed | ||
| ### 🐞 Fixed |
There was a problem hiding this comment.
Fix heading level increment in the Upcoming section.
Line [7] jumps from # Upcoming to ###, which triggers MD001 and can break markdown structure expectations in tooling.
Proposed fix
-### 🐞 Fixed
+## 🐞 Fixed📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| ### 🐞 Fixed | |
| ## 🐞 Fixed |
🧰 Tools
🪛 markdownlint-cli2 (0.22.1)
[warning] 7-7: Heading levels should only increment by one level at a time
Expected: h2; Actual: h3
(MD001, heading-increment)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@CHANGELOG.md` at line 7, The "Fixed" heading under the "# Upcoming" section
is using a triple-# level ("### 🐞 Fixed") which jumps heading levels and
triggers MD001; change the "### 🐞 Fixed" line to a second-level heading "## 🐞
Fixed" so it directly follows "# Upcoming" correctly and preserves markdown
heading hierarchy; locate the lines containing the "# Upcoming" heading and the
"### 🐞 Fixed" heading to make this adjustment.
SDK Size
|
Public Interface🚀 No changes affecting the public interface. |
|



🔗 Issue Links
Resolves https://linear.app/stream/issue/IOS-1725/bugaudio-issue
🎯 Goal
Fix an AudioEngine/WebRTC regression where joining a call muted can break both sending and receiving audio.
The issue happens when muted speech detection enables recording-always-prepared mode before WebRTC registers its audio transport. In that order, WebRTC rejects the transport registration with
Failed to set audio transport since media was active, then repeatedly logsInvalid audio transport.📝 Summary
🛠 Implementation
The fix is in the WebRTC fork. When
AudioEngineDevice::RegisterAudioCallbackneeds to temporarily stop an already active audio buffer, it now also clears persistent recording state before registering the audio transport.This allows
AudioDeviceBuffer::RegisterAudioCallbackto succeed, after which the previous AudioEngine state is restored.The iOS SDK pulls in the fixed WebRTC artifact/version.
🎨 Showcase
N/A
Failed to set audio transport since media was activeand repeatedInvalid audio transport; audio send/receive failed.🧪 Manual Testing Notes
Before the fix:
RegisterAudioCallback while active. Restarting audio buffer.Failed to set audio transport since media was activeInvalid audio transportAfter the fix:
Failed to set audio transport since media was activeor repeatedInvalid audio transport.Regression comparison:
☑️ Contributor Checklist
Summary by CodeRabbit
Bug Fixes
Chores