All sources for embeds have a deterministic url, this article gives you the various paths and filenames to find the raw assets you are looking for.
https://space-[space_hash].video-dns.com/[embed_id]/[filename]
To split the embed hash into both the space hash and the embed id you take the first 5 digits for the space hash and the next 10 digits for the embed id.
https://space-ubg50.video-dns.com/Cq5Ilpnar1/h264_sd.mp4
Every embed also publishes a manifest.json file at the root of the embed:
https://space-[space_hash].video-dns.com/[embed_id]/manifest.json
This is the machine-readable entry point used by the mave component library. The <mave-player> element can take only an embed id, fetch this manifest, and use it to decide which video, audio, subtitles, poster and storyboard files to load. Because the manifest contains the metadata needed by the player, the component library can be used directly in a standalone web page without calling the mave application first.
The manifest includes metadata such as:
| Field | Description |
|---|---|
| id | The embed id. |
| name | The embed name. |
| space_id | The space id used to build CDN urls. |
| poster | Poster, thumbnail and custom thumbnail information. |
| settings | Player settings such as aspect ratio, loop, controls, color and poster preference. |
| video | Video metadata including duration, language, status, version, original file and generated renditions. |
| subtitles | Subtitle tracks with labels, languages and paths. |
| audio_tracks | Optional additional audio tracks. |
The manifest itself stays at the root of the embed. Generated media files can be versioned: once the player has read video.version, it loads media from a versioned path such as https://space-ubg50.video-dns.com/Cq5Ilpnar1/v8/thumbnail.jpg. This lets clients refresh the manifest while still caching the generated files safely.
These are full length renditions that to be used in the <mave-player> element.
| Resolution | Codec | Container | Filename |
|---|---|---|---|
| SD 480p | H.264 | MP4 | h264_sd.mp4 |
| HD 720p | H.264 | MP4 | h264_hd.mp4 |
| FHD 1080p | H.264 | MP4 | h264_fhd.mp4 |
| QHD 1440p | H.264 | MP4 | h264_qhd.mp4 |
| UHD 4k | H.264 | MP4 | h264_uhd.mp4 |
| SD 480p | H.264 | HLS | /h264_sd_hls/playlist.m3u8 |
| HD 720p | H.264 | HLS | /h264_hd_hls/playlist.m3u8 |
| FHD 1080p | H.264 | HLS | /h264_fhd_hls/playlist.m3u8 |
| QHD 1440p | H.264 | HLS | /h264_qhd_hls/playlist.m3u8 |
| UHD 4k | H.264 | HLS | /h264_uhd_hls/playlist.m3u8 |
These are renditions that are limited to 60 seconds to be used in the <mave-clip> element.
| Resolution | Codec | Container | Filename |
|---|---|---|---|
| SD 480p | HEVC | MP4 | hevc_sd_clip.mp4 |
| HD 720p | HEVC | MP4 | hevc_hd_clip.mp4 |
| FHD 1080p | HEVC | MP4 | hevc_fhd_clip.mp4 |
| QHD 1440p | HEVC | MP4 | hevc_qhd_clip.mp4 |
| SD 480p | AV1 | MP4 | av1_sd_clip.mp4 |
| HD 720p | AV1 | MP4 | av1_hd_clip.mp4 |
| FHD 1080p | AV1 | MP4 | av1_fhd_clip.mp4 |
| QHD 1440p | AV1 | MP4 | av1_qhd_clip.mp4 |
Optimizing video files for smooth scrubbing involves adding extra keyframes, which are reference points in a video. Standard videos space keyframes at intervals, leading to choppiness when scrubbing through the video, as the player calculates frames from distant keyframes.
| Resolution | Codec | Container | Filename |
|---|---|---|---|
| SD 480p | H.264 | MP4 | h264_sd_clip_keyframes.mp4 |
| HD 720p | H.264 | MP4 | h264_hd_clip_keyframes.mp4 |
| FHD 1080p | H.264 | MP4 | h264_fhd_clip_keyframes.mp4 |
| Resolution | Codec | Description | Filename |
|---|---|---|---|
| Original | JPEG | First frame of video | poster.jpg |
| Original | WebP | First frame of video | poster.webp |
| SD 360p | JPEG | First frame of video or custom upload by user | thumbnail.jpg |
| SD 360p | JPEG | Frame taken on 0/6 of video in small format | thumbnail_0.jpg |
| SD 360p | JPEG | Frame taken on 1/6 of video in small format | thumbnail_1.jpg |
| SD 360p | JPEG | Frame taken on 2/6 of video in small format | thumbnail_2.jpg |
| SD 360p | JPEG | Frame taken on 3/6 of video in small format | thumbnail_3.jpg |
| SD 360p | JPEG | Frame taken on 4/6 of video in small format | thumbnail_4.jpg |
| SD 360p | JPEG | Frame taken on 5/6 of video in small format | thumbnail_5.jpg |
| Original | AVIF | Poster overlay with play icon | placeholder.avif |
| Original | WebP | Poster overlay with play icon | placeholder.webp |
| Original | JPEG | Poster overlay with play icon | placeholder.jpg |
| Sprite | JPEG | Storyboard sprite sheet for thumbnails | storyboard.jpg |
The matching WebVTT manifest for storyboard navigation is published as storyboard.vtt.
| Bitrate | Codec | Container | Filename |
|---|---|---|---|
| 128kbps | LAME | MP3 | audio.mp4 |
| 128kbps | AAC | HLS | audio_hls/playlist.m3u8 |
If the source video ships with multiple audio tracks, they are published in the same pattern as _audio_1_hls/playlist.m3u8, _audio_2_hls/playlist.m3u8, etc. Audio tracks added manually through the dashboard receive generated IDs (for example _audio_track_a1b2_hls/playlist.m3u8_) and are accessible via the API.