Skip to main content

Video Overview

The SignalWire Video API is a powerful video conferencing tool (or rather, a set of tools) built on an MCU (Multipoint Control Unit) that handles all of the muxing in the cloud. This ensures only a single stream is sent to each participant, resulting in low latency, high quality, and the same video stream for every single person.

The REST API handles the creation and maintenance of tokens, rooms, sessions, and recordings. While there are cURL examples listed for each API, there are also examples of how to wrap the same HTTP request in other popular languages so that it can be easily integrated into an application!

The RELAY Realtime Server SDK listens for events from the video room (such as member.joined or recording.started) and allows you the ability to execute actions based on those events. For example, you might change the layout using the serverside SDK when a member joins or download a recording when the recording stops.

The RELAY Browser SDKs (v2 and v3) are made to turn your browser into a real-time media engine letting you make audio/video calls to phone numbers, SIP endpoints, and other browsers. The V2 version is ideal if you need to dial PSTN numbers or SIP endpoints, as V3 does not have this yet. V3 is ideal if you want to build web pages for streaming/conferencing with audio or video.

Programmable Video Conferences offer the ability to build advanced customized rooms with NO code! You can then easily embed this directly into your existing websites and applications.

Video API FAQs

Does SignalWire support RTMP?

The Video API supports inbound RTMP via the play method, and outbound RTMP via the startStream method.

Is SignalWire video HIPPA compliant?

Yes! You control access to video conferences via JWT tokens, recording is disabled by default and must be enabled manually, and recordings can be deleted from SignalWire.

Can I incorporate chat?

Yes! When building your website you will have to generate a unique token for the video room and the chat room, but both can exist on the same page.

How can I define user permissions?

You define a user's permissions when you generate their access token. See the room_tokens API endpoint.

Can I programmatically create rooms/control attendee permissions?

Yes, please check out the full api reference here.

How long can room names be?

Room names can be up to 100 characters, but you should avoid using "/" in room names.

Can I use video filters?

There is no native support for this at the moment, but you can certainly implement it yourself using the concept of video overlays.

Do video tokens expire?

No, by default all tokens will last indefinitely. You can alter the lifetime of your tokens using a variety of parameters, more detail here.

Why do users' cameras briefly activate when joining while muted?

SignalWire enumerates over all devices and 'checks' the devices where permissions allow. No video/audio data is transmitted during this test.

Can users be blocked by IP address?

Not at the SignalWire/Token level - you would have to block them from your website/application.

Are the video tokens signed or encrypted?

The video tokens are signed and are secure. Encryption cannot be implemented on the user-end without causing problems as SignalWire would then need to decrypt them.

Is the Video API encrypted?

Yes, it is encrypted through HTTPS and SRTP. WebRTC products are required to be encrypted!

Where are recordings stored?

Video Room recordings can be found in your personal space, in the Video Rooms tab on the lefthand sidebar within the Room Recordings tab.

How can recordings be downloaded/deleted?

Video room recordings can be deleted or downloaded via the portal in the video recordings section or via the API.

What is considered a participant?

Any new member in the room - this could be a person who joined or a screen being shared.

Are Programmable Video Conferences customizable?

Yes! With Programmable Video Conferences, you can now change the background color, foreground color, primary color, success color, negative color, and switch from light mode to dark mode. See a demonstration in our Programmable Video Conferences article.

Can you record and screen share in a Programmable Video Conference?

Yes! Our Programmable Video Conferences allow for recording, screens sharing, moderator/guest access, room previews, and more, all with no code required. If you need further customizations, you can write custom code on top of the pre-built room with ease.

Do Programmable Video Conferences have automatic recording?

Yes, you can choose to start recording as soon as the room starts in the settings for Programmable Video Conferences. Even if you do not select this, moderators will still have the ability to manually start and stop recording at their own discretion. Guests will not have this ability.