These 60 commits are when the Protocol Buffers files have changed:
| Commit: | 29acfef | |
|---|---|---|
| Author: | Pratim Mallick | |
| Committer: | GitHub | |
Honor SFU-provided degradation preference for adaptive video publishing (#1699) * feat(core): pick up SFU DegradationPreference and add WebRTC mapper Regenerate SFU protos to pick up the new DegradationPreference enum and its degradation_preference fields on PublishOption and VideoSender (plus TrackInfo.self_sub_audio_video), and refresh the public API dump. Add toRtcDegradationPreference() converting the SFU enum to org.webrtc.RtpParameters.DegradationPreference, returning null for UNSPECIFIED so callers can keep the current value. Includes unit tests covering every enum variant. Co-authored-by: Cursor <cursoragent@cursor.com> * publisher changes for applying degradation preferences * Remove duplicate handling of ChangePublishQualityEvent from callState. This event directly gets handled by RtcSession handleEvent method * Added test for the two call sites where degradation Preference is getting set to test for the case where sfu sends the same degrdation preference which is already set in the transcevier sender param --------- Co-authored-by: Cursor <cursoragent@cursor.com>
The documentation is generated from this commit.
| Commit: | 799baec | |
|---|---|---|
| Author: | Rahul Kumar Lohra | |
| Committer: | GitHub | |
Improve pinned participant state on rejoin with new session (#1683) * update sfu models * feat: add pins param in ParticipantJoinedEvent * feat: add logic with logs * feat: remove logs * fix: correct the jetpack compose logic to render pinned icon * fix: remove logs * chore: revert changes * chore: revert changes * chore: remove finally * fix: fix unit tests * feat: update codebase with develop * chore: align with JS logic * fix: refactor pins ownership, move them to PinManager * fix: add unit-tests * fix: remove duplicate code * chore: add logic to updateServer Pins from list of participants with pin information * chore: refactor code * chore: Replace PinUpdateAtTime with PinEntry --------- Co-authored-by: Aleksandar Apostolov <apostolov.alexandar@gmail.com>
| Commit: | 97f19f4 | |
|---|---|---|
| Author: | rahullohra | |
| Committer: | rahullohra | |
update sfu models
| Commit: | 39e92e1 | |
|---|---|---|
| Author: | Pratim Mallick | |
| Committer: | GitHub | |
Add support for stereo playback (#1560) * Update to latest proto * Send stereo = true in Audio track's TrackInfo if hifi is enabled in dashboard * fix: microphone not getting enabled if we join with USAGE_MEDIA mode * Provide a way to set the audio usage from app to call.speaker - it can be either VOICE_COMMUNICATION or MEDIA * Provide a way on the debug option menu to switch between usage_media and usage_voice_communication * Expose the audioDeviceModule from peerConnectionFactory * Apply spotless * Upgraded to webrtc version that supports switching audio usage mid call * api dump * Dont send stereo = true in trackInfo while publishing. This will be done when adding stereo capture to recording feature * Added unit tests to test the audioUsage stateFlow of SpeakerManager * refactor(demo-app): simplify onToggleAudioUsage by removing suspend modifier * Fix: `setAudioUsage` of speakerManager does not work if called before any remote track has come in. Updated to webrtc which has the fix for this. --------- Co-authored-by: Aleksandar Apostolov <apostolov.alexandar@gmail.com>
| Commit: | 383e41d | |
|---|---|---|
| Author: | pratimmallick | |
Update to latest proto
| Commit: | 637f3ff | |
|---|---|---|
| Author: | rahullohra | |
chore: merge with develop and refactor
| Commit: | e8140b9 | |
|---|---|---|
| Author: | Aleksandar Apostolov | |
| Committer: | GitHub | |
Add participant source to the ParticipantState and sort with it (#1523)
| Commit: | ca9ad26 | |
|---|---|---|
| Author: | Aleksandar Apostolov | |
| Committer: | GitHub | |
Pause incoming video if network conditions are bad (#1479) * SDP offers should be processed serially * Fix wildcard * Add new SFU events * Pause videos when the network conditions are bad * ApiDump * Improve livestream player when working with the video "pause" * Spotless * Fix compile * Update audio usage in demo-app for livestreams * Update audio usage in demo-app for livestreams * Update example in demo-app * Spotless * Spotless * Do not stop channel
| Commit: | d766317 | |
|---|---|---|
| Author: | Aleksandar Apostolov | |
Add new SFU events
| Commit: | 3a2a7ed | |
|---|---|---|
| Author: | Aleksandar Apostolov | |
Reconnect improvements
| Commit: | d01b9d2 | |
|---|---|---|
| Author: | Aleksandar Apostolov | |
| Committer: | GitHub | |
Allow for the SDK to collect RTC stats if configured (#1445) * RTC stats impl * spotless & apidump * Add the ability to delta PC stats * spotless * spotless * Min subscriber extract * Working subscriber extract * cleanup * moved tracks * move trackDimensions initial * move trackDimensions initial * moving subscriptions and delegating track override handler * renaming and encapsulation * fully decoupled subscriber * added viewport id * take viewport id into account * Update test and fix order of arguments * initial test * initial test * Spotless & api dump * api dump * Spotless * Fix test * PC stats * Fix subscriber mixup of video and screenshare track * Add RTC stats * Use key instead of hardcoded text * add create for both PRs * Add initial rtc stats delta * Add onTrack tracing * Spotless & Api dump * Spotless & Api dump * Mark as internal, rename variables to avoid confusion * move variable to top * rename variable and make method private * Send the events as Json * update tests with the tracers * update publisher tests with the tracers * Fix timestamps and delta rtcs stats * Fix timestamps and delta rtcs stats * Fix timestamps and delta rtcs stats * ontrack based on peer connection type * spotless * include reconnectionAttempt number in the tracer id * Add tests * Add tests * Add more tests * Update stream-video-android-core/src/main/kotlin/io/getstream/video/android/core/call/RtcSession.kt Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Use the tracermanager in the SFU connection module * Add internal annotations and fix typo * ApiDump --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
| Commit: | 46a8060 | |
|---|---|---|
| Author: | Aleksandar Apostolov | |
Add the ability to delta PC stats
| Commit: | d2fcdd1 | |
|---|---|---|
| Author: | Aleksandar Apostolov | |
| Committer: | GitHub | |
[AND-18] Codec negotiation (#1261) * New publisher * map svc codec correctly * Set codec * Send correct layers * Spotless & Api dump * Correctly update, publish options, send all three layers correctly, respect `shouldRetry` when set publisher fails, send preferred options on reconnect or migrate * Spotless and apidump * Remove unnecessary tests * Make the layers functions internal * Api dump * Remove code * Correctly compute encodings and layers based on spatial layers, add test * Remove unused code in transceiver cache and add tests * Remove old dynascale test * Remove lscale test, add mini publisher test * Spotless & ApiDump and import cleanup * Additional cleanup * Update on layer calculation and tests * Add codec to track info. * Spotless & ApiDump * Remove transceiver when stream is unpublished * Log encodings * Spotless ApiDump * Spotless ApiDump * Do not calculate layers for audio tracks * Spotless * Update initial screenshare resolution * Use PCF from call * Send publish options Id with the track info * Api dump * Cache publisher events in case publisher is not created yet. * setTrack instead of add new transceiver when there is already publish option available for that kind of track * remove commented code * Update package name of video layers * Update package in test * Update publisher tests * Minimal SPC test * Spotless & Apidump * Add minimal SPC Factory tests * Fix wildcard imports * Spotless & ApiDump * Add SPC test for the init parameters * Add more tests for RTC session * Remove wildcard imports * Remove wildcard imports * Reformatting * Fix failing tests * Formatting * Add change quality test * Spotless & ApiDump * Correctly test empty encodings * Formatting
| Commit: | 2fe09db | |
|---|---|---|
| Author: | Aleksandar Apostolov | |
Send publish options Id with the track info
| Commit: | 65791ee | |
|---|---|---|
| Author: | Aleksandar Apostolov | |
Add codec to track info.
| Commit: | 30b036a | |
|---|---|---|
| Author: | Aleksandar Apostolov | |
Update proto models
| Commit: | a3b4321 | |
|---|---|---|
| Author: | Liviu Timar | |
Update protobuf definitions
| Commit: | 1bb5618 | |
|---|---|---|
| Author: | Aleksandar Apostolov | |
| Committer: | GitHub | |
[AND-157] Send thermal state of the device to the SFU (#1245) * Update SFU events * Update API * Send thermal state to the SFU
| Commit: | 93064d7 | |
|---|---|---|
| Author: | Liviu Timar | |
| Committer: | Liviu Timar | |
Add new proto defs
| Commit: | 6c06ce4 | |
|---|---|---|
| Author: | Aleksandar Apostolov | |
| Committer: | GitHub | |
Reconnect v2 (#1219) * Initial socket from chat implementation * Authenticate on connected in coordinator socket. * Spotless * Migrate `CoordinatorSocket` * Spotless and API dump * Fix an issue where StreamCallActivity would leave the call when going into background * Initial reconnect V2 implementation * API dump * Spotless * Correct JoinRequest * [WIP] Refactored Coordinator and SFU sockets * Update correct type for SfuSocketStateEvent * Update state in Connection module, package renaming * Resolve merge conflicts * Continue refactoring * Add connection common implementation * Keep refactoring the SFU socket * Merge conflicts * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Update * Spotless & ApiDump * Adapt for the new token provider * Update tests * Spotless apidump * Update * Sotless api dump * Update * Spotless * Move call health monitor into call * Spotless * Update * Revert "Update" This reverts commit fdd64d22c402864805f95f17dc7a84674089e885. * Revert "Spotless" This reverts commit e064aa9016c51e0a46738b54e97a654ab1ba94e2. * Revert "Move call health monitor into call" This reverts commit c0d260f4b43fc845ee41a75601848fe06aabb339. * Revert "Spotless" This reverts commit 0c445e32bcce3161c6eda0d350f040950617d6f8. * Revert "Update" This reverts commit 084bf883771a5e970414358d5183fa6d117d0397. * Revert "Sotless api dump" This reverts commit 0be905df37b03f1168104ff3968ad7108cf2cfb6. * Revert "Update" This reverts commit b73572cb663de58d65dfa3a8f0a0d66fb382d233. * Update * Spotless * Update * Update * Update * Update * Update * Update * Update * Add timeout to the scheduled jobs * Update tests * Update tests * Add missing dependencies * Add javadoc, make some methods internal, remove myself when rejoin to speedup participant list update * Add javadoc, make some methods internal, remove myself when rejoin to speedup participant list update * Add javadoc, make some methods internal, remove myself when rejoin to speedup participant list update * Rejoin if PC state is FAILED * Try fast reconnect instead. * Cancel previous job instead * Synchronize the job handling process
| Commit: | d0a54b4 | |
|---|---|---|
| Author: | Liviu Timar | |
| Committer: | Liviu Timar | |
Add new proto defs for SFU events
| Commit: | a15ec4d | |
|---|---|---|
| Author: | Kanat Kiialbaev | |
| Committer: | GitHub | |
[PBE-3907] Update SDK to handle missed call notifications (#1105)
| Commit: | f76e503 | |
|---|---|---|
| Author: | Liviu Timar | |
| Committer: | GitHub | |
Add call stats reporting (#1030)
| Commit: | 0b6e6b2 | |
|---|---|---|
| Author: | Daniel Novak | |
| Committer: | GitHub | |
Fast-Reconnect support (#822)
| Commit: | 9c4b955 | |
|---|---|---|
| Author: | Thierry Schellenbach | |
update to latest openapi
| Commit: | 7f12227 | |
|---|---|---|
| Author: | Thierry Schellenbach | |
update to latest openapi spec
| Commit: | 0a19ecc | |
|---|---|---|
| Author: | Tommaso Barbugli | |
make sure old proto files are purged when regenerating
| Commit: | 4096c9d | |
|---|---|---|
| Author: | Thierry Schellenbach | |
merge
| Commit: | d570305 | |
|---|---|---|
| Author: | Thierry Schellenbach | |
wip
| Commit: | 9620ad5 | |
|---|---|---|
| Author: | TGazica | |
Merge remote-tracking branch 'origin/update/proto' into task/protocol-update # Conflicts: # stream-video-android-core/api/stream-video-android-core.api # stream-video-android-core/src/main/proto/video/sfu/event/events.pb.go # stream-video-android-core/src/main/proto/video/sfu/models/models.pb.go # stream-video-android-core/src/main/proto/video/sfu/models/models.proto # stream-video-android-core/src/main/proto/video/sfu/models/models_vtproto.pb.go
| Commit: | 8d3c1f4 | |
|---|---|---|
| Author: | TGazica | |
Update models and protos
| Commit: | 47ea323 | |
|---|---|---|
| Author: | skydoves | |
Remove unused files and update sfu
| Commit: | f84e239 | |
|---|---|---|
| Author: | skydoves | |
Update proto
| Commit: | bc7bf1e | |
|---|---|---|
| Author: | filbabic | |
Module restructuring
| Commit: | 1bb7ce0 | |
|---|---|---|
| Author: | Filip Babic | |
Update proto, clean up audio levels, add connection quality state update and partial participant load
| Commit: | c81f7f9 | |
|---|---|---|
| Author: | TGazica | |
Fix style referencing
| Commit: | 4768052 | |
|---|---|---|
| Author: | Filip Babic | |
Update proto to latest
| Commit: | 29c2c9d | |
|---|---|---|
| Author: | Filip Babic | |
Proto, SFU & track fixes
| Commit: | ac2867b | |
|---|---|---|
| Author: | Filip Babic | |
More work on proto & SFU flow
| Commit: | b96fdd2 | |
|---|---|---|
| Author: | Filip Babic | |
WIP SFU update to latest
| Commit: | 4f083b0 | |
|---|---|---|
| Author: | Filip Babic | |
Update proto to latest
| Commit: | b4b2885 | |
|---|---|---|
| Author: | Filip Babic | |
Proto update, tons of API cleanup and improvements
| Commit: | 1ad3bd2 | |
|---|---|---|
| Author: | Filip Babic | |
Proto update to latest, added mute change events
| Commit: | d051e36 | |
|---|---|---|
| Author: | kanat | |
[50] Fix race condition during join flow
| Commit: | ef127eb | |
|---|---|---|
| Author: | Filip Babic | |
WIP SFU update
| Commit: | 0ddbc7e | |
|---|---|---|
| Author: | Filip Babic | |
Update proto & coord/sfu
| Commit: | abfd79a | |
|---|---|---|
| Author: | Filip Babic | |
WIP update proto & BE stuff, readme update
| Commit: | 1ee3fa2 | |
|---|---|---|
| Author: | Filip Babic | |
Update proto, imports, types and bits of logic, left TODOs for cleanup
| Commit: | 6d53f1d | |
|---|---|---|
| Author: | Filip Babic | |
Add codec support for Join request, update to latest BE
| Commit: | cbed49a | |
|---|---|---|
| Author: | Filip Babic | |
WIP rendering on Android
| Commit: | c311f4b | |
|---|---|---|
| Author: | Filip Babic | |
WIP SFU implementation
| Commit: | eeab7db | |
|---|---|---|
| Author: | Filip Babic | |
Auth cleanup, new credentials, WS auth payload update
| Commit: | 71f6aae | |
|---|---|---|
| Author: | Filip Babic | |
Api dump
| Commit: | 9605a3e | |
|---|---|---|
| Author: | Filip Babic | |
Update to proto, code cleanup, new events flow implemented, wrapped LK
| Commit: | 29ea3a0 | |
|---|---|---|
| Author: | Filip Babic | |
Update BE definition, remove VideoParser
| Commit: | 31be604 | |
|---|---|---|
| Author: | Filip Babic | |
Add lifecycle and WS connection logic, more docs, updated proto
| Commit: | d404ca7 | |
|---|---|---|
| Author: | filbabic | |
Add compose, some login setup
| Commit: | 4637c7c | |
|---|---|---|
| Author: | Filip Babic | |
Added basic API communication, package rename/restructure
| Commit: | c19a41f | |
|---|---|---|
| Author: | Filip Babic | |
Renamed module, sorted out packages
| Commit: | b2ca60c | |
|---|---|---|
| Author: | Filip Babic | |
Initial setup for protobufs Kotlin