Skip to main content

## Module online

Source
Expand description

TRACES: UR-002, UR-007 | DR-013 | IR-010

## Structs§

CreatePlaylistResponse 🔒
  Jellyfin playlist creation response
DeviceProfile 🔒
DirectPlayProfile 🔒
ItemsResponse 🔒
JRayActor
  A single actor returned by the JRay plugin’s “context at time t” endpoint.
JRayContext 🔒
  Envelope returned by the JRay `jray?t=` endpoint. Extra keys (future `locations`, `trivia`, …) are ignored so the client tolerates schema growth.
JellyfinItem 🔒
JellyfinMediaSource 🔒
JellyfinMediaStream 🔒
JellyfinPlaylistItem 🔒
  A playlist item from Jellyfin — wraps a regular item with an entry-scoped ID
JellyfinUserData 🔒
  Per-user state Jellyfin attaches to an item (favourite, played, resume).
NegotiatedSource
NegotiatedStream
OnlineRepository
  Online repository - fetches data from Jellyfin server via HTTP
PlaybackInfoRequest 🔒
PlaybackInfoResponse 🔒
PlaylistItemsResponse 🔒
  Jellyfin playlist items response — items include PlaylistItemId
SubtitleProfile 🔒
TranscodingProfile 🔒

## Enums§

ImageTags 🔒

## Constants§

DEVICE_ID 🔒
  Every request this app makes identifies the same device, so the device id alone cannot tell two transcodes of the same item apart — see `begin_video_play_session`.

## Statics§

PLAYBACK_QUALITY_OVERRIDE 🔒
  The ceiling in force for the playback happening right now, when the viewer has moved this one item off the device default.
STREAMING_QUALITY 🔒
  The viewer’s durable bandwidth ceiling — the device default.
VIDEO_PLAY_SESSION 🔒
  The `PlaySessionId` of the video transcode most recently opened, so the next open can stop it.

## Functions§

adopt_video_play_session
  Take ownership of a transcode this process did not build a URL for, returning the session it replaces.
album_from_track 🔒
  Build the album card a collapsed group of tracks stands for.
begin_video_play_session
  Claim a transcode identity for a stream about to be opened, returning the new `PlaySessionId` and the one it replaces (if any).
build_favorites_endpoint 🔒
  Build the Jellyfin endpoint for a favourites listing.
build_get_items_endpoint 🔒
  Build the Jellyfin endpoint for a folder listing.
build_latest_items_endpoint 🔒
  Build the Jellyfin endpoint for a “recently added” listing.
build_next_up_endpoint 🔒
  Build the Jellyfin endpoint for a Next Up listing.
clear_playback_quality_override
  Drop any per-playback override, returning to the device default.
collapse_tracks_into_albums 🔒
  Collapse newly-added tracks into the album they belong to.
decide_playback_kind
  The direct-play / direct-stream / transcode decision.
effective_streaming_quality
  The ceiling that actually applies to a stream opened now: the per-playback override if the viewer set one, otherwise the device default.
latest_items_fetch_limit 🔒
  How many rows to ask the server for, given how many the row will show.
playback_quality_override
  The per-playback override, if one is in force.
set_playback_quality_override
  Move this playback to a different ceiling without disturbing the default.
set_streaming_quality
  Set the durable device default. Applies to every stream opened afterwards that has no per-playback override.
streaming_quality
  The durable device default, ignoring any per-playback override.