mirror of
https://github.com/streamyfin/streamyfin.git
synced 2026-06-02 20:18:29 +01:00
docs(casting): quality menu reuses expanded shared BITRATES
Per review: the cast quality selector reuses the app-wide BITRATES constant (expanded to the Jellyfin Android TV ladder) instead of a cast-specific list, filtered by device capability. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -139,9 +139,14 @@ thinner and gives sub-project C (the file split) a clean unit to extract.
|
||||
- **Add:** `useCastSelection` for the active selection.
|
||||
- `availableVersions` — the item's real `currentItem.MediaSources` (id, name,
|
||||
bitrate, container).
|
||||
- `availableQualities` — the bitrate-cap options, kept as a **separate axis** from
|
||||
version; this is the real `maxStreamingBitrate` transcode cap, no longer disguised
|
||||
as media sources.
|
||||
- `availableQualities` — the bitrate-cap options, a **separate axis** from version;
|
||||
this is the real `maxStreamingBitrate` transcode cap, no longer disguised as media
|
||||
sources. It reuses the app-wide `BITRATES` constant
|
||||
(`components/BitRateSheet.tsx`) — no cast-specific list — and `BITRATES` is
|
||||
expanded to the fuller Jellyfin Android TV bitrate ladder so every surface (cast,
|
||||
native player, downloads) gains the extra tiers. The cast menu filters `BITRATES`
|
||||
to tiers within the connected device's `maxVideoBitrate` (from sub-project A's
|
||||
`detectCapabilities`), so only usable tiers are shown.
|
||||
- `availableAudioTracks` / `availableSubtitleTracks` — derived from the **selected
|
||||
version's** `MediaStreams`, not always `MediaSources[0]`.
|
||||
- Every "selected" indicator reads from `currentSelection`.
|
||||
@@ -176,6 +181,11 @@ this is consistent with audio. The `pendingSelection` covers the re-buffer gap.
|
||||
| `hooks/useCastSelection.ts` | New — A3 selection state (truth + pending) |
|
||||
| `app/(auth)/casting-player.tsx` | Replace track state with `useCastSelection`; real versions + separate quality axis |
|
||||
| `components/chromecast/ChromecastSettingsMenu.tsx` | Separate Version / Quality sections; selected rows from `currentSelection` |
|
||||
| `components/BitRateSheet.tsx` | Expand the shared `BITRATES` ladder (Jellyfin Android TV tiers) |
|
||||
|
||||
The `BITRATES` expansion is a one-array change to a shared constant. It is
|
||||
deliberately app-wide: the native player and downloads bitrate menus gain the same
|
||||
tiers, which is the requested behaviour.
|
||||
|
||||
## 12. Testing
|
||||
|
||||
|
||||
Reference in New Issue
Block a user