Skip to content

PlaylistEmbed

PlaylistEmbed displays a video player with a scrollable playlist sidebar.

import { PlaylistEmbed } from "@seeen/embed/playlist";
<PlaylistEmbed
videos={[
{ id: "1", title: "Episode 1", src: "https://example.com/ep1.m3u8", duration: 342 },
{ id: "2", title: "Episode 2", src: "https://example.com/ep2.m3u8", duration: 518 },
]}
/>
PropTypeRequiredDescription
initialIndexnumberoptionalZero-based index of the video to play first. Defaults to `0`.
maxVideosnumberoptionalMaximum number of videos to show. Applies to both modes; in API-driven mode, pagination stops once the limit is reached. Leave unset for no limit.
overlaysCtaOverlay[]optionalCTA image overlays applied to every video in the playlist.
pageSizenumberoptionalNumber of videos to fetch per page in API-driven mode. Defaults to 30. Ignored in pre-fetched mode.
PropTypeRequiredDescription
aspectRatiostringoptionalAspect ratio string from the API, e.g. `"16:9"` or `"9:16"`.
ctaTimestampsCtaTimestamp[]optionalTimestamped CTA banners that appear at specific points during playback.
descriptionstringoptionalOptional description of the video content.
durationnumberoptionalDuration in seconds. Used in playlist UI.
endCardEndCardoptionalEnd card shown when playback finishes. Overrides `sponsor`.
idstring | numberrequiredUnique identifier for the video.
posterstringoptionalURL of the poster image shown before playback begins.
shareSocialMediaIconsSocialMediaIcon[]optionalSocial share icons shown in the share popover.
sponsorSponsoroptionalSponsor shown on the end card when no explicit `endCard` is provided.
srcstringrequiredURL of the video source. HLS (`.m3u8`) and MP4 are supported.
startTimenumberoptionalStart playback at this position in seconds. Useful for moment clips.
thumbnailStoryboardUrlstringoptionalURL of a WebVTT thumbnail storyboard used for scrubber previews.
titlestringrequiredDisplay title of the video.