Skip to content

Pause incoming video if network conditions are bad - #1479

Merged
aleksandar-apostolov merged 14 commits into
developfrom
pause-incomming-video
Jul 28, 2025
Merged

Pause incoming video if network conditions are bad#1479
aleksandar-apostolov merged 14 commits into
developfrom
pause-incomming-video

Conversation

@aleksandar-apostolov

Copy link
Copy Markdown
Contributor

🎯 Goal

The goal of this PR is to pause incoming video in bad network conditions in order to save bandwith for the audio.

🛠 Implementation details

  1. React to new SFU events that tells the SDK which tracks are paused.
  2. Keep and update paused state per participant track.
  3. Add call api to enable/disable this feature.
  4. VideoRenderer has a new badNetworkContent which is shown in case the video.pasued == true
  5. Label is extened with a new icon to signal a bad network has caused the video to pause.
  6. Demo app now enables this feature by default and shows a banner in case there are disabled videos.

🎨 UI Changes

image

🧪 Testing

This can be tested on an emulator by changing the network options.

@aleksandar-apostolov
aleksandar-apostolov requested a review from a team as a code owner July 25, 2025 12:13
@aleksandar-apostolov aleksandar-apostolov added the pr:new-feature Adds new functionality label Jul 25, 2025
@github-actions

github-actions Bot commented Jul 25, 2025

Copy link
Copy Markdown
Contributor

SDK Size Comparison 📏

SDK Before After Difference Status
stream-video-android-core 11.40 MB 11.41 MB 0.02 MB 🟢
stream-video-android-ui-xml 5.70 MB 5.70 MB 0.00 MB 🟢
stream-video-android-ui-compose 5.86 MB 5.86 MB 0.00 MB 🟢

Comment thread demo-app/src/main/kotlin/io/getstream/video/android/ui/call/CallScreen.kt Outdated
Comment thread demo-app/src/main/kotlin/io/getstream/video/android/ui/call/CallScreen.kt Outdated

@rahul-lohra rahul-lohra left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@sonarqubecloud

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
24.6% Coverage on New Code (required ≥ 80%)

See analysis details on SonarQube Cloud

@aleksandar-apostolov
aleksandar-apostolov merged commit ca9ad26 into develop Jul 28, 2025
10 of 11 checks passed
@aleksandar-apostolov
aleksandar-apostolov deleted the pause-incomming-video branch July 28, 2025 09:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr:new-feature Adds new functionality

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants