Monthly free minutes changesEnjoy a total of 10,000 free minutes of conferencing and live streaming. Plus get a total of 300 free minutes ofAdd-on Services

Build, Customize and ScaleYour Live Streaming App

Low-latency live video infrastructure for developers with simple & secure APIs and cross-platform SDK support, made for interactivity and audience engagement at scale

Video SDK G2 Rating

LOVED BY DEVELOPERS AT

VideoSDK

Single SDK, Endless Opportunities

Scale to the audience of 100k people with multiple co-streamers

  • Our Global Mesh Network is optimized for scale.

  • Go live together with up to 25 co-streamers.

  • Change role of viewer to co-host on-the-go.

  • Adaptive bitrate for better video experience at scale.

hls_streaming_animation
dynamic_layout_animation

Smooth live playback experience

  • Seek to any frame while watching live streaming.

  • Seemlessly integrate the customizable player.

  • Flexibility to choose from multiple resolution video streams.

  • Orientation-based adaptive live stream.

Bring your vision to life with complete layout customizations

  • Add components like logo, overlay, background & many more.

  • Customize visuals to match your brand theme.

  • Customize video resolution & its orientation at the flip of a switch.

cloud_recording_animation
rtmp_out_animation

Stream RTMP to multiple platforms simultaneously with just one API

  • Stream to any social platform , in 1080p Bitrate.

  • Go live on 20+ concurrent platforms.

  • Compatible with any custom RTMP outputs.

  • Go live from any browser.

VideoSDK features

More Features, More Possibilities

Fully Customized UI

Fully Customized UI

Low Latency

Low Latency

Cost Effective

Cost Effective

Browser and Cross Device Support

Browser and Cross Device Support

Dynamic Layout

Dynamic Layout

On-demand Playback

On-demand Playback

Analyze & Debug

Analyze & Debug

Engaging & Collaborative features

Engaging & Collaborative features

DEVELOPER-CENTRIC API

Build engaging live experiences effortlessly!

Low-latency Global Infrastructure

20+ Frameworks Supported

Secure JWT Authentication

Maintainance-free SDK

In-built state change events

1import VideoSDK from "@videosdk.live/js-sdk";
2
3// Configure authentication token
4VideoSDK.config("<Authentication-token>");
5
6// Initilize meeting
7const meeting = VideoSDK.init({
8    sessionId: "<Id-on-session>", // required
9    name: "<Name-of-participant>", // required
10    micEnabled: "<Flag-to-enable-mic>", // optional, default: true
11    webcamEnabled: "<Flag-to-enable-webcam>", // optional, default: true
12    maxResolution: "<maximum-resolution>", // optional, default: "hd"
13});
14      
15      
1import 'package:flutter/material.dart';
2import 'package:videosdk/rtc.dart';
3
4class MyApp extends StatelessWidget {
5@override
6Widget build(BuildContext context) {
7    return SessionBuilder(
8        sessionId: "<Id-on-session>",
9        displayName: "<Name-of-participant>",
10        micEnabled: "<Flag-to-enable-mic>",
11        webcamEnabled: "<Flag-to-enable-webcam>",
12        token: "<Authentication-token>",
13        builder: (Meeting: meeting) {
14            return (...)
15            }
16        );
17    }
18}
19        
1import { SessionProvider, useSession } from "@videosdk.live/react-sdk";
2
3const App = () => (
4    <SessionProvider
5        config={{
6            sessionId: "<Id-on-session>",
7            name: "<Name-of-participant>",
8            micEnabled: "<Flag-to-enable-mic>",
9            webcamEnabled: "<Flag-to-enable-webcam>",
10            maxResolution: "<Maximum-resolution>",
11        }}
12        token={"<Authentication-token>"}
13    >
14        <SessionView>...</SessionView>
15    </SessionProvider>
16);
17      
18      
1import live.videosdk.rtc.android.VideoSDK;
2import live.videosdk.rtc.android.Session;
3
4public class MainActivity extends AppCompatActivity {
5    private Session session;
6    @Override
7    protected void onCreate(Bundle savedInstanceState) {
8        VideoSDK.config(getIntent().getStringExtra("token"));
9        session = VideoSDK.initMeeting(
10                MainActivity.this,
11                getIntent().getStringExtra("sessionId"),
12                "John Doe",
13                true,
14                true
15        );
16    }
17}
18        
19        
1import VideoSDKRTC
2class SessionViewController: UIViewController {
3    private var meeting: Meeting?
4
5    override func viewDidLoad() {
6        super.viewDidLoad()
7
8        // Configure authentication token got earlier
9        VideoSDK.config(token: <Authentication-token>)
10
11        // create a new meeting instance
12        meeting = VideoSDK.init(
13            sessionId: <sessionId>, // required
14            participantName: <participantName>, // required
15            micEnabled: <flag-to-enable-mic>, // optional, default: true
16            webcamEnabled: <flag-to-enalbe-camera> // optional, default: true
17        )
18    }
19}
20        

WHAT CAN YOU BUILD

One Technology, Multiple Solutions

Gaming Image

See why customers choose Video SDK

Ankur Chandra-Engineering Manager at Fynd
Company Logo

I still remember when I was trying out the product and connected over discord with Arjun Kava, and he immediately responded. It is one of the things that we found less often. The team is super enthusiastic to make the product as next big thing. Easy integration is the beauty of it. Few lines of code and it's done.

Ankur Chandra ,

Engineering Manager at Fynd

Let’s start building together