2.3.0 — Playback, Streaming Quality & Media Experience
🎬 Playback Reliability & Native Tools
- Reliable Media Handoffs: Reworked ownership across the player, mini-player, and background service so stale activities, callbacks, resolvers, and queues cannot take over a newer request. Audio-to-video, video-to-audio, playlist, URI, torrent, and yt-dlp transitions now avoid freezes, audio-only video, lost metadata, and mismatched queues.
- Safer Session Recovery: Playback position restores correctly after session recreation, HTTP demux cache survives player transitions, videos pause when the app moves to the background, and mini-player replacement no longer races the active session.
- FDSAN-Safe mpv Builds: Fixed the Android libmpv subprocess file-descriptor sanitizer crash in both standard and Fongmi builds, refreshed the bundled mpv libraries, and hardened native stop/replacement sequencing.
- Native Video Clipping: Added an on-player clipping workflow and hardened the editor and export path for reliable repeated use.
- Player Lifecycle Fixes: Prevented duplicate audio autoplay advances, playlist-sheet crashes, released-session service shutdowns, stale background-playback handoffs, and cross-contamination between audio brightness and playlist selection.
- Restored Ambient Glow: Brought back the proven v1.4.1 ambient glow shader and removed conflicting legacy ambient behavior.
🌐 Streaming Quality, yt-dlp & Subtitles
- Per-Video Quality Selection: Added a quality control for network streams and per-item yt-dlp format selection, with the chosen format carried through playback instead of applying one global guess.
- Clearer Web Playback Status: Improved yt-dlp web playback, resolver status feedback, and quality-button visibility across the player layouts.
- Episode-Aware Subtitle Search: SubHub searches now retain the current season and episode context when media moves through the playback pipeline.
- Dedicated Subtitle Preferences: Added a focused subtitle section to Settings so subtitle controls are easier to find and manage.
🍿 Jellyfin & Seerr
- Built-In Seerr Requests: Integrated Seerr with Jellyfin so movies and series can be discovered and requested inside mpvRx, with refined discovery cards and live request-status updates.
- Jellyfin Music in the mpvRx Player: Jellyfin audio now uses the full music-player experience, with a redesigned Music section, complete album queues, swipeable tabs, home playlists, favorites, and synchronized favorite state.
- Faster Jellyfin Actions: Added direct quick play, YouTube trailers, improved resume actions, and a browser FAB that closes predictably, follows scrolling, and blocks accidental tab gestures while open.
- Richer Library Browsing: Moved libraries ahead of Continue Watching, redesigned list and episode layouts, improved season selection, and fixed tablet mini-player overlap.
- Jellyfin Stability: Fixed authentication persistence, music queue resolution, cover-art loading, local artwork handling, bitmap crashes, and incorrect album playback.
🎵 Music, Lyrics & Recents
- Refined, Translated and Romanized Lyrics: Improved the lyrics interface and controls, added lyric translation and romanization, and made Hindi and Indic transliteration, full-sentence parsing, and per-line results faster and more accurate.
- Playlist Favorites & Feedback: Added favorite controls in the music player, protected the default playlist, introduced square playlist artwork, and added an animated visualizer indicator for the currently playing track.
- Reliable Local Music Discovery: Folder artwork and local artwork URIs now decode correctly, and the music library automatically scans after the first permission grant and when the app resumes.
- Separate Video and Audio History: Recently Played now has swipeable Video and Audio tabs with independent filtering, counts, empty states, scrolling, and artwork sizing.
🧭 Browsing & Interface
- Fuzzy Media Search: Added typo-tolerant folder and video search for faster navigation through large libraries.
- More Predictable Browser Controls: Improved FAB expansion, outside-tap dismissal, scroll integration, quick-play access, and recent-item padding across browser screens.
- Smoother Navigation: Removed the bottom-navbar delay during page swipes, added swipe navigation to Jellyfin music tabs, and merged Network tabs into the header for a cleaner layout.
- Player Control Polish: Refined gesture handling, added speed-scaled remaining time, improved timer contrast, tightened control spacing, and made quality-control placement more consistent.
📦 Updates & Release Delivery
- Preview Update Channel: Added preview-build discovery to the in-app updater and a live release channel to the preview download site.
- Activity-Aware Preview Builds: Preview automation now checks for unpublished app changes before building, while still supporting complete manual builds.
- Clearer Download Links: Updated preview-site download link colors for better visibility.
SHA-256 checksums
5b583f7f11b93d216a6a81319433617bb87022745687089534715a1da277773f release-assets/mpvRx-universal-v2.3.0.apk
7a1cbdfbf36e18d6c9279a7b88fe303c84a4532313cc352120aca7bcab8c972f release-assets/mpvRx-arm64-v8a-v2.3.0.apk
e96a72d005845dc19ba949fa3897277868cb78d3d15dffe4a6d9aeb714187b26 release-assets/mpvRx-armeabi-v7a-v2.3.0.apk
30ef37953fa6af7f6256ab6aa77fa3b6adff2646502983c712a5472199ffda14 release-assets/mpvRx-x86-v2.3.0.apk
0a4e6f4105be37b4cef1ab43a1f65cd0748bb8dd8b50fd5578b014e09653e04f release-assets/mpvRx-x86_64-v2.3.0.apk
f0cd1924ec5bfa9d1919f94015d0a56aac7a8e4a308c10f1ffd0b611c53e2f9f release-assets/mpvRx-fongmi-v2.3.0.apk
7458de1d1d9ce078eba3e0371d3f3341c1ab053e33057fdb10183510023f53b6 release-assets/mpvRx-no-vulkan-v2.3.0.apk
What's Changed
- Jellyfin improvements by @Arnab11 in #457
- Redesigned the jellyfin music section by @Arnab11 in #458
- fix: improve FAB menu behavior and scroll integration by @znarfm in #462
- fix(player): prevent crash when opening playlist sheet during audio playback by @Arnab11 in #463
- fix(player): prevent duplicate track advance during audio autoplay by @Arnab11 in #465
- style(jellyfin): refine card corner radius and redesign list and episode layouts by @Arnab11 in #466
- feat(player): add favorite button in music player by @Arnab11 in #467
- fix(jellyfin): fix auth session persistence, music cover art, and bitmap crash by @Arnab11 in #468
- Added lyrics translations/romanization by @Arnab11 in #469
- quick navbar animation, swipe to move between tabs in jellyfin music by @Arnab11 in #470
- feat(seekbar): speed scaled remaining time by @okhex in #471
- feat: add swipeable Video/Audio tabs to Recently Played screen by @Utsavrajputt in #473
- feat: add native on-player video clipping by @Riteshp2001 in #472
- integrated seer with jellyfin for movie/series request by @Arnab11 in #489
New Contributors
Full Changelog: v2.2.2...v2.3.0