Skip to main content

Module stream

Module stream 

Source
Expand description

Stream resolution (spec 0003, AC1–AC5): turns a track ID into a StreamPlan the player can fetch, through GET /tracks/{id}/playbackinfopostpaywall.

One request per resolve, at the highest quality asked for: Tidal grants less by itself when the track or the account has less, and the granted quality is reported in ResolvedStream::quality. Nothing is downloaded here; the plan only says where the bytes are.

Structs§

ResolvedStream
A resolved track: what Tidal granted, and where to fetch it.
Segment
One media segment of a StreamPlan::Segmented stream.
StreamResolver
Resolves tracks to streams through the Authenticator.

Enums§

Codec
An audio codec the player can decode.
StreamError
Why a track could not be resolved.
StreamPlan
Where a track’s bytes are.
Unsupported
What made a stream unplayable.

Constants§

RESOLVE_TIMEOUT
How long the playbackinfopostpaywall request may take before it fails with AuthError::Transport.

Functions§

parse_playback_info
Parses and validates a playbackinfopostpaywall body (AC2–AC4).