---
"@context": https://schema.org
"@type": TechArticle
"@id": https://www.twilio.com/docs/video/media-sdks#article
headline: Media SDKs overview
description: Twilio Video Media SDKs give server-side apps direct access to the raw audio and video frames in a Video Room. Learn what they do and when to use them.
url: https://www.twilio.com/docs/video/media-sdks
inLanguage: en
dateModified: 2026-09-29T17:35:01.000Z
author:
  "@type": Organization
  name: Twilio Developer Education Team
publisher:
  "@type": Organization
  name: Twilio
---

# Media SDKs overview

> \[!IMPORTANT]
>
> The Video Media SDK for Node.js is currently available as a Public Beta product and the information contained in this document is subject to change. This means that some features are not yet implemented and others may be changed before the product is declared as Generally Available. Public Beta products are not covered by the Twilio Support Terms or [Twilio Service Level Agreement][sla].
>
> The Video Media SDK for Node.js is not a US [*Health Insurance Portability and Accountability Act* (HIPAA)][hipaa] Eligible Service or [*Payment Card Industry Data Security Standard* (PCI DSS)][pci] compliant and should not be enabled in workflows that are subject to HIPAA or PCI.

[hipaa]: https://en.wikipedia.org/wiki/Health_Insurance_Portability_and_Accountability_Act

[pci]: https://en.wikipedia.org/wiki/Payment_Card_Industry_Data_Security_Standard

[sla]: https://help.twilio.com/articles/115002413087-Twilio-Beta-product-support

Twilio Video Media SDKs let your server-side app join a Video [Room][vRoom] and work with decoded audio and video media. With the SDK, your app can send and receive raw frames from a Room. This works without the need for a person to capture video from a camera and render it to a screen.

Media SDKs work on the server-side in the same way the [client-side SDKs][cs-sdks] work on browsers, Android, and iOS. All the SDKs share the same Room, [Participant][vPart], and [Track][vTrack] model and connect with the same Access Tokens.

## Purpose

Direct frame access lets a back-end service participate in a Room as a media producer, consumer, or both. This participation might take one of the following forms:

* Media processing pipelines that analyze or transform frames in real time.
* AI and voice agents that consume Room audio and speak back into the Room.
* Virtual cameras that push generated or pre-recorded video into a Room.

## Differences between client and server SDKs

The client-side SDKs run where a person is: a browser or a mobile device, capturing from a camera and microphone and rendering to a screen. The Media SDKs run on a server and exchange raw frames.

To understand the differences, see the following table:

| Area          | [Client-side SDKs][cs-sdks]              | Server-side SDKs                                   |
| ------------- | ---------------------------------------- | -------------------------------------------------- |
| Target user   | Person                                   | App                                                |
| Languages     | JavaScript, Java (Android), Swift (iOS)  | Node.js                                            |
| Runs on or as | Runs in browsers or mobile devices.      | Runs as a server process.                          |
| Local media   | Captured from a camera or microphone.    | Pushed as raw frames by your code.                 |
| Remote media  | Rendered to a UI element.                | Read as raw decoded frames from an async iterator. |
| Use case      | Make in-person conferencing and calling. | Automate media processing and integrate media.     |

## Twilio SDK support

To learn how Twilio supports SDK releases across versions, see the [Platform SDK Support Policy][platform-sdk-policy].

## Next steps

* [Overview][]: Learn what the Node.js SDK does and which platforms it supports.
* [Quickstart][]: Connect to a Room and move your first frames.

[cs-sdks]: /docs/video/javascript

[Overview]: /docs/video/node

[platform-sdk-policy]: /docs/video/platform-sdk-support-policy

[Quickstart]: /docs/video/node-getting-started

[vPart]: /docs/video/api/participants

[vRoom]: /docs/video/api/rooms-resource

[vTrack]: /docs/video/api/publishedtrack
