Search Results for

    Why LiveSwitch Cloud

    LiveSwitch Cloud is a highly flexible, fully managed, enterprise-grade, live video broadcasting platform with stunning video quality and exceptional access to real-time metrics, reports, and integrations.

    LiveSwitch provides unparalleled flexibility to combine peer-to-peer (P2P)-, Selective Forwarding Unit (SFU)-, and Mixing Control Unit (MCU)-based media flows in a single session and switch dynamically while the session is live.

    LiveSwitch provides a full cross-platform WebRTC stack. You can use the following exclusive features in your app:

    • Token-based authentication
    • Support for multiple simultaneous devices
    • Powerful channel-based session management
    • P2P, MCU, and SFU modes
    • Support for H.264, VP8, VP9, G.711, and Opus codecs
    • Presence management
    • REST API and Webhooks control
    • Live call analytics

    SFU for Video Conferencing

    LiveSwitch supports SFU that uses a one-up, many-down architecture. With SFU, participants send their media to the server only once. The server subsequently distributes the media to connected downstream clients.

    SFU reduces upstream bandwidth and client load. This allows you to scale your app out much further on the client. The server forwards the media packets without decoding or re-encoding them. Thus, you can keep the server load minimal to make the most of each instance.

    You can also use simulcast in a conference or broadcast. Simulcast allows downstream clients to receive the best possible quality stream.

    Mixing for Multiparty Audio and Video

    LiveSwitch supports MCU that mixes audio and video into a single stream based on standard or custom video templates. If a connection goes over MCU, it offloads the stream to the servers.

    MCU connection has only one upload stream and one download stream for each call participant. This is especially useful for legacy and resource-constrained devices. The server handles all the mixing and delivers the stream to users in their devices' format.

    Online Demo

    A demo is available online on the LiveSwitch Video Chat demo page. You can open the demo in a few browser windows or ask some friends to help you out.

    Platform Support

    LiveSwitch provides client SDKs for all modern platforms, with libraries written in C#, JavaScript, Java, and Objective-C. LiveSwitch supports Android, iOS, macOS, almost any flavor of .NET, Windows 10, UWP (Desktop), Xamarin, and a few other minor platforms.

    Download the LiveSwitch Cloud SDK

    LiveSwitch SDK is available for multiple platforms. Each SDK is packaged as a single download and is available on your LiveSwitch Cloud Console's Downloads page.

    In each of the client platform downloads, you'll find two folders:

    • Examples folder which contains source code for demos that you can use as a starting point to build your own apps.
    • Libraries folder which contains compiled binaries for the platform to include in your own apps.

    Create a Sample App

    You can learn how to use LiveSwitch by following the Get Started Guide and create a sample app. This guide includes step-by-step tutorials to set up your development environment and create apps with all the basic functionalities of LiveSwitch for C#, Android, iOS, and TypeScript. These functionalities include client registration, media streaming, screen sharing, text chat, and file transferring.

    Explore the Example App

    You can also learn LiveSwitch by exploring the Chat and the Layout Manager examples in the downloaded package for all supported platforms.

    The Chat example demonstrates the following:

    • Switch among P2P, SFU, and MCU modes
    • Perform token-based authentication
    • Send and display a chat message
    • Capture screen
    • Change audio and video devices
    • Simulcast

    The Layout Manager example demonstrates how to lay out views according to set parameters.

    To build the example, navigate to the folder for your platform and load the project in an appropriate Integrated Development Environment (IDE) for your platform:

    • For C#, use Visual Studio.
    • For Web, we recommend Visual Studio. The example includes both TypeScript and JavaScript flavors.
    • For Java and Android, use either IntelliJ or Android Studio.
    • For iOS and macOS, use Xcode.
    Note

    Ensure that there are no spaces in the Xamarin iOS example's path. If there are, the example doesn't build.

    WebRTC Support

    LiveSwitch supports WebRTC. LiveSwitch's network tunneling strategies are identical to those recommended by the WebRTC specification. LiveSwitch's WebRTC implementation provides complete audio, video, and data-channel stack that is fully interoperable with other modern WebRTC implementations.

    Browser Supported by LiveSwitch?
    Chrome Yes
    Firefox Yes
    Opera Yes
    Safari Yes. LiveSwitch fully supports plugin-free WebRTC communications in iOS 11+ and Safari 11+ for macOS High Sierra.
    Internet Explorer Yes. LiveSwitch is bundled with an ActiveX plugin for Internet Explorer users. This is tightly integrated with the JavaScript SDK so that the browser automatically uses the plugin if native WebRTC functionality is unavailable.
    Edge Yes

    Third-Party Dependencies

    Internal Dependencies

    LiveSwitch uses the following libraries:

    Library Vendor License Platform
    BouncyCastle Open-source software (OSS) MIT All except native iOS/macOS for DTLS encryption
    libssl / libcrypto OSS Apache 1.0 / BSD Native iOS/macOS for DTLS encryption
    SkiaSharp Xamarin MIT .NET (Media Server) for video mixing

    External Dependencies

    The following libraries are necessary for capturing and processing audio and video:

    Library Vendor License Platform
    NAudio OSS Ms-PL .NET for audio capture and playback
    AForge.NET OSS LGPL v3 .NET for camera capture
    Sarxos OSS MIT Java for camera capture
    libvpx WebM Project New BSD All for video encoding/decoding
    libopus Xiph.Org BSD All for audio encoding/decoding
    libaudioprocessing Google BSD All except iOS/macOS for echo cancellation
    libyuv Google BSD All for YUV conversion
    libopenh264* Cisco Two-Clause BSD / AVC/H.264 Patent Portfolio License All except iOS/macOS for video encoding/decoding (downloaded at runtime)

    * libopenh264 isn't included or shipped in release artifacts. It's downloaded at runtime by clients that are configured to use software H.264.

    Optional Dependencies

    The following libraries are optional:

    Library Vendor License Used By
    log4net Apache Apache 2.0 .NET for logging
    Json.NET Newtonsoft MIT .NET for JSON serialization
    Redis OSS BSD LiveSwitch Gateway state provider
    In This Article
    Back to top Copyright © LiveSwitch Inc. All Rights Reserved.
    Deprecation Notice
    On June 30, 2022, UWP, tvOS, watchOS, Java Desktop, non-Safari browsers on iOS, and .NET STUN/TURN Server Example will be deprecated.

    If you need support to maintain applications on one of these platforms, contact Sales.