New tabbed navigation makes it faster to switch between Library, Channels, Search, Discover, and Guide.
Poster images now appear throughout the app — search results, playlists, channels, history, and more — replacing the old screen caps lists.
A new Import Issues view helps you find and fix unmatched media in your library, and movie title parsing has been significantly improved for tricky directory names and edition suffixes.
Multi-file movies now support edition selection (Theatrical, Director's Cut, etc.) directly from the detail view.
The streaming pipeline has been split into independent decode and encode stages for better reliability, fixing BDMV deadlocks and audio sync issues along the way.
Remote Access Invites let you onboard devices outside your local network with a simple invite code.
A redesigned "By Feel" mood-based discovery feature uses multi-select preference rounds and SIMD-accelerated similarity for smarter recommendations.
On tvOS, the server list has been redesigned with a cinematic hero layout, and grid items now feature a custom green focus glow.
Dozens of UI refinements and bug fixes round out the release.
Tabbed Navigation
Paged tab navigation replaces the vertically stacked root sections with a swipeable tab strip. Video, Audio, and Photos are consolidated into a single Channels tab. Channel Guide, Discover, and Search each get their own tab for quick access. The tab strip sits at the bottom of the screen on iOS and visionOS, and at the top on macOS
Focus-based tab navigation on tvOS adapts the tab strip for Siri Remote interaction with debounced focus changes, proper focus recovery after content rebuilds, and native TabView integration
Library tab opens by default on launch, with identity-based tab tracking that preserves your position
Discovery & Browsing
Discovery Wizard redesigns the Discovery Hub with step-stack navigation for a more guided recommendation experience
"By Feel" mood-based discovery redesigned with multi-select preference rounds that dynamically terminate when enough signal has been gathered. The recommendation engine now uses tally-based vote propagation with SIMD-accelerated similarity scoring, replacing the previous binary-choice approach. Candidate selection is biased toward metadata-rich movies for better propagation reach across the library
Recently Added discovery feature lets you browse newly imported content filtered by category
Spotify-style genre cards replace the previous pill buttons with a tabbed layout for richer genre browsing
Random/alphabetical sort toggle in genre browse view for flexible content exploration
Poster Images & Visual Polish
Poster images throughout the app now appear in library search results, playlists, favorites, channels, history, actor browse, genre browse, and discovery recommendations. The previous text-only lists have been replaced with rich thumbnail grids
Server-side thumbnail proxy routes all client poster images through the server, improving load times and reducing external network requests from clients
Tap-to-expand poster viewer across all detail views lets you view full-screen poster art with a single tap
Adaptive shadow on poster images in movie, show, and album detail views for added depth
Branded poster placeholder eliminates layout jumps on detail views while images load
Alphabetical search results sorted with leading articles ("The", "A", "An") dropped for natural ordering
Pill-shaped Recent Searches with an increased history limit from 10 to 25
Library Import & Metadata
Import Issues view surfaces unmatched media in the Library tab, letting you see which files failed to match, delete them with full cleanup, or submit them for review. Absolute file paths are shown for easy identification
Improved movie title parsing handles dot-separated directory names, extracts IMDB IDs from NFO sidecar files, falls back to grandparent directories and base titles for edition suffixes, matches mid-string years, and tries both "and" and "&" variants when searching
Metadata re-match with visual progress shows a progress indicator during library re-scans when backfilling metadata for previously unmatched content
Duplicate TMDB match consolidation during re-match prevents the same movie from appearing multiple times
Mini-series support for Part-numbered files in show locations (e.g., "Part 1", "Part 2" recognized as episodes)
Media naming guide added as a reference for library import best practices
Fix same-name TV shows merging into a single record during import when they are actually different series
Fix TV show metadata matching when the directory name includes a year suffix
Fix franchise-numbered movies matching the wrong TMDB result (e.g., "Rocky 3" no longer matching "Rocky")
Fix movie file misassignment caused by year-insensitive metadata matching
Database integrity migration to FK CASCADE and triggers for referential integrity
Multi-File Movies
Multi-file movie edition selection on the movie detail view lets you choose between different editions (e.g., Theatrical, Director's Cut) when multiple files are associated with a single movie
Smart part labels in the multi-file picker automatically detect and display meaningful labels from filenames
Bulk management of multi-file movies in the View Issues popup with section grouping and delete support
Streaming Pipeline
Split decode/encode pipeline architecture separates the GStreamer transcoding pipeline into independent decode and encode actors, improving modularity and enabling future per-component scaling. BDMV playback has been migrated to the new architecture
Fix BDMV playback resolving an actor deadlock during pipeline preroll and DTS-HD MA audio corruption
Fix SEGV crash in videoconvertscale caused by an unbounded post-decode queue
Fix audio/video sync regression introduced during the pipeline split, with real-time pacing added to the decode distribution loop
Remote Access
Remote Access Invite system for onboarding devices that are not on the local network. Create invite codes on the server, optionally pre-assign device aliases, and have remote clients join via the invite flow without needing local discovery
Remote Access toggle in Settings > Options for easily enabling or disabling remote connectivity
Fix tailnet reconnection and ping timeout issues for remote invite connections
Increased firewall diagnostic frequency from 1 hour to 1 minute for faster troubleshooting
tvOS
Cinematic server list redesigned with a hero image and shelf layout for a more immersive tvOS experience
Redesigned server management with compact grid items and gradient cards
Custom focus glow for poster images, actor grid items, and cast member cards using a green highlight effect
Smaller grid item labels reduced from title3 to callout font for a cleaner grid appearance
Disconnect confirmation alert prevents accidentally exiting a server connection
Redesigned Add to Playlist popup with improved focus behavior and spacing
Fix Downloads navigation showing a warning triangle instead of the downloads view
Fix remote connect failing with a mkdir permission error on tvOS
Various focus navigation fixes including tab focus syncing, focus recovery after content rebuilds, and preventing the Channel Guide from stealing focus on tab appearance
Client UI
Redesigned DownloadsView with Form layout and corrected show title grouping
Redesigned MediaDetailView with Form layout matching the video playback view for visual consistency
Screencap thumbnail added to episode detail view for a quick visual preview
Consistent toolbar button ordering across movie detail, episode detail, and video playback views so transitions between screens feel natural
Favorites moved into Playlists tab with the root toolbar button removed for a cleaner top-level layout
Settings tab added to the client tab bar with cache clearing functionality
Top-aligned grid items so mixed-height media rows display consistently
Green glow pulse animation provides tactile feedback when tapping grid items
Extended subtitle delay range from ±3 seconds to ±7 seconds for finer subtitle timing control
Version string links to release notes in the About view
Prevent accidental server deletion on iOS and macOS with a confirmation step
Disconnect option added to the server list alongside Edit and Delete
Improved download status popup with better layout and UX
Server
Per-client watch history stats tracked and displayed for each connected device
Admin role enforcement for library-mutating operations, preventing non-admin devices from modifying content
Network interfaces section added to the server StatusView showing active network adapters
Client app identification with app identifier and version included in login requests for better diagnostics
Device sorting within each recency section by most recent first
Channel storage migrated to SQLite from UserDefaults with FK CASCADE for improved reliability
Metadata cache clearing when deleting movies or shows to prevent stale data
Bug Fixes
Fix SIGPIPE crashes on both client and server caused by broken pipe signals, resolved by ignoring the signal at startup and preventing Sentry from overriding the signal handler
Fix channel playback incorrectly showing a resume prompt when replaying a channel
Fix album auto-advance stopping after track transitions in music playback
Fix download audio failure and favorites episode navigation
Fix thumbnail sizing and centering for non-16:9 aspect ratios
Fix index-out-of-range crash in MediaGridView on reconnection
Fix encode pipeline video negotiation failure and parallelize bookmark loading
Fix Swift 6.2 data race errors in GStreamer pull loops
Fix missing back button on views pushed from the discovery wizard (movie detail, Similar Titles)