Video Media SDK for Node.js overview
Public Beta
The Video Media SDK for Node.js has been released as a Public Beta product. Before Twilio declares this product as Generally Available, the information contained in this document might change. Twilio might implement additional features or change others. No Twilio SLA covers Public Beta products.
The Video Media SDK for Node.js provides a server-side SDK for Twilio Video Group Rooms with raw media frame access. It lets a Node.js process join a Room and push and receive media frames. A media frame includes the decoded video, audio, and data track messages that flow through the Room one frame at a time. Twilio built the SDK on top of Web Real-Time Communication (WebRTC), so it doesn't require a browser or a device.
The SDK shares the Room, Participant, and Track model and event names with the Twilio Video JavaScript SDK. It connects with the same Access Token and VideoGrant format. If you know the JavaScript SDK, most concepts carry over.
To learn the differences between the client and server SDKs, see Differences from the JavaScript SDK.
The Video Media SDK for Node.js processes real-time media in a Room. It differs from the twilio-node helper library, which calls the Twilio REST APIs. You can use both in the same app. You can create an Access Token with twilio-node and move media with the Media SDK.
To try an example, see the examples directory in the SDK repository.
The SDK ships a prebuilt native binary for the following platforms:
- Node.js version 24.0.0 or later.
- Linux running on a 64-bit system.
- macOS running on a 64-bit system.
Apple Silicon Macs
The native binary only works on 64-bit systems.
- On an Apple Silicon (M-series) Mac, install Rosetta.
/usr/sbin/softwareupdate --install-rosetta --agree-to-license
- Install Node.js.
If the installation fails, the command returnsnpm error code EBADPLATFORM. - Verify that the Node installed a 64-bit version.
macOS running Apple Silicon returnsnode -e "console.log(process.arch)"
arm64.
- Quickstart: Connect to a Room and push and receive frames.
- Work with media frames: Understand the I420 video and PCM audio frame formats.
- Differences from the JavaScript SDK: See what changes when you move to the server.
- API Reference: Browse the full Node.js API reference.
- Changelog: Review changes in each release.
- SDK repository: Read the source and file issues.