Skip to content

v0.7.0-beta

Latest

Choose a tag to compare

@Boof2015 Boof2015 released this 01 Aug 21:43
· 4 commits to dev since this release

Welcome to Astra v0.7.0-beta

Astra v0.7.0-beta is the largest update the project has received so far, and a major expansion of what Astra can be.

This release introduces Parallax, Astra’s new local multi-room audio system, alongside Parallax Receiver and the dedicated Parallax OS for Raspberry Pi devices. It also brings native IAMF and Eclipsa Audio playback through the Astra Spatial Engine, with local binaural and multichannel rendering, three-dimensional speaker positioning, and support for height-channel layouts.

Beyond those features, v0.7.0-beta adds dynamic playlists, track ratings, listening statistics, Astra Mobile synchronization, Companion API v2, light mode, controller support, session restoration, major library and queue improvements, Astra Signal sharing, expanded visualizers, and extensive performance, stability, and testing work.

Nearly every part of Astra has been worked on in this release.

Parallax

  • Added Parallax, an opt-in experimental system for synchronized, gapless playback across multiple devices on your local network
  • Guided discovery and secure PIN pairing with authenticated, certificate-pinned connections
  • Astra can operate as a Parallax host or sink, with dedicated zone displays and connection status controls
  • Per-zone playback selection, naming, volume, output trim, delay calibration, test tones, and bulk controls
  • Automatic clock calibration, drift correction, mid-track joining, reconnect recovery, and gapless track handoffs
  • Added a standalone headless Parallax Receiver daemon for Raspberry Pi-class Linux devices, including web-based pairing, status, output selection, and automatic updates
  • Added Parallax OS, a flashable Raspberry Pi image with Wi-Fi onboarding, automatic security updates, service watchdogs, health-checked upgrades, and rollback
  • Parallax OS TV mode includes artwork and now-playing displays, on-TV pairing and settings, transport controls, HDMI-CEC wake/standby/input switching, and TV remote support
  • Added zone enable/disable controls without disconnecting receivers, allowing speakers to rejoin playback without being paired again

Spatial Audio

  • Added native IAMF and Eclipsa Audio playback as first-class local library formats
  • Added the Astra Spatial Engine for fully local decoding and rendering of channel-based and scene-based spatial audio
  • IAMF/Eclipsa content can render binaurally for headphones or directly to supported multichannel hardware
  • Added support for vertical and height-channel layouts, including 7.1.4 rendering
  • Added shared Speaker Stage controls and a Virtual Speaker Room for positioning virtual speakers around the listener in three dimensions
  • Added live speaker placement, elevation, room geometry, and output-stage controls
  • Improved binaural timbre with diffuse-field equalization and bass crossover processing
  • Added output safety and headroom protection through a look-ahead brick-wall limiter

Library & Metadata

  • Album and artist pages have been redesigned with improved layouts, navigation, and transitions
  • Added dedicated Genre and Year library views
  • Albums can now be sorted chronologically by year (#92)
  • Artist lists now show album counts, and artist pages include a dedicated Singles section (#156)
  • Multi-disc releases now display clear disc separators and handle restarted track numbering correctly (#145)
  • Added library folder filtering for browsing individual local sources
  • Added support for separate album artwork files such as cover.* and folder.* (#163)
  • Fixed duplicate library entries after case-only folder or file renames (#180)
  • Improved Subsonic/Navidrome synchronization so metadata appears sooner, artwork loads on demand, and server favorites and playlists are imported (#147)
  • Added better filtering of filesystem artifacts during library scanning
  • Added duplicate detection to library integrity scanner
  • Added Opus R128 ReplayGain support

Playlists, Ratings & Stats

  • Added dynamic playlists that automatically update from rules for metadata, favorites, ratings, source, play count, dates, duration, BPM, and more (#168)
  • Dynamic playlists support multiple conditions, configurable sorting, result limits, and presets such as Unplayed, Recently Added, Favorites, and Most Played
  • Added 1–5 star track ratings in half-star steps, with track-list controls, context-menu actions, and rating calibration
  • Ratings can be used as dynamic-playlist conditions and sorting criteria
  • Reworked play-count tracking and last-played data for more reliable library history
  • Normal playlists can now intentionally contain multiple occurrences of the same track
  • Playlist, album, artist, and collection headers gained expanded play, shuffle, play-next, and queue actions
  • Missing playlist tracks are rematched against library metadata and can be manually associated with a replacement file (#179)
  • Added optional detailed Listening Stats with time ranges, listening-time or play-count ranking, active days, and top tracks, albums, and artists
  • Listening Stats summaries, top tracks, and top albums can be exported as shareable PNG cards
  • Home now displays the total duration of the music library

Playback & Queue

  • Rebuilt the queue system for more predictable collection queueing, duplicate handling, navigation, and playback state
  • Added collection-level queue menus and split-button actions for replacing, appending, or playing content next
  • Queue contents, playback state, and the active session can now be restored after restarting Astra
  • Added smooth fade-in and fade-out when resuming or pausing playback (#141)
  • Improved skip behavior, prebuffering, and loading performance for large tracks
  • The transport information line can now show the active output device, the current album, or be hidden
  • The transport album display is clickable for direct navigation to the current album
  • Improved bit-perfect on Windows WASAPI

Interface & Controls

  • Added a complete light theme across the main interface and Parallax surfaces (#51)
  • Redesigned Astra Mini with improved layouts, correct theme/accent handling, responsive sizing, and a separate Linux window class (#132, #136)
  • Added configurable keyboard and mouse bindings with per-action defaults and reset controls
  • Playback shortcuts can optionally work globally while Astra is unfocused
  • Added experimental Xbox and PlayStation controller navigation with animated focus indicators, controller glyphs, tab controls, and radial actions
  • Global fuzzy matching and highlighted results are now used across Astra’s search surfaces
  • Added selective settings import and export for appearance, interface, library views, analyzer profiles, EQ presets, playback, shortcuts, integrations, and experiments
  • Astra now restores more navigation, library, playlist, queue, and interface state between sessions
  • Updated dropdowns and selectors to the new shared settings design
  • Added smoother view and library-tab transitions
  • Replaced the legacy file picker with Astra’s current open-file flow
  • Added additional reset actions and clearer settings-state handling
  • Added parsing + rendering for enhanced lrc word by word timing
  • Added rendering for XLRC word by word timing
  • Fixed lyrics shelf bug when reduced motion is enabled
  • Close the miniplayer by clicking the miniplayer button again

Mobile & Companion API

  • Added Astra Mobile compatibility to the local phone controller
  • Added secure synchronization of favorites and normal or dynamic playlists between Astra and Astra Mobile
  • Sync conflicts can be reviewed and resolved before changes are applied
  • Improved local-network pairing, credential handling, and sync security
  • Added Companion API v2 for observing and controlling playback, performing bounded library searches, editing the upcoming queue, and managing favorites or local playlists
  • API v2 uses opaque track, album, artist, and playlist references without exposing filesystem paths
  • Added paired HTTPS clients, per-client permission scopes, request limits, validated event topics, and credential rotation
  • Existing /v1 widgets, remotes, and integrations remain supported
  • Added an OpenAPI 3.1 contract, companion API documentation, and runnable examples
  • Fixed browser CORS handling for authorized local API clients

Lyrics & Sharing

  • Added XLRCDB lookup and download support (#162)
  • Updated XLRC support to @boof2015/xlrc 0.2.1
  • LRCLIB can now use a custom server or self-hosted mirror instead of the default endpoint (#178)
  • Improved LRCLIB request handling, lookup deduplication, timeout behavior, and mirror switching
  • Fullscreen lyrics preferences are now remembered between sessions
  • Added Astra Signal for creating scannable track cards and links
  • Astra Signal cards can be copied as images, saved as PNG files, or shared through a copied link

Audio, Visualizers & Performance

  • Increased the parametric equalizer limit from 10 to 20 bands
  • Updated Astra’s scopes with expanded native DSP processing and rendering improvements (Porting back improvements from Prism)
  • Added more spectrogram controls, heat palettes, spectrum display options, and an improved spectrum bar mode
  • Improved visualizer scheduling and fixed unnecessary spectrum refresh work
  • Optimized artwork caching, selection history, and large-library rendering
  • Improved application-wide memory accounting, including more accurate reporting on Windows, Linux, and macOS
  • Added clearer user-facing errors when native DSP modules are unavailable
  • Added native-module packaging and troubleshooting documentation for third-party distributions
  • Added third-party license notices for the IAMF, spatial-rendering, FLAC, and Opus components

Stability & Tests

  • Fixed drag-and-drop regressions and packaged SQLite loading failures
  • Improved controller scaling, navigation restoration, remote-source synchronization, and scope availability handling
  • Expanded automated coverage for Parallax pairing, security, synchronization, drift correction, gapless playback, zone controls, and receiver recovery
  • Added receiver tests for ALSA playback, CEC control, Wi-Fi onboarding, web management, systemd watchdogs, and update behavior
  • Added coverage for IAMF detection and parsing, spatial rendering, Companion API v2, Astra Mobile sync, dynamic playlists, ratings, listening stats, session restoration, settings transfer, library path handling, shortcuts, controllers, and visualizers
  • Pad discord rpc text fields with U+200B for a 2ch minimum by @lillithrosepup in #192

Join the Discord server!

Big thank you to my internal testers :)

Full Changelog: v0.6.1-beta...v0.7.0-beta