0.8.15:
- Add support for cancellation tokens. GetCallAsync/JoinCallAsync/ConnectUserAsync operations can now be cancelled via CancellationToken
- call.LeaveAsync will cancel any previous in-progress join operation
- Fixed WS reconnection issue
- Improved WebSocket disconnection handling
- Added an additional callback when the video server had disconnected.
0.8.14:
- Change
call.GetLocalParticipant()to return null if local participant is not found - potential fix for missing local participant in
call.Participants - Added
client.PauseAndroidAudioPlayback()andclient.ResumeAndroidAudioPlayback()methods to stop/resume all audio played by the SDK on Android. This is for better handling when the app is minimized.
0.8.13:
- Fix
call.Participantssometimes not containing the local participant.
0.8.12:
- Better handling of
LeaveCallAsync. This should solve the "LeaveCallAsynctakes a long time sometimes" - Respect video resolution set via SelectDevice. Previously, the broadcast video resolution was fixed.
- Potential crash fix in the native plugin
- Improvement to the broadcasted video handling - this can potentially improve video performance for watching users
0.8.11:
- Fix
NullReferenceExceptioninSubscribeToTracksAsync - Revert kicking the user out of the call when the SFU WebSocket disconnects
0.8.10:
- Fix
track.EnabledChangednot firing for the first change
0.8.9:
- Fix
_videoTrack.EnabledChangecallback - Add
the IStreamCall.ParticipantCount- presents participants count to any call size (IStreamCall.Participantsshows first 250 participants) - Fix participant leaving the call not being immediately signaled to other users
0.8.8:
- Add stats and debug info monitoring - this will be available to browse in our new dashboard for debugging purposes
- Fix
InvalidOperationException: Collection was modifiedwhen the call object is updated - Fix the black screen appearing for a watcher user when the broadcaster disables the video track before leaving the call and enables it when entering the call
0.8.7:
- Upgraded internal com.unity.webrtc package to the latest version
- The most important change here is "Support 16kb pagesizes for Android"
0.8.6:
- Optimized video track
- Fixed clearing participants tracks allocations
- Improve participant leaving the call detection -> other users will be immediately notified if the leaving user left gracefuly
- Fix Android crash in the C++ layer when the AudioTrackSinkAdapter destructor is called
0.8.5:
- Fix
ArgumentNullException: Value cannot be null. Parameter name: value in UserIdexception when buildingTrackSubscriptionDetails
0.8.4:
- Fix user muting -> previously, a muted audio track would break permanently
- Add
call.MuteSelf(audio: true, video: false, screenShare: false))andcall.MuteOthers(audio: true, video: false, screenShare: false)helpers methods for easier muting of self or others' audio/video tracks - Optimize + reduce build size
- Enabled built-in, hardware echo cancellation capabilities. This affects modern devices with the built-in AEC module.
0.8.3
- Enabled built-in, hardware echo cancellation capabilities. This affects modern devices with the built-in AEC module.
0.8.2
- Enabled generating developer tokens. This allows generating authentication tokens inside the Unity app without needing a backend server. This is only suitable for the development phase and should not be used in production. The newly available static methods are:
StreamVideoClient.CreateDeveloperAuthToken(userId)andStreamVideoClient.SanitizeUserId(userName)(for removing disallowed chars from a userId). This feature requires having theDisable Auth Checksflag enabled in Stream Dashboard.
0.8.1
- Fix IOS build process failing due to missing symbols like:
_StartAudioCapture,_StopAudioPlayback,_GetAudioProcessingModuleConfig,_PeerConnectionCanTrickleIceCandidates
0.8.0
Android platform improvements
- Added echo cancellation and noise reduction to audio
- Fixed video rotation in portrait mode
- Fixed Unity ExecutionEngineException: Attempting to call method
StreamVideo.Libs.Serialization.NewtonsoftJsonSerializer::TryConvertTo<System.Single>for which no ahead of time (AOT) code was generated. - Improvements to call stability
0.7.0:
- Added option to toggle local user camera/microphone track on/off Improved documentation
- Added option to control video resolution per call participant - essential for bandwidth optimization. Called via
participant.UpdateRequestedVideoResolution - Added option to control published video resolution and FPS - the resolution & FPS are copied from the passed WebCamTexture instance
- Improved setting of custom data for call and participant objects
- Added sorted participants property to the call object -> Call state Docs
- Improved state management
- Added option to "pin" participants in a call (this state is reflected in "sorted participants")
- Fixed Null Reference Exception when local camera is set to NULL
- Fixed Null Reference Exception when the client is disposed multiple times
- Fixed Null Reference Exception when the client is disposed during an async operation
- Separated layout into two screens: pre-call and in-call screens
- Refactored call layout to present the dominant speaker in a big window and the rest of the participants in a scrollable list below
- Added camera/microphone controls to the Call Screen -> You can now toggle cam/mic on/off or change to another device during the call.
- Added devices monitoring - devices list will dynamically update if a device is removed or a new one is plugged in
- Fixed various UI bugs
v0.5.0:
Fixes:
- Fix null ref exception when previous dominant speaker is null
Improvements:
- Add support for changing the camera device during the call
- Add support for changing the microphone device during the call
- Update DTOs to the latest OpenAPI spec
Sample Project
- Fixes:
- Improvements:
- Implement showing dominant speaker
- Update getting the demo credentials to the latest requirements
v0.0.1:
Initial release