The Video SDK enables seamless video communication between the server and client endpoint applications. It offers a wide range of SDKs for building web browser-based apps, as well as native and hybrid mobile apps. The SDK uses bi-directional signaling and media flow control to optimize network paths for the best performance.
The Video SDK is designed to develop client-end video applications. It offers functions that utilize underlying APIs over WebSockets to establish communication with servers for efficient real-time communication (RTC) sessions. The SDK also propagates various events to all connected endpoints, ensuring they are updated or notified about session activities and status changes.
SDK handles the following four major entities:
- Video Room: It represents the client-side session and is used to handle all room/session related events. It handles the connection, local stream publication and remote stream subscriptions. It creates the room object by passing the token these users have previously received from your service. This token has to be retrieved using the Video API because it is a user access token.
- Video Stream: It represents the user (audio, video and/or data) stream, identifies it, and where it should be drawn.
- Events: It represents events related to client-side entities:
- Room Events: It represents events related to room connection
- Stream Events: It represents events related to streams within a room
- Player: It represents the customisable UI element that can be used to render the stream in the DOM/View handler in the browser/Mobile SDK respectively.
Type of SDKs
Portal provides different types of SDKs for the development of Video Applications on different platforms and application frameworks, viz:
- Web SDK: A Lightweight JS Library for the development of browser-based Video Applications.
- Native SDK:
- Android SDK: SDK to develop Native Application on Android Devices.
- iOS SDK: SDK to develop Native Application on iOS Devices.
- Hybrid SDK:
- React Native SDK: SDK to develop a Hybrid Application on React Native Framework.
- Flutter SDK: SDK to develop a Hybrid Application on Flutter Framework.
- Cordova SDK: SDK to develop a Hybrid Application on Cordova Platform.
Read more on SDKs: