edde746
7a1f677c75
fix: content strip lint warnings
2026-03-07 22:10:45 +01:00
edde746
de28691481
fix: track selection persistence with stale cache
2026-03-07 22:07:29 +01:00
edde746
686a61ac74
fix: hero section bottom fade only applies to image
2026-03-07 20:52:28 +01:00
edde746
0b1f64ef8a
refactor: simplify mobile player controls
...
close #641
2026-03-07 20:48:17 +01:00
edde746
5b910fd3d7
fix: mpv config TextField dpad/back key navigation
...
Add PopScope to handle Android TV platform-level back, add down arrow
exit on last line, and fix back key trap when save preset is disabled.
2026-03-07 20:32:02 +01:00
edde746
c56e73eefe
feat: add content strip for dpad navigation
2026-03-07 20:17:28 +01:00
edde746
7cfa18e1e9
fix: remove redundant thumbnail popup during dpad timeline seeking
2026-03-07 18:29:52 +01:00
edde746
06034bb8e7
feat: scale queue items for tablet screens
...
close #644
2026-03-07 17:06:13 +01:00
edde746
7b20543fa1
fix: support non-1x playback speed in audio position bypass
...
Scale raw AudioTrack position by playback speed to convert from real
time to media time. Captures reference points on speed changes for
correct mid-playback transitions.
2026-03-07 16:40:48 +01:00
edde746
d207185130
fix: bypass DefaultAudioSink position clamp for large audio frames
...
Fixes video stutter on files with 120ms Opus audio frames (e.g. Amlogic
S905X4). DefaultAudioSink clamps getCurrentPositionUs to writtenDuration
which lags between bursts, creating a sawtooth pattern that drops video
frames. PositionFixAudioSink bypasses the clamp using the raw AudioTrack
position when the delegate falls behind.
2026-03-07 16:27:29 +01:00
edde746
66628e1bca
feat: add pt, ja, ru, pl, da, nb translations
2026-03-06 22:34:45 +01:00
edde746
beff4f9ca0
feat: add watch together playback rejoin flow
...
close #639
2026-03-06 20:42:18 +01:00
edde746
1318c54c0c
feat: improve performance overlay layout and add decoder details
2026-03-06 19:25:41 +01:00
edde746
b05d69b10f
fix: filter hub detail view by library section
...
close #638
2026-03-06 18:36:45 +01:00
edde746
7825490b0f
fix: filter Windows file-lock cache manager errors from Sentry
2026-03-06 18:30:47 +01:00
edde746
c06b0efedc
fix: correct linux package license metadata
2026-03-06 15:07:48 +01:00
edde746
43f4736936
fix: reopen ExoPlayer when tunneling mode changes
2026-03-06 13:49:03 +01:00
edde746
cf8f1849aa
fix: harden watch together teardown sync
2026-03-06 12:52:28 +01:00
edde746
c9a1bc97c4
fix: remove dead state paths and restore track hotkeys
2026-03-06 11:50:45 +01:00
edde746
581f665f58
fix: restore iOS inline player after PiP closes
2026-03-06 11:35:25 +01:00
edde746
7b3a8ad642
fix: guard missing client in season detail screen
2026-03-06 11:09:42 +01:00
edde746
c1e2bc36ea
refactor: share Apple MPV core and media helpers
2026-03-06 10:16:33 +01:00
edde746
72aed76a1c
fix: remove unused _applyFilterWithFallback
2026-03-06 07:55:59 +01:00
edde746
7ae293631a
fix: trust server-computed subtitle selection flags
...
The Plex server already applies all preference levels (account,
show/season, per-item) into stream `selected` flags. Remove redundant
client-side subtitleMode/account prefs logic and show/season metadata
fetching (2 fewer API calls per episode).
2026-03-06 04:25:47 +01:00
edde746
f3d24866b7
fix: trust Plex stream selection for subtitle defaults
2026-03-06 03:43:10 +01:00
edde746
985ba5d2c7
fix: toggle PiP button closes PiP when already active
2026-03-06 03:08:28 +01:00
edde746
f7ca80de77
Merge pull request #637 from micahmo/fix/setting-episode-artwork
...
Fix an issue setting episode artwork
2026-03-06 03:08:20 +01:00
Micah Morrison
a9c7130d55
Fix an issue setting episode artwork
2026-03-05 19:21:30 -05:00
edde746
9730ffd541
fix: coerce subtitleMode string from Plex API to num
2026-03-05 21:53:52 +01:00
edde746
232f018ae7
fix: report JSON deserialization errors
2026-03-05 21:00:52 +01:00
edde746
8571ee74c4
fix: use addedAt for unwatched on-deck sort fallback
...
close #636
2026-03-05 19:57:36 +01:00
edde746
9566e0b897
perf: parallelize show/season metadata fetches
2026-03-05 18:56:52 +01:00
edde746
863f90f65d
fix: respect series-level subtitle mode for episodes
2026-03-05 18:55:44 +01:00
edde746
22a733280a
fix: respect view mode in detail screens, disable scale in list mode
...
close #631
2026-03-05 17:38:38 +01:00
edde746
a4008d3d6b
fix: move mpv operations off UI thread
2026-03-05 16:55:44 +01:00
edde746
819d7b0f8f
fix: scope library display settings per user profile
...
close #630
2026-03-05 16:42:13 +01:00
edde746
c785ce1f88
fix: queue sheet image loading priority with itemExtent
2026-03-05 16:11:14 +01:00
edde746
0c3588210a
fix: pause hero auto-scroll on desktop background transition
2026-03-05 15:36:35 +01:00
edde746
db57fa73ce
feat: add option to hide bottom navigation bar labels
2026-03-05 15:05:48 +01:00
edde746
0269825179
fix: windows single instance mutex
2026-03-05 14:59:40 +01:00
edde746
588b413223
fix: browse tab scrolling after alpha jump libraries
2026-03-05 14:41:21 +01:00
edde746
a2cd3397c9
fix: desktop context menu position and bottom sheet sizing
2026-03-05 14:25:23 +01:00
edde746
268f293704
refactor: deduplicate Dolby Vision conversion code
...
- Extract shared processNal() for NAL classification/conversion logic
- Share DoviExtractorOutputWrapper between MKV and MP4 paths
- Deduplicate DV profile codec queries via deviceSupportsDvProfile()
- Collapse repeated doviTrackOutput access chain in stats
2026-03-05 12:02:33 +01:00
edde746
317d5dbdd9
feat: DV Profile 7→8.1 RPU conversion via libdovi
...
Convert Dolby Vision Profile 7 RPU NALUs to Profile 8.1 using libdovi
native bridge, preserving dynamic tone mapping on devices with DV8
decoders. Falls back to HEVC stripping when no DV8 decoder is present.
- Add JNI bridge (dovi_bridge.cpp) wrapping libdovi's RPU converter
- Download prebuilt libdovi from edde746/libdovi-builds releases
- DoviConvertingTrackOutput: DV81 mode converts RPUs, HEVC_STRIP strips
- Retry logic: if native DV7 decoding fails, auto-retry with conversion
- Performance overlay shows active DV conversion mode
2026-03-05 11:11:57 +01:00
edde746
7f2d548d32
fix: item 0 steals focus after sidenav return
2026-03-04 18:39:49 +01:00
edde746
5877673755
fix: reduce UI padding between media items
...
close #629
2026-03-04 18:36:12 +01:00
edde746
3b351d7634
fix: iOS OOM during PiP playback cycles
...
Cancel leaked stream subscriptions in video player dispose and flush
sample buffer layer on PiP teardown/cleanup to release video frames.
2026-03-04 17:34:30 +01:00
edde746
e6ee83d9c2
fix: preserve home screen scroll position on back navigation
2026-03-04 16:34:36 +01:00
edde746
8b57e810ab
feat: detail screen context menu button
2026-03-04 15:11:46 +01:00
edde746
4121d568c8
fix: sanitize mpv event channel strings for valid UTF-8
2026-03-04 14:59:11 +01:00