(Beta) Participant-Separated Video
Produce separate, muted video recordings for each participant.
You may have a use case that requires separate recording files per-participant. Recall supports this through a feature flag enabled at the workspace level.
Once enabled, you'll need to set the recording_mode
in your Create Bot request to gallery_view_v2
. Other than that, your request can be exactly the same.
All bots created under this workspace will then produce participant-separated video recordings in addition to the mixed, composite recording file. Please note that the unmixed video files are video-only and do not contain the audio.
To enable participant-separated video for your bots, reach out to the Recall team in slack (monthly plans) or by emailing support (pay-as-you-go).
Platform Support
Participant-separated video is available for all Meeting Platforms.
Recording mode
When using participant-separated video, you must use gallery_view_v2
as the recording_mode
.
Usage
Since this is a workspace-scoped feature, once this has been applied to your account, no additional API parameters are necessary.
The primary difference is how the recordings are accessed. Instead of retrieving an individual signed URL for the single mixed recording on the Bot's video_url
, participant-separated recordings can be accessed at a separate endpoint.
Retrieving the separate recordings
When you retrieve the bot, it will contain a single recording in recordings
:
// GET https://us-east-1.recall.ai/api/v1/bot/{id}/
{
...
"recording": "1cc4d5c1-0356-4d74-8908-3377f18674f4",
"recordings": [
{
"id": "1cc4d5c1-0356-4d74-8908-3377f18674f4",
"started_at": "2024-04-09T18:19:34.284488Z",
"completed_at": "2024-04-09T18:21:19.892133Z"
}
]
}
This is the same behavior as the default composite video recording normally produced by bots.
To access the participant-separated videos, you can use the id
of the recording
to call Get Recording.
In the response, it will contain entries with varying type
:
mp4_video_mixed
: The default, mixed video as a single recording file.mp4_video_unmixed
: Participant-separated video streams and their corresponding recordings
Example response:
// GET https://us-east-1.recall.ai/api/v2/recordings/{id}/
{
"id": "1cc4d5c1-0356-4d74-8908-3377f18674f4",
"outputs": [
{
"id": "925685c9-d627-49dc-92f7-c5a6883c1d67",
"type": "mp4_video_mixed",
"metadata": null,
"endpoints": [
{
"id": "64b255d2-92da-4988-a3c4-93c0909b79cd",
"type": "s3",
"video": {
"download_url": "..."
}
}
]
},
{
"id": "d53ab51b-867a-4c53-9fba-2770fd2e0955",
"type": "mp4_video_unmixed",
"metadata": null,
"endpoints": [
{
"id": "0fc9c786-922c-484d-a0ee-473466f95a30",
"type": "s3",
"parts": [
{
"stream_id": 16780288,
"download_url": "...",
"start_timestamp": 0.667142547,
"end_timestamp": 100.798540184
},
{
"stream_id": 16778240,
"download_url": "...",
"start_timestamp": 0.057904322,
"end_timestamp": 100.907554255
}
]
}
]
}
],
"created_at": "2024-04-09T18:19:33.559215Z",
"expires_at": null
}
Mapping recordings to participants
To map a recording back to its corresponding participant, Recall exposes a stream_id
for each recording part.
The stream_id
is equivalent to the id
of the participant in the participants
array of the bot. You should use this to associate each recording to a given meeting participant.
Updated 19 days ago