Conference recording
Voximplant allows users to record a video conference into a single video file. There are three modes of video conference recording: grid, tribune, and custom. This article will help you to set up each mode.
In a video conference record, each participant's section appears and disappears automatically when the participant enters or leaves the conference. If any participant shares their screen, it appears as an additional section and disappears when the screen sharing ends. The length of the video equals the length of the whole conference.
How to create a video conference recording
To set up a video conference recording, open your scenario and do the following.
- Add a recorder module to your scenario:
- Prepare recorder properties:
Please note the videoopt
parameter. This is the object that contains video options. Here are the most important parameters for video conference recording:
mixing: specifies whether to create a single file of conference recording
profile: specifies the video quality. Refer to the table below
background: specifies the HTML color code for the recording background
vad: specifies whether to highlight the borders of a speaking participant's frame
labels: specifies whether to show the participants' names on their frames
layout: specifies the video mixing layout. Can be
'grid'
,'tribune'
or'custom'
The available values for the profile option are (case sensitive):
HD | 1280x720 @30fps | 4096kbps |
FHD | 1920x1080 @30fps | 8192kbps |
QHD | 2560x1440 @30fps | 16384kbps |
4K | 3840x2160 @30fps | 32768kbps |
You can specify the optional expire parameter (accepts one of the RecordExpireTime enumeration values) if you need to keep the video available for a longer time (default is 3 months).
Increasing the expire parameter can cause extra charges. Find more information in your control panel's "Billing" section.
The layout option specifies how the video file layout is composed. It accepts one of the following values:
grid: all the participants' frames are the same size and are shown as a grid. This is the default value
tribune: one active participant's frame is bigger than the others and shown above the other participants. The rest participants' frames are shown as a grid. By default, the active participant is the one who is currently speaking. You can pin a specific participant to be always in the bigger frame
custom: you can specify a custom layout as you want. If you choose this value, you need to add a layoutSettings option to the
videoopt
object and pass an array of custom layout settings to the option.
- Create a recorder instance with the prepared parameters:
- Send the conference object to the recorder via the SendMediaTo method:
After that, the conference starts recording. The recording is saved in the Voximplant cloud by default, but you can choose to save it in your own S3-compatible storage.
Please take a look at the example video conference scenario to understand how it works in detail:
After the conversation, the recorded video does not appear in your control panel immediately. It appears after some processing time, usually a 1/5 of the conference time.
Layouts priorities
By default, the video conference recorder sorts video layouts by the time they connect to the conference. You can change video layout sorting by changing their priority. You can set up any priority you want.
To be able to change video layout priority, first, you need to pass the conference object to the recorder via the setConference method:
Then, use the following methods to manage layout priorities:
getPriority(): returns an array of all endpoints in the recorder in the order of their priorities
setPriority(): accepts an array of endpoints in the correct order and changes the priorities in real time
If you set the layout option to tribune, the endpoint with the highest priority appears in the bigger window.
By default, all new conference participants have the highest priority. This is an example of how you can make all new participants have the lowest priority. Please read the comments in the code.
AWS S3-compatible storage
By default, all records are saved in the Voximplant cloud storage. You can use your own AWS S3-compatible storage to store your records. To do so, follow the S3-compatible storage integration guide.
Recorder errors
When you try to access the existing records, you can get the following errors:
Error | Description |
403 | The link to the record is broken (Invalid URI) |
401 | Authorization failed |
416 | Requested range not satisfiable |
404 | File not found (e.g. the file is deleted) |
When you try to access the record in the S3-compatible storage, you can get another S3-specific errors.
Video conference recording billing
When you record a conference, you pay for:
- Video recording
- Video composition and storage on AWS S3
The price for video composition and storage depends on two parameters: video quality and storage time. Please refer to your control panel's Billing section to find the price table on the video conference recording.