Release Notes for Client SDK v1.14
1.14.6.13358
Release date: April 06, 2022
Bug Fixes
- [LS1-206] Applications using Typescript 4.4 failed to build. Builds are successful after adding support for Typescript 4.4 in the JavaScript SDK.
1.14.4.12809
Release date: March 25, 2022
Bug Fixes
- [LS1-300] Fixed a bug in Camera2Source where on some Android devices the source raised frames at half of the desired rate.
- [LS1-546] Fixed a bug in the JavaScript SDK where in Peer-to-Peer connection the stream disconnected and reconnected while updating bitrate.
- [LS1-547] Fixed a bug in the TypeScript Web SDK where the connections failed if the
setPreferredCodecs
method was called before creating an SFU, an MCU, or a P2P connection.
1.14.3.9675
Release date: March 5, 2022
Bug fixes
- [LS1-371] Fixed a memory leak when network connectivity was lost in iOS and macOS native clients.
- [LS1-459] Fixed a bug where a JavaScript client wasn't respecting the maximum bitrate requests from the server.
- [LS1-492] Fixed a bug in Android AudioTrackSink where some audio frames weren't rendered properly, resulting in crackling or no sound.
- [LS-6225] Fixed a bug that prevented proper Acoustic Echo Cancellation (AEC) for Unity on Android.
- [LS-6261] Fixed a bug in the Android build of the Unity example that prevented Acoustic Echo Cancellation (AEC).
- [LS-6322] Fixed a bug that prevented audio playback on Unity after the app was paused, that's, moved to the background.
- [LS-7002] Fixed a bug that caused buzzing in audio for Unity Android and Xamarin Android, which require upsampled audio after Acoustic Echo Cancellation (AEC).
- [LS-7088] Fixed a bug in the Unity SDK that delayed video playback when the app was opened after it was paused.
- [LS-7130] Fixed a bug that led to Unity lip-syncing issues on the remote end.
- [LS-7278] Fixed a bug in OpenH264 video encoding for high-bitrate streams over 1 Mbps. This bug caused remote media decoded by browsers to contain artifacts and remote media decoded by native platforms to generate excessive picture loss indications that degraded video performance. This bug particularly affected server-side simulcast and transcoding involving H.264 codecs.
- [LS-7326] Fixed a bug that prevented Xamarin.Forms iOS applications from rendering video streams after upgrading Xamarin iOS to version 15.2.0.17.
1.14.2.2993
Release date: December, 14, 2021
Bug fixes
- [LS1-284] Disabled H.264 on Safari to work around a browser issue that resulted in an iOS Safari tab crash if SFU connections were attempted.
1.14.1.2388
Release date: December, 10, 2021
New features
- [LS1-1] LiveSwitch now supports H.264 video streaming on Safari version 15 or newer.
Bug fixes
- [LS1-235] Fixed
Cast to smaller integer type 'int' from 'id'
error when building applications using the Cocoa SDK on Xcode 13. - [LS1-304] Fixed an issue that prevented participants on Safari 15 from sending media on peer-to-peer connections when they were the first to join a conference. SFU and MCU connections were not affected.
- [LS1-339] Fixed a bug where the
onAudioLevel
event was always returning a level of0
on iOS and macOS.
1.14.0.64462
Release date: November 18, 2021
New features
- [LS-6284] New
AudioRecordSource2
class has been added to the Android SDK. It does not modify theAudioManager
modes or audio routing settings, which allows you to manage them separately. - [LS-6287] New
AudioUnmuteDisabled
andVideoUnmuteDisabled
properties inManagedConnection
. These properties indicate whether participants are allowed to unmute audio or video. - [LS-6287] New
OnAudioUnmuteDisabled
,OnAudioUnmuteEnabled
,OnVideoUnmuteDisabled
, andOnVideoUnmuteEnabled
events inManagedConnection
. These events are raised when an administrator changes whether participants are allowed to unmute audio or video. - [LS-6287] New
OnRecordingEnabled
andOnRecordingDisabled
events inManagedConnection
. These events are raised when an administrator enables or disables recording. - [LS-6298] New
ClientProtocol
andIsSip
properties inConnectionInfo
. These properties indicate when a remote client is connected via SIP. - [LS-6298] New
Protocol
andIsSip
properties inClientInfo
. These properties indicate when a remote client is connected via SIP. - [LS-6338] New
UpdateUser
,UpdateDevice
,UpdateClient
, andUpdateConnection
methods inChannel
. These methods allow clients with thecanUpdate
privilege to toggle recording, audio muted, video muted, and whether audio or video can be unmuted. - [LS-6720] Updated
AudioRecordSource
in the Xamarin.Android SDK to enable hardware noise suppression and automatic gain control by default. - [LS-6733] New
OnSizeChange
event inVideoTrack
. This event is raised when the video's frame size changes. - [LS-6733] New
OnVideoSizeChange
event inLocalMedia
andRemoteMedia
. This event is raised when the video's frame size changes. - [LS-6921] New
DefaultStatsEventInterval
static property inManagedConnection
.This property configures the default value forStatsEventInterval
. - [LS-6921] New
DefaultStatsReportInterval
static property inManagedConnection
. This property configures the default value forStatsReportInterval
. - [LS-6921] New
MediaQuality
property inManagedConnection
. This property indicates the current connection's media quality. - [LS-6921] New
NetworkQuality
property inManagedConnection
. This property indicates the current connection's network quality. - [LS-6921] New
OnMediaQuality
event inManagedConnection
. This event is raised when the connection's media quality is estimated. - [LS-6921] New
OnNetworkQuality
event inManagedConnection
. This event is raised when the connection's network quality is estimated. - [LS-6921] New
OnStats
event inManagedConnection
. This event is raised when the current connection's statistics are gathered. - [LS-6921] New
StatsEventInterval
property inManagedConnection
. This property configures how frequently connection statistics are gathered. - [LS-6925] New
AudioLevelInterval
property inMedia
. This property configures how frequentlyOnAudioLevel
is raised. - [LS-6925] New
LevelInterval
property inAudioTrack
. This property configures how frequentlyOnLevel
is raised. - [LS-6940] New
GraphicsCaptureSessionSource
class for UWP screen capture. - [LS-6961] New
Kick
,KickUser
,KickDevice
, andKickConnection
methods inChannel
. These methods allow clients with thecanKick
privilege to kick clients and connections based on channel ID, user ID, device ID, or connection ID. - [LS-7009] New
OnAudioMuted
,OnAudioUnmuted
,OnVideoMuted
, andOnVideoUnmuted
events inLocalMedia
. These events are raised when the local media track sources are muted or unmuted. - [LS-7009] New
OnMuted
andOnUnmuted
events inMediaSource
. These events are raised when the media source is muted or unmuted. - [LS-7009] New
OnMuted
andOnUnmuted
events inMediaTrack
. These events are raised when the media track source is muted or unmuted. - [LS-7065] New
LocalAudioUnmuteDisabled
andLocalVideoUnmuteDisabled
properties inConnectionInfo
. These properties indicate whether a connection is restricted from unmuting. - [LS-7205] You can now exclude a user, device, client, connection, or all four from the record, mute or unmute, and enable or disable unmute operations.
Bug fixes
- [LS-5141] Fixed a bug that prevented clients from using NuGet packages to develop .NET Framework LiveSwitch client applications.
- [LS-5522] Fixed a bug in TypeScript SDK where
MaxSendBitrate
andMaxReceiveBitrate
were not limiting bitrates if they were called before a media stream was attached to a connection or if the connection was not in the Connected state. - [LS-6067] Fixed a bug in the
AudioMixer
class in the CSharp, Java, and Android client SDKs that caused choppy inbound audio. - [LS-6211] Fixed a bug that allowed CPU-limited and network-limited clients to send unlimited NACK messages which caused network congestion.
- [LS-6229] Fixed a bug in the Xamarin Android SDK class
AudioTrackSink
where audio output could sound choppy on certain devices or codecs. - [LS-6273] Fixed a bug that caused a DTMF tone to not end if the duration of the tone was not a multiple of the audio frame length.
- [LS-6281] Fixed a bug in the
AudioMixer
class in the CSharp, Java, and Android client SDKs that caused audio clipping. - [LS-6282] Fixed the performance issue of the
Camera2Source
class in Android so that frames are quickly processed at high resolutions. - [LS-6283] Fixed a bug in the Android SDK class
AudioTrackSink
where audio output could sound choppy on certain devices. - [LS-6315]
Channel.OnRemoteUpstreamConnectionUpdate
now returns the correct property values for the old connection information. - [LS-6322] Fixed a bug that caused audio delays after pausing and playing audio in the Unity Editor and Unity App.
- [LS-6724] Fixed deprecation warnings related to
ScriptProcessorNode
in the JavaScript SDK. - [LS-6724] Improved performance of audio level calculations in JavaScript.
- [LS-6917] Fixed a JavaScript bug where a
<video>
element on a non-responsive page would fail to play. - [LS-6925] Improved performance of audio level calculations in all SDKs.
- [LS-6929] Fixed a bug in the Android SDK where
Camera2Source
would crash applications after multiple permission request dialogues are accepted in quick succession. - [LS-6961] Fixed a 10-second delay in the
Channel.OnRemoteUpstreamConnectionClosed
event when kicking an upstream connection. - [LS-6998] Extended the workaround from LS-6734 to Chrome 93. Works around a bug in Chrome 90 to 93 where video jitter in
getStats
is reported as 90 times higher than it actually is. - [LS-7088] Fixed a bug in the Unity SDK that delayed video playback when the app was opened after it was paused.
- [LS-7128] Fixed a bug in the TypeScript SDK where
addOnIceConnectionStateChange
did not add aonIceConnectionStateChange
handler. - [LS-7271] Fixed a bug in the TypeScript SDK where setting a value for
MaxSendBitrate
while using Server Side Simulcast caused incorrect downstream encoding bitrates.
Breaking Changes
- [LS-6283] The Android SDK class
AudioTrackSink
has been updated to use a newer version of theandroid.media.AudioTrack constructor
. As a result,setAudioStreamType
is no longer supported and insteadsetAudioUsage
andsetAudioContentType
can be used. - [LS-6340] The
Admin:Disabled
andSync:Disabled
environment variables have been deprecated and will be removed in a future release. TheAdmin:Mode
andSync:Mode
environment variables should be used in their place. - [LS-6921] New
StatsReportInterval
property inManagedConnection
. This property configures how frequently connection statistics are reported to the Gateway. This property replacesStatsInterval
, which is now deprecated. - [LS-7096]
LogLevel
has been deprecated. Log providers now use the value ofLog.DefaultLogLevel
as their default log level.