lvpr.tv) for playing streams and assets. It supports WebRTC (low latency) and HLS/MP4 fallback, and reports viewership metrics when used with the Studio API.
React Player
From@livepeer/react, use Player.Root, Player.Video, Player.Controls, and other primitives. Pass a src (from getSrc(playbackInfo) from the Playback Info API) or a playbackId (with a provider). The Player prefers WebRTC for live and MP4 for short VOD; it falls back to HLS on errors or when WebRTC isn’t available (e.g. B-frames in stream).
- Livestream: Play a livestream
- VOD: Play an asset
- Access control: Pass
accessKeyorjwtas needed. See Access control.
Embeddable player (iframe)
- Livestreams: Default is low-latency WebRTC. Use
&lowLatency=falsefor HLS or&lowLatency=forcefor WebRTC only. Use&clipLength=60(max 120) for clipping. Useconstant=truefor constant playback (e.g. music). - VOD: Options include
&muted=false,&autoplay=false,&loop=true.
Thumbnails
- VOD — Thumbnails are in the playback info (WebVTT + keyframe images). See Thumbnails (VOD).
- Livestream — Playback info includes a PNG thumbnail URL that updates with the latest frame. The Player can use it as the video poster.