← Back to research
Adaptive media streaming

Pixel Prism

A browser can accept an HEVC picture and reject its TrueHD soundtrack. An AirPlay receiver may need HLS. A phone on cellular may need a smaller picture. Pixel Prism adapts the parts of a media file that each player needs changed, when playback begins.

Compatible streams are copied. Incompatible tracks are converted. Adaptive renditions begin at the current playhead, so Pixel Brite can serve different devices from one source file without maintaining a second optimized library.

Adaptive HLS ladder with 2160p, 1080p, and 720p renditions. HEVC HDR10+ video is copied while TrueHD audio is converted to AAC.

One source, four playback paths

The decision starts with the receiver’s container, codec, audio, subtitle, and HDR support. An HEVC HDR10+ movie with TrueHD audio can keep its original picture while Prism converts only the soundtrack to AAC.

Direct play
Serve the original file.
Remux
Repackage the same streams in a container the player accepts.
Convert one track
Convert incompatible audio or subtitles and copy the rest.
Adaptive HLS
Create the resolutions and bitrates this session needs, beginning at the current playhead.

Encode around the playhead

The HLS presentation describes the title’s full duration immediately. Behind it, Prism encodes a short window around the playhead. A seek outside that window starts a new encoder at the requested timestamp; skipped material costs no encoding time.

Decoding, scaling, tone mapping, and encoding use hardware paths where the host supports them. The work follows playback demand rather than the length of the library.

Change quality or device without starting over

On a poor connection, the player can step down before its buffer empties, then climb again as bandwidth returns. Because each rendition can begin at the current playhead, the server does not need to prebuild the whole ladder.

Device handoff uses the same machinery. When playback moves to AirPlay or Chromecast, Prism creates a receiver-compatible presentation at the current timestamp. It copies the streams the receiver accepts and adapts the rest.

Continuous encoders, requested segments

Video renditions keep their encoder running across HLS segment boundaries. The source clock and audio timeline continue through each segment, avoiding the resets and seams caused by encoding segments independently.

Adaptive music starts with a two-second Opus segment at 64 kbps. The player can choose 64, 96, 128, or 192 kbps for the next segment. Prism changes bitrate at that boundary while keeping the decoder, resampler, encoder timeline, and muxer alive. Only the requested bitrate is encoded.

HDR survives the transcode

Direct play and remux leave HDR video untouched. When video must be resized or re-encoded for an HDR target, the new rendition remains HDR. Prism carries forward HDR10 and HDR10+ metadata, HLG signaling, and Dolby Vision metadata. SDR targets receive a tone-mapped stream.

Prism rewrites Dolby Vision metadata that depends on frame dimensions. For Dolby Vision Profile 7 with a Full Enhancement Layer (FEL), it reconstructs the picture from the base and enhancement layers before scaling instead of throwing the enhancement layer away.