Search Results for

    Show / Hide Table of Contents

    LiveSwitch 1.26 Release

    LiveSwitch 1.26 includes two significant infrastructure changes that require attention before upgrading:

    • OpenSSL 3.5.4 — All native SDK platforms and the Media Server have been upgraded from OpenSSL 1.x to OpenSSL 3.5.4, adding TLS 1.3 support and retiring an end-of-life cryptography library.
    • Non-root Docker containers — All server service containers now run as a non-root user. Before upgrading, ensure host-mounted volumes are owned by UID 1654 and that containers binding to port 443 have the NET_BIND_SERVICE capability granted.

    Release Notes for LiveSwitch Server v1.26

    1.26.0.21097

    Release date: June 01, 2026

    Client SDK

    Breaking Changes
    • [LS1-3686] [Web] The TypeScript SDK's LocalMedia constructor now has typed overloads. Passing two separate MediaStream objects as audio and video arguments is no longer supported and will produce a compiler error — use a single synchronized MediaStream via the new new LocalMedia(stream) overload instead. When using this overload, the SDK treats the stream as caller-owned and will not stop the tracks on your behalf, making it suitable for pipelines such as background blur or canvas-based video sources.
    New Features
    • [LS1-3517] Native camera sources now support changing resolution and frame rate at runtime via new ChangeResolution, ChangeFrameRate, and ChangeConfig methods on CameraSourceBase.
    Improvements
    • [LS1-1782] [Android] Replaced deprecated API calls, including screen capture and screen sharing APIs, ensuring compatibility with the latest Android platform releases.
    • [LS1-2584] Upgraded all native SDK platforms to OpenSSL 3.5.4, adding TLS 1.3 support and retiring an end-of-life cryptography library.
    • [LS1-3306] Updated cryptographic hashing from MD5 to SHA-256 across all SDKs.
    • [LS1-3338] [MAUI Android] Echo cancellation is now enabled by default on AudioRecordSource instead of relying on the application to enable it.
    • [LS1-3546] Improved browser video and audio synchronisation under variable network or device conditions by implementing the WebRTC playout-delay RTP header extension.
    • [LS1-3587] [Android] Modernized the example app UI to match the iOS sample app.
    • [LS1-3683] [MAUI Android] Restored libaudioprocessing to the MAUI Android SDK with 16KB memory page size alignment. The library was previously removed to maintain Google Play Store compliance when Android made 16KB page size support compulsory; it is now rebuilt to meet the requirement, restoring audio processing capabilities for MAUI Android apps targeting Android 15+.
    Bug Fixes
    • [LS1-2873] [MAUI Android] Fixed an issue in the example where audio and video might not flow during P2P calls.
    • [LS1-3389] [Unity Android] Fixed an issue in the example where every log message would get duplicated.
    • [LS1-3466] [Android] Fixed an issue where screen sharing orientation did not update from portrait to landscape when rotating the device during an active share, causing the video to remain locked in the initial orientation and appear letterboxed.
    • [LS1-3540] [iOS] [macOS] Fixed an intermittent crash that occurred when closing WebRTC connections.
    • [LS1-3571] [Android] Fixed an issue in the example where double-tapping to switch between front and back camera was not working.
    • [LS1-3578] Fixed a race condition where gracefully closing a connected session could suppress the client:connection.closed analytics event.
    • [LS1-3596] Fixed an issue where round-trip time was not being calculated correctly under high-latency or throttled network conditions.
    • [LS1-3597] Fixed an issue where closing a connection could hang indefinitely and suppress the connection.closed event when an ICE transport failure occurred during graceful shutdown.
    • [LS1-3605] Fixed an intermittent issue where RSA key generation could produce components with incorrect byte lengths.
    • [LS1-3606] Fixed a race condition where a server-side upstream close notification arriving during a client-initiated close could cause the connection to fail instead of closing cleanly, causing Close() to raise an unexpected error and Unregister() to block for an extended period.
    • [LS1-3620] Fixed an issue where MediaTrackInfo JSON deserialization incorrectly mapped the stopped field to Muted instead of Stopped.
    • [LS1-3665] [Android] Fixed an issue where video buffer cleanup was incorrectly dispatched to the main thread, causing frame skips in group calls with multiple remote participants.
    • [LS1-3692] Fixed an issue introduced in 1.25.3 where calling Channel.CloseAll() would leave the channel unable to create new connections without re-registering.
    • [LS1-3699] [Android] Fixed an issue where screenshare would crash on Samsung devices after an orientation change.
    • [LS1-3700] [macOS] Fixed an issue where local media would fail to start when using certain external USB cameras with fixed frame rates (such as the Logitech C525).
    • [LS1-3701] [Web] Fixed an issue where "Could not process bitrate request" errors would occur during teardown of SFU connections.
    • [LS1-3707] [Web] Fixed an issue where TypeScript projects with strictNullChecks enabled would encounter a ts(2416) compiler error when importing the LiveSwitch TypeScript SDK in 1.25.x.

    All Server Services

    Breaking Changes
    • [LS1-3690] Resolved CVEs in the Docker base images for all LiveSwitch services. All containers now run as a non-root user (UID 1654). Deployments must ensure any host-mounted volumes (e.g. the recordings directory) are owned by UID 1654, and deployments where Gateway or Media Server bind directly to port 443 must grant the NET_BIND_SERVICE capability to the container (--cap-add NET_BIND_SERVICE in Docker, or securityContext.capabilities.add: [NET_BIND_SERVICE] in Kubernetes).
    Improvements
    • [LS1-3306] Updated cryptographic hashing from MD5 to SHA-256 across all server services, retaining MD5 only for SIP Digest Authentication for backward compatibility.

    Gateway

    Improvements
    • [LS1-3387] Upgraded StackExchange.Redis to version 2.9.32, making Redis connections more reliable.
    • [LS1-3609] Improved handling of abrupt WebSocket disconnects to immediately clean up client state in Redis instead of waiting for the idle thread (~35 seconds).
    • [LS1-3609] Improved deserialization error log messages with clearer descriptions and fixed formatting issues.
    Bug Fixes
    • [LS1-3480] Fixed binding to an unintended random port when the health check endpoint is not configured.
    • [LS1-3604] Fixed Redis resource leaks when connections could not temporarily be re-established.

    Media Server

    Improvements
    • [LS1-2584] The Media Server has been upgraded to OpenSSL 3.5.4, adding TLS 1.3 support and retiring an end-of-life cryptography library.
    • [LS1-3546] The Media Server now injects the playout-delay RTP header extension into downlink video streams, ensuring browser viewers benefit from the fix even when the upstream client does not support the extension.
    Bug Fixes
    • [LS1-3344] Fixed an issue where an SFU upstream connection with no active downstream subscribers would generate a flood of pause/resume events on the Media Server until video frames stopped being sent by the remote connection.
    • [LS1-3608] Fixed a memory leak in the video mixer where frame buffers were not released after rendering, causing steady memory growth proportional to active video sources.
    • [LS1-3621] Fixed an intermittent race condition in media server clustering where simultaneous connection establishment between two servers could silently drop the surviving connection.

    Recording

    Bug Fixes
    • [LS1-3688] Fixed an issue where running with recording move disabled would log a misleading S3 initialization error.

    SIP Connector

    Bug Fixes
    • [LS1-3549] Fixed an intermittent issue where cancelling an outgoing SIP call could fail to notify the remote side, leaving it in a ringing state.
    • [LS1-3607] Fixed a race condition that caused errors when closing UDP-based SIP connections.

    1.26.1.21163

    Release date: June 08, 2026

    All Server Services

    Improvements
    • [LS1-3716] Routine security maintenance updates to the LiveSwitch server Docker images.

    In This Article
    Back to top Copyright © LiveSwitch Inc. All Rights Reserved.Documentation for LiveSwitch Version 1.26.0