Moonfin 2.3.2 Release Notes 
Moonfin 2.3.2 is a playback release at heart. iPhone, iPad, Mac, and Apple TV all move to AetherEngine, a native playback engine built for Apple hardware, and around that is a huge round of fixes across casting, subtitles, Seerr, home rows, and Linux.
Important
The Apple TV app now requires tvOS 17 or newer.
Note
Don't forget to update to Plugin v2.0.2 here
Features
AetherEngine on Apple Platforms
- iOS, macOS, and tvOS playback now run on AetherEngine instead of mpv. It converts Dolby Vision Profile 7 dual layer streams to Profile 8.1 in real time, so those files keep Dolby Vision instead of losing the enhancement layer and now Dolby Atmos is supported as well.
- TrueHD now direct plays on iOS instead of always forcing a server transcode.
- The player info panel now shows the actual bitrate the server is delivering on a transcode, not just the source or your cap.
Apple TV Navigation
- The Siri Remote navigation was reworked to feel like the native tvOS focus engine. Slow drags step focus one item at a time, quick flicks glide with deceleration, and touching the pad again brakes the glide. Off center clicks now register as select too.
Live TV Closed Captions
- Embedded CEA-608 and 708 captions now show during Live TV on every platform. They appear in the subtitle menu even when the stream only announces them after you join, which is common on live broadcasts.
Button Customization
- You can now choose exactly which buttons and in what order the player OSD shows and which actions appear on the details screen, with separate layouts for TV, mobile, and desktop that sync to your account.
Seerr
- HD and 4K requests are now independent, so you can request either or both versions of a title, and the app knows whether your server actually has a 4K backend. Cancel options and permissions now mirror the server, request managers can cancel any active request and everyone else can cancel their own pending ones.
- Seerr home rows now lazy load as you scroll instead of stopping at the first page.
Playlists
- Every playlist type now shows up, including music, audiobook, book, photo, and mixed playlists that used to be invisible unless a video happened to be in them. The playlist page gained a Group by Type option with per type filters in the display cog, and chapter markers now work when playing from a playlist.
Home Screen and Ratings
- Added a Max Days in Next Up setting so shows you abandoned months ago stop haunting the row. The series page still shows the next episode no matter how old it is.
- Episode ratings now come from TMDB, since MDBList has no episode data, and episodes use the same ratings row as everything else. Roger Ebert was added as a rating source, episode ratings are now on by default, and the ratings settings gained a proper reset button.
- Added a button to reset a customization profile back to defaults, on your device and on the server.
Settings Search
- The settings panel now has a search field that finds both screens and individual settings, shows you where each result lives, and jumps straight to it.
Bug Fixes
Playback
- Pressing Continue on the Are You Still Watching prompt no longer exits playback.
- The series Resume button now resumes the episode you were actually watching instead of launching episode one.
- Casting got a real overhaul. The app now describes the receiver to the server properly, so casting an HEVC MKV to a Chromecast transcodes instead of black screening, AirPlay starts at your resume position, casting from a series page casts the next episode instead of erroring, and local playback pauses when a cast session starts.
- Fixed a request stampede after settings sync that piled up into 30 second timeouts across the app.
- Manually set audio passthrough toggles keep working when the hardware probe comes up empty, instead of silently reverting until a restart.
- Added a solid black backdrop behind the video player, so UI no longer bleeds through the letterbox bars on non 16:9 content.
- Failed playback starts no longer wipe your saved resume point.
- The SyncPlay button no longer leaves a gap in the player controls when you aren't in a group.
Subtitles
- Embedded ASS fonts now actually reach the libass renderer on Apple platforms, so anime subtitles render with their intended typefaces, and all bundled fallback fonts stay available so nothing renders as tofu.
- Bitmap subtitles like PGS are now positioned on the video itself instead of floating in the black bars.
- Web subtitles were fixed, they frequently never displayed in the browser at all.
Apple
- Fixed Apple TV HD boxes failing to play HEVC content they can't decode, those files now transcode and actually play.
- Restored HEVC transcodes, which used to render a black screen with working audio.
- Fixed the tvOS system keyboard needing two presses to open, and the playlist name field trapping remote focus.
- Opening the AirPlay picker or Control Center on iOS no longer kicks the player into Picture in Picture.
- Fixed the startup subtitle selection being ignored until you reselected the track.
- Push notifications now arrive while the app is closed, and land in their own Requests channel.
Android
- Fixed battery drain from background wake locks and timers. Pausing music now releases the wake lock, and the server connection winds down a minute after backgrounding unless playback, SyncPlay, or casting needs it.
- Live fMP4 streams, like those from Dispatcharr, now play instead of spinning forever.
- The saved zoom mode is applied when playback starts instead of waiting for a manual toggle.
- The video surface reattaches after the screen turns off, so no more black video with working audio on phones.
- Push notifications now arrive while the app is closed, and land in their own Requests channel.
Home and Library
- Home rows no longer show libraries you don't have access to, and they respect your configured library order instead of going alphabetical.
- Custom home rows like Letterboxd and IMDb lists survive a profile sync, and row toggles no longer re-enable themselves after every sync or restart.
- The Radarr and Sonarr calendar cache stopped endlessly invalidating itself, and external rows now get backdrop wallpapers on hover and focus.
- The Playlists library actually appears in My Media when you enable it.
- Random sort no longer repeats the same items while you scroll.
- The On Now row shows programs that are actually airing right now.
- Media bar slides without a logo now show the item title instead of nothing.
- Episode ratings from NFO files are no longer hidden or mislabeled as TMDB.
- Settings sync stopped echoing in a loop between devices, and it no longer wipes your locally entered TMDB and MDBList API keys.
Seerr
- Discover no longer hides non English titles, which was making anime vanish, and request season numbers now follow the server's season list so split anime runs request correctly.
- Search works on titles with apostrophes.
Interface
- The navbar avatar on phones now only shows on Home, so you stop hitting Switch User when reaching for back.
- The settings panel spans the full screen width on phones.
- The Delete Files button is hidden when there's no download, fixing the misaligned button row on mobile.
Downloads
- Download complete notifications only fire after the file is validated, a season download notifies once instead of per episode, and downloads behind reverse proxies that strip redirects retry against the direct file endpoint.
Linux
- AppImage in place updates work now, launchers show the correct version, and the app no longer crashes at startup on systems without gamepad input devices.
- Playback no longer restarts from the beginning when you move, resize, or fullscreen the window, and the taskbar icon shows up on Wayland.
Contributors
Huge thanks to everyone who contributed this release:
Translations were updated through Weblate by wabisabi926 (Simplified Chinese, now at 100%), idezentas (Turkish, now at 100%), Apope1999 (Greek), Mikael Wessel (Norwegian Bokmål), and Mariusz (Polish). If you want to help translate Moonfin into your language, check out our Weblate project.