Repository navigation
Releases
Astra 1.6.3
Build 20261104.20 (store package 2026110420).
Added
- Crash reports and usage stats, on by default, with a switch in
Settings > Send crash reports and usage stats. After an unexpected exit,
Astra sends the last actions it took and what was playing at a technical
level. It also sends one summary per playback (formats, transcode reasons,
start time, buffering, errors), daily counts of the screens and features
used, and a random install ID that changes every month. Titles, searches,
server addresses and names, and account details never leave the device.
Web addresses, IP addresses and email addresses are removed before
sending. Details: https://watchastra.com/privacy/.
Fixed
- Leaving Astra during a video, with Home or another app, made Vega OS
close it, because the video decoder was released too late. The decoder is
now released before Astra goes to the background. - After a video, Astra was the first app closed when the screensaver came
on: memory it had already freed was still counted against it. Astra now
leaves the player straight away and hands that memory back, using
about 60–100 MB in the background instead of 210–250 MB.
Astra 1.6.2
Fixes from a full code audit, on top of 1.6.1.
Fixed
- If Astra couldn't read its saved settings at launch, it stayed on the Loading screen for good, which looked like a lost sign-in. It now shows Retry, and never sends you to Setup on a failed read.
- The Fire TV Stick HD is held to 1920-wide video from its model when its decoder check gives no answer, so 4K files are converted for it instead of failing.
- Returning to a big library no longer reloads every item up to where you were in one request, and libraries kept in the background are trimmed to save memory.
- Play on the sleep timer notice works even if the timer ran out on a "Couldn't start" screen, and one Back press leaves that screen.
- Seeking and play/pause no longer stay disabled after a video handoff fails to release cleanly.
- A finished video no longer shows "Paused".
Changed
- The sign-in token is no longer added to the address of API requests. It still travels in the request headers, so it stays out of reverse-proxy and server access logs.
- The player and settings screens are split into smaller files. Nothing changes on screen.
Checked on a Fire TV Stick 4K (3rd Gen) running Vega OS 2.0: sign-in across the update, libraries, Settings, the connection test, the player's menus and autoplay into the next episode.
Vega build 2026102903. Astra is installed from the Amazon Appstore.
Astra 1.6.1
A bug-fix release on top of 1.6.0.
Fixed
- An episode whose stream stopped a second short of the end never finished, so the next episode didn't start, the End-of-episode sleep timer didn't fire and "Continue watching?" never counted it. It happened on converted (transcoded) streams started part-way through. Astra now treats a stall in the last seconds as the end.
- Holding Right to the end of a converted video showed "Couldn't start this episode". A jump into the last ten seconds now finishes the video instead.
- After the sleep timer ran out, Play reloaded the video but left it paused, so it took a second press.
All three were checked on a Fire TV Stick 4K (3rd Gen) running Vega OS 2.0.
Vega build 2026102901. Astra is installed from the Amazon Appstore.
Astra 1.6.0
Build 20261028.18 (Vega 2026102818), armv7.
Added
- Astra speaks German, Spanish, French, Italian and Portuguese as well as
English (#40). A new install starts with a language picker; Settings →
Language changes it later. Existing installs stay in English until changed.
Titles and descriptions from Jellyfin are shown as the server has them. - Each Fire TV model gets the H.264 bitrate limit Amazon publishes for it
(30 Mbps on the 4K Select, 20 Mbps on the 2026 sticks and anything
unrecognised). A file above it is converted by the server instead of
failing to decode. HEVC keeps no limit, so 4K remuxes still play
untouched. - Settings → Playback → HLS segment length: an off-by-default experiment that
sends 4K and HDR streams as fMP4 in 2-second segments instead of MPEG-TS. - Settings → About and Stats for Nerds show the Fire TV model and OS version.
Developer telemetry events carry them too. - A "No connection" notice with Retry when the network drops for more than a
few seconds. In a video it pauses first, and Retry starts again from the
same point. On other screens, Retry reloads the screen. - Sleep timer in the player's options (Menu): 15, 30, 60 or 90 minutes, or
the end of the episode. When it runs out, Astra pauses and saves your place
on the server; Play or Select picks up from there. It carries over into the
next episode, and leaving the player cancels it. - Settings → Playback → Second-choice language, used for audio (and for
subtitles with All subtitles on) when a video has nothing in your preferred
language. - An audio or subtitle track you pick during a series is used for the next
episodes of that series too. Picks are kept per account. - After 25 videos, Astra shows a one-time card asking for support on Ko-fi,
with a QR code. It never comes back once dismissed. There is no in-app
purchase. - Play/Pause on a card in a library grid starts it without opening the
details page: a movie or episode from where you left off, a series at the
episode you were part-way through, else its Next Up episode, else episode- While music is playing, Play/Pause pauses and resumes the music
instead.
- While music is playing, Play/Pause pauses and resumes the music
- Settings → Playback → "Ask if still watching": after 3, 5 or 10 episodes
in a row, or never. Before, "Continue watching?" always came after three.
It shows while Next episode autoplay is on, and 3 stays the default. - A Stop button on Now Playing ends the music and clears the queue, which
also hides the Now Playing bar. "Stop" from the system media controls now
does the same instead of pausing. The Now Playing buttons are now a
column, so Up and Down reach them without Left or Right changing the song.
Changed
- On the exit prompt, Back now closes Astra. Stay is still the focused button.
- Preferred audio language has a new first option, "Same as my Jellyfin
account", which follows the audio language set for your user on the server.
New installs start on it; existing installs keep the language they had. - Commentary and audio-description tracks are no longer picked
automatically, even when the file marks one as the default. - The Ko-fi QR code on About is drawn by Astra instead of shipped as an
image.
Fixed
- Music, direct-play video and external subtitles failed on Jellyfin 12.0,
which turns off the old way of passing the sign-in token in a link. Astra
now sends it both ways, so old and new servers work. - Leaving a video with the Home button reports the stop and position to
Jellyfin straight away. Before, the report waited for the player to finish
releasing, and could be lost if the system closed Astra first. - A two-letter subtitle language from Settings (such as "en") now matches
files tagged with three letters ("eng"), so All subtitles on finds the
right track.
Astra 1.5.1 — Crash fixes, season counts and faster seeking
Astra 1.5.1 for Amazon Fire TV (Vega OS), build 20261026.16, released 2026-10-26.
Install from the Amazon Appstore. Astra connects to your own Jellyfin server — there is no Astra account and no hosted catalog.
Thanks to @gerritsa (#31, #32) and @toomanybyt3s (#25), whose code is in this release. Everyone whose code ships in Astra is listed in CONTRIBUTORS.md.
Added
- Next Up cards show how many episodes of that season are still unwatched,
and an episode's page lists the rest of its season with the count in its
info line, so you can tell how much is left (#28). - Seeking: left/right and fast-forward/rewind add up into a visible target
using the configured seek step. Astra seeks once after 800 ms without
another press; Select jumps at once and Back cancels. Holding a direction
speeds the step up after one second and again after 2.5 seconds, up to 60
seconds a step. Scene thumbnails show while seeking when Jellyfin has
generated Trickplay images. Paused playback stays paused (#31, by
@gerritsa). - Settings → Playback → Subtitle appearance: text with a shadow (the new
default) or on a dark background. The playback controls hide again five
seconds after playback resumes (#32, by @gerritsa). - Bitrate caps of 4, 8, 12 and 20 Mbps. The lowest was 40 Mbps, too high to
make the server downscale (#21, #26). - Stats for Nerds shows what the device reported its video decoder can take
and whether that capped the stream. The line that showed Jellyfin's
transcode reason is now labelled "Server reason": it explains why the
server converts the file, not why playback failed (#21).
Fixed
- 4K files would not play on HD-only (1080p) sticks: the server offered the
stream at full 4K, which the stick cannot decode. When the device reports a
decoder narrower than 4K, Astra now asks the server to downscale (#21, #25,
by @toomanybyt3s). - When a Dolby Vision Profile 5 film fails to start, Astra says the server's
conversion failed and points at tone mapping and the bitrate cap, instead
of a generic error (#26). - Home library tiles showed the newest posters from every library of that
kind, so a private library's posters could appear on another tile. Each
tile now shows only its own library. - Crashes:
- Leaving playback while video was still loading could crash the player.
Stopping now waits for the data already being loaded, for up to three
seconds. - A very large library loaded as one response, long enough for the system
to kill Astra as unresponsive. The grid now loads 100 items at a time. - Astra frees cached library details when sent to the background or warned
about memory, so the system is less likely to close it on 1 GB sticks. - The video surface is released as soon as it goes away, instead of after
the rest of playback shuts down. - Moving quickly between items could swap the background image after the
screen had moved on.
- Leaving playback while video was still loading could crash the player.
Astra 1.5.0 — Watch together with SyncPlay
Astra 1.5.0 for Amazon Fire TV (Vega OS), build 20261026.1, released 2026-10-26.
Install from the Amazon Appstore. Astra connects to your own Jellyfin server — there is no Astra account and no hosted catalog.
Added
- SyncPlay: watch together with other Jellyfin apps. Settings has a SyncPlay
page that lists the server's groups to join and can start a new one. In a
group, picking something to play opens it for everyone, and play, pause and
seek from any member reach the whole group. Astra waits for the group when
a member is still loading and follows the group's position. - Astra rejoins its SyncPlay group after the app is closed or restarted, as
long as the group still exists and it is the same server and account. - The SyncPlay page follows the account's SyncPlay permission: join-only
accounts are not offered "Start a group", and accounts without SyncPlay see
why instead of a refused request.
Fixed
- One play/pause press could reach a SyncPlay group as a pause followed at
once by a play, undoing it. Group play/pause requests less than a second
apart are now treated as the same press.
Astra 1.4.0 — Playback stability, subtitle rendering, and per-server capabilities
Astra 1.4.0 for Amazon Fire TV (Vega OS), build 20260908.14, released 2026-09-08.
Install from the Amazon Appstore. Astra connects to your own Jellyfin server — there is no Astra account and no hosted catalog.
Fixed
- A movie could be shut down partway through. Watching an uninterrupted film,
the system lifecycle manager reclaimed Astra's media resources and took the
foreground roughly an hour in -- one title died at 61 minutes, 47% of the
way through. The platform notices video playback on its own, but that notice
is not durable over a feature-length runtime. Astra now tells the system
outright that the viewer is engaged, for as long as a video is open and
unfinished. A 130-minute film has since played start to finish without a
single interruption. - The hold spans pause as well as playback, so pausing a film no longer risks
the same shutdown, and it is released once a video plays out -- sitting on a
finished end screen no longer keeps the device awake indefinitely. - Turning on subtitles forced the server to re-encode the whole video. Astra
asked for every subtitle to be burned into the picture, which also told the
server it could not copy the video stream, so a file that needed no
conversion at all became a full transcode the moment captions were switched
on. On a server without hardware encoding that was the difference between
smooth playback and constant buffering. Astra draws text subtitles itself
again; burn-in is now reserved for the formats it cannot draw -- picture
based subtitles and styled ASS/SSA. (#20) - Subtitles in MP4 files (
mov_text) were treated as a format Astra could not
render, so they always burned in. They are text like any other and are now
rendered in the app. - Switching subtitle tracks, or turning them off, no longer reloads the video.
A subtitle Astra draws itself changes nothing about the stream the server is
sending, so the change is now instant. - A stream the server handed back in a form Astra could not play -- seen with
some MKV and AVI files -- is now asked for again properly instead of failing
to start. (#21)
Added
- Astra learns what each server can actually do and stops retrying what it has
already proved it cannot. A first run asks two questions per server -- whether
it has a graphics card and whether the room has surround sound, with "I don't
know" as a real answer -- and playback then corrects those answers on its own.
Settings gains a page to see and override any of it. - The one-time notice after an update is now a "What's new" list for the build
being installed, shown once and dismissed with a single press. - Each subtitle track in the player options is marked Instant or Reloads. A
release can carry twenty tracks whose titles differ only by language, and
nothing in the title says whether picking one is free: the ones Astra draws
itself switch on with no interruption, while picture-based ones need the
server to rebuild the stream with them painted in.
Full history: CHANGELOG.md · watchastra.com/releases
Astra 1.3.0 — HDR that stays HDR, and playback that recovers itself
Astra 1.3.0 for Amazon Fire TV (Vega OS), build 20260905.17, released 2026-09-05.
Install from the Amazon Appstore. Astra connects to your own Jellyfin server — there is no Astra account and no hosted catalog.
The playback release. Videos that used to stall, stick on a spinner or quit
partway through now recover on their own, HDR movies keep their HDR picture,
and large libraries open immediately and stay where you left them.
Fixed
- HDR movies were re-encoded to washed-out SDR. Astra asked the server for a
tone-mapped SDR stream on every HDR source, so an HDR10 or HLG movie arrived
looking flat and cost the server a full video re-encode to get there. Astra
now asks for the HDR variant its decoder has actually been shown to accept,
and the picture that reaches the TV is the picture on the disc. Confirmed on
a physical panel. - Playback could stall partway through a video and behave as though it had
ended, needing a manual track change to continue. Startup, seeks, track
changes, chapter reloads and error recovery now run as one cancellable
playback session instead of each driving the player directly, which removes
the overlapping-session races behind the stalls and the stuck spinners. - A video that ended early is now recognised as a failure and recovered from,
rather than reported as a finished video. - Progress, chapters and completion are measured against the item's real
duration and position, so resumed playback no longer reports the wrong spot. - Every installation now has its own stable Jellyfin device identity. Two Fire
TVs signed into the same account no longer collide in the server's session
list or evict each other's sessions. - Backing out of a movie or episode returns to the library exactly where you
left it -- same scroll position, same card focused -- instead of rebuilding
the grid from the top with a spinner. The grid is now measured in rows
rather than in cards, which is what put the list a third of the way down the
alphabet regardless of where you actually were.
Changed
- Library grids load roughly forty times faster. The grid used to request every
field the detail screen needs for every item in the library: 2.7 seconds and
2.04 MB for a 90-movie library, most of it cast and crew lists nothing on a
card ever draws. It now requests what a card needs -- 0.06 seconds and 135 KB
for the same library -- and fills in the details as focus settles, prefetching
two rows ahead so the info panel is complete by the time you reach it. - The player no longer re-renders four times a second while a video plays. JS
contention is this platform's signature failure mode and this was paid every
second of every playback. - The diagnostics overlay reports dropped frames as a ratio. The platform's
absolute frame counts are not believable -- roughly 4,600 fps on a 24 fps
stream -- so the counts have been removed rather than shown as fact.
Added
- Opt-in playback telemetry, off by default and inert unless an operator
explicitly arms it with a build-time endpoint and token. Nothing is
collected, buffered or sent otherwise, and the configuration is never
committed to the repository.
Full history: CHANGELOG.md · watchastra.com/releases
Astra 1.2.1 — Skip Credits, Next Episode, and a global subtitle preference
Astra 1.2.1 for Amazon Fire TV (Vega OS), build 20260902.1, released 2026-09-02.
Install from the Amazon Appstore. Astra connects to your own Jellyfin server — there is no Astra account and no hosted catalog.
Adds a global subtitle preference and Skip Credits / Next Episode playback
controls, and fixes a resume stall found while validating them on hardware.
Added
- A subtitle preference in Settings > Playback: Default (per video), All
subtitles on, All subtitles off, or Only forced. Resolved against each
video's PlaybackInfo response before its stream is built, so the choice
applies to movies and episodes, initial playback and resume alike. A track
chosen in the player affects only that video and does not change the
preference. - Skip Credits, from Jellyfin
Outromedia segments or a chapter named
"Credits", with Ask / Auto-skip / Ignore in Settings > Playback. - Next Episode, with an optional autoplay countdown (Settings > Playback:
Next episode autoplay, countdown duration). Autoplay is capped at three
episodes in a row before Astra pauses on a Continue Watching prompt; a
manual Next Episode always resets the count, and a new playback session
starts at zero.
Fixed
- Playback could get stuck on "Buffering" with zero frames decoded when a
transcoded session with burned-in subtitles resumed, jumped a long
distance, or switched tracks partway into the video. The server's fMP4
segments start at their source timestamp while the player's clock started
at zero, so nothing lined up. Astra now starts that kind of session in
Shaka's sequence mode, which places the first segment at the player's
clock instead.
Full history: CHANGELOG.md · watchastra.com/releases
Astra 1.2.0 — Playback repaired for Vega OS 1.2
Astra 1.2.0 for Amazon Fire TV (Vega OS), build 20260829.12, released 2026-08-29.
Install from the Amazon Appstore. Astra connects to your own Jellyfin server — there is no Astra account and no hosted catalog.
Repairs playback on Fire TV devices that have taken the Vega OS 1.2 update.
Nothing in the app changed to cause the failures: the published 1.1.2 package
reproduces all of them on an updated device.
Fixed
- Resuming a title from a saved position no longer exits to Home.
- Switching audio tracks during playback no longer exits to Home.
- Turning on burned-in subtitles during playback no longer exits to Home.
- Release logging no longer blocks the JavaScript thread. On Vega OS 1.2 the
native logging bridge stalled the thread until the Fire TV thread monitor
terminated the app; console output now goes to a bounded in-memory buffer,
withconsole.errorretained. - The HLS resume trim copies the untouched playlist suffix with a native copy
instead of rebuilding a 1.4-2.2 MB playlist character by character, removing
about 5 seconds of synchronous work from every stream load.
Changed
- Requires Vega OS
1.2, as declared in the manifest and required by Vega
SDK 0.24. Devices on an earlier Vega OS remain on 1.1.2. - Built with Vega SDK
0.24.9914; Amazon device libraries updated to the
SDK 0.24 pins for the React Native 0.72 line. React and React Native are
unchanged.
Added
- Optional "Stats for Nerds with logs" view showing manifest handling and load
timings, in Settings > Playback and the in-player Diagnostics column. Off by
default. Vega exposes no JS console output to any retrievable log artifact,
so this is the only on-device playback diagnostic. - A one-time developer notice acknowledging the disruption, dismissed with a
single OK. npm run build:submission, which sets the Vega package build number from
src/config/app.ts.npm run build:releaseleaves it at 0, which sideloads
but fails Amazon validation.
Known limitations
- A double-arrow chapter jump still takes roughly 38 seconds. This predates the
OS update and sits below the JavaScript thread. - Subtitles rendered by the app can drift out of sync after a long seek that
requires buffering.
Full history: CHANGELOG.md · watchastra.com/releases