-
v0.5.3
🏗️ Build and Test JellyTau / Run Tests (push) Failing after 5m7s🏗️ Build and Test JellyTau / Android Compile Check (push) SkippedPublish Documentation / Build & publish docs to gitea-pages (push) Successful in 5m26sTraceability Validation / Check Requirement Traces (push) Successful in 18sBuild & Release / Run Tests (push) Failing after 5m5sBuild & Release / Build Linux (push) SkippedBuild & Release / Build Windows (push) SkippedBuild & Release / Build Android (push) SkippedBuild & Release / Create Release (push) Skippedreleased this
2026-08-15 22:30:00 +00:00 | 140 commits to master since this releaseBug-fix release, plus a user-set streaming bandwidth ceiling.
New
- Streaming bandwidth cap: choose a ceiling once and every video honours it,
live TV included, surviving a restart; a single video can be moved to another
ceiling from the player, resuming where it was (UR-074). - Mark as watched — or unwatched — for an episode, season, series or movie, from
where it is shown. Works offline; a season or series covers its episodes
(UR-073).
Fixed
- Downloads no longer mix media: opening a downloaded library listed every
downloaded item on the server, films under Music and albums under TV. - Pause and resume work. Neither did anything before: no cancellation existed in
the download stack, so a paused download ran on and overwrote its own row, and
a resumed one sat until something unrelated pumped the queue. - Downloads at a chosen bitrate are no longer corrupted by their own retries. A
transcode ignores Range and answers 200 with the whole stream; the worker
appended it to what was already on disk, so each retry concatenated another
full copy. - Partial files are reaped. The worker wrote
movie.partwhile every cleanup
path deletedmovie.mp4.part, so cancelled and failed downloads leaked their
partials indefinitely. - Background-audio handoff no longer loses time. The handoff plays a stream
whose zero is the point the screen was locked, and that offset was applied
only where a position was displayed — so progress reported to Jellyfin, and
the position the app resumed from, were short by however far in you locked it. - Full-screen video on Android hides the system bars. requestFullscreen() cannot
reach the Activity window from inside a WebView, so the control did nothing
while the bars stayed over the video. - Picture-in-picture works. It required a native video surface that the shipping
configuration never had, so the button could not work however it was pressed. - Pages no longer inherit the previous page's scroll position, and Back returns
to where you were. - Season headers no longer overlap their buttons on narrow screens.
- Favourites is a labelled destination in the library grid rather than an
unlabelled icon. - Android versionCode: v0.5.2 shipped 5002, but the stamping formula produced
1503 for 0.5.3 — lower, so Android refused the update as a downgrade. Every
0.5.x release built from it was un-installable for anyone on v0.5.2.
Note
- Native Android video decoding is now the default (it backs picture-in-picture).
It can be turned off in Settings › Native Video if video or seeking misbehaves.
Downloads
- Streaming bandwidth cap: choose a ceiling once and every video honours it,