Commit Graph
97 Commits
Author SHA1 Message Date
edde746 33d5760930 fix: uncommend play store release 2026-03-03 19:00:32 +01:00
edde746 229d6b24e1 feat: crash log reporting 2026-03-02 07:29:21 +01:00
edde746 9dc0654225 fix(android): prevent dispatchWindowVisibilityChanged NPE during disposal 2026-03-02 06:10:00 +01:00
edde746 36277076bd fix(android): cap demuxer buffers + sync mpv dispose 2026-03-02 02:30:48 +01:00
edde746 6bee1a6c38 fix(android): add opensles audio fallback 2026-03-02 02:05:24 +01:00
edde746 138c8f9fd8 feat: auto picture-in-picture
close #527
2026-03-01 10:52:31 +01:00
edde746 3a5cab956d refactor: extract shared Android utilities from player cores 2026-03-01 10:40:59 +01:00
edde746 a62a01b9c3 feat: bridge ExoPlayer logs to Dart + device info in logs screen
ExoPlayerCore emitLog() forwards native diagnostics (init, tracks,
tunneling, watchdog, errors, framerate, audio focus) to Dart via the
existing log-message event when debug logging is enabled. URIs are
redacted before forwarding. setLogLevel method channel wires into the
existing debug toggle in video_player_screen.

Logs screen now shows a device info header (app version, OS, model,
TV mode) and includes it in copy/upload output.
2026-03-01 04:59:35 +01:00
edde746 ea9e1a3dc6 fix: bypass IME stage for dpad events 2026-03-01 04:59:35 +01:00
edde746 54ceee18a6 fix: remove alpha 0.999 hack from mpv SurfaceView
No longer needed since Flutter uses RenderMode.texture (TextureView),
which composites above SurfaceView naturally without overlay conflicts.
2026-03-01 04:02:56 +01:00
edde746 d0f2122944 feat: add tunneled playback setting + frame watchdog for HDR black screen
Adds a user-facing toggle for MediaCodec tunneling (Android/ExoPlayer)
and a rendered-frame watchdog that auto-falls back to MPV when ExoPlayer
produces 0 video frames after 8 seconds of audio playback.
2026-03-01 04:02:36 +01:00
edde746 1d739c74ec fix: use universal APK for Amazon Appstore
Amazon Appstore doesn't auto-target by ABI like Google Play,
so split APKs could serve the wrong architecture to devices.
2026-03-01 03:47:46 +01:00
edde746 bbfe7cf783 fix: use explicit mediacodec hwdec chain on android 2026-03-01 02:46:50 +01:00
edde746 2405cd179b fix: use forked libass-android with font buffering fix 2026-02-28 19:00:55 +01:00
edde746 fa9c5afeb8 fix: force FFmpeg for FLAC audio decoding 2026-02-28 15:24:31 +01:00
edde746 9f81671603 fix: suppress repeated android log spam from MPV surface and stats polling
- Deduplicate android-surface-size updates with lastSurfaceSize cache
- Short-circuit ensureFlutterOverlayOnTop after initial application
- Remove deprecated cache-used property query
- Skip unavailable MPV properties on Android (display-fps, HDR metadata)
- Gate video-dependent stats queries behind hasVideo check
2026-02-28 15:00:29 +01:00
edde746 15e1f0b9e2 fix: use mediacodec on android
close #593
2026-02-28 12:35:43 +01:00
edde746 014f9456f6 fix: defer view removal to avoid AOSP dispatchWindowVisibilityChanged NPE 2026-02-28 10:23:28 +01:00
edde746 1bb4adfcf1 fix: don't pause playback on duckable audio focus loss
close #592
2026-02-28 09:22:13 +01:00
edde746 078f6b29d5 fix: recalculate video surface size on orientation change
close #587
2026-02-28 06:16:52 +01:00
edde746 4cebff4367 move debug output 2026-02-27 21:19:52 +01:00
edde746 3103cb5ee1 fix: harden offline playback and exoplayer fallback 2026-02-27 21:02:30 +01:00
edde746 602982d426 fix: remove low memory warnings during playback
Closes #576
2026-02-27 08:53:38 +01:00
edde746 4588457319 refactor: consolidate files 2026-02-26 13:41:51 +01:00
edde746 5cf5b2f0a0 fix: mpv destroy/create ANR 2026-02-26 12:56:02 +01:00
edde746 8eda892b68 feat: themed splash screen with status messages 2026-02-26 11:55:45 +01:00
edde746 e25fb4c10f fix: ExoPlayer resume position lost on tunneling change 2026-02-26 04:19:17 +01:00
edde746 3418241c04 fix: disable tunneling for FFmpeg-only audio codecs 2026-02-26 02:14:22 +01:00
edde746 0f4920cc18 fix: reduce ExoPlayer buffer limits
close #546
2026-02-25 23:43:43 +01:00
edde746 fc5fcbb0db fix: google tv virtual remote dpad 2026-02-25 16:13:53 +01:00
edde746 2276750704 fix: memory-aware buffer limits 2026-02-24 00:56:09 +01:00
edde746 26ff55e005 fix(android): auto buffer size to prevent OOM 2026-02-23 05:42:04 +01:00
edde746 6916b386eb fix(android): SurfaceControl crash on player dispose 2026-02-23 05:28:10 +01:00
edde746 389a4dcc25 fix: android debug info path 2026-02-22 05:42:30 +01:00
edde746 c4a51e0fb9 fix: persist debug symbols for symbolication 2026-02-21 05:45:16 +01:00
edde746 6647cf25b0 fix: amazon appstore uploads 2026-02-20 09:58:03 +01:00
edde746 637a3e9e37 chore: bump media3 1.5.1 → 1.9.2, drop unused media3-session 2026-02-20 03:32:38 +01:00
edde746 60ef83bd3a fix: add missing setLogLevel handler to Android MPV plugin 2026-02-19 11:33:12 +01:00
edde746 7c651eb61f fix: cap ExoPlayer buffer size 2026-02-18 21:17:50 +01:00
edde746 3bba440e18 fix: enable largeHeap for ExoPlayer OOM 2026-02-18 19:13:40 +01:00
edde746 aae1b1c45c refactor: clean up release script and fastlane configs 2026-02-18 09:15:20 +01:00
edde746 a61fca0588 perf: compact [propId, value] wire format for property events 2026-02-16 15:40:52 +01:00
edde746 b62a3501d2 fix: SurfaceView ANR on Android 2026-02-15 18:10:46 +01:00
edde746 9184bb8d40 Merge branch 'live-tv'
# Conflicts:
#	lib/i18n/strings.g.dart
#	lib/i18n/strings_de.g.dart
#	lib/i18n/strings_en.g.dart
#	lib/i18n/strings_es.g.dart
#	lib/i18n/strings_fr.g.dart
#	lib/i18n/strings_it.g.dart
#	lib/i18n/strings_ko.g.dart
#	lib/i18n/strings_nl.g.dart
#	lib/i18n/strings_sv.g.dart
#	lib/i18n/strings_zh.g.dart
#	lib/screens/main_screen.dart
#	lib/services/plex_client.dart
#	lib/widgets/video_controls/desktop_video_controls.dart
2026-02-14 22:29:16 +01:00
edde746 0d72c6c1a4 fix: external player on Android 11+ 2026-02-14 20:19:27 +01:00
edde746 86a989a2f2 fix: open downloaded videos in external player on Android 2026-02-14 18:26:05 +01:00
edde746 d986f0d2ea feat: migrate downloads to background_downloader
close #454
2026-02-14 18:02:49 +01:00
edde746 b3ff48feca fix(tv): live playback and timeline keepalive
Disable MKV Cues seeking for live streams, fix timeline params.
2026-02-14 03:33:58 +01:00
edde746 0791764de9 feat: lower minSdk to 25 2026-02-13 14:00:24 +01:00
edde746 e80d1f7132 Merge branch 'companion-remote'
# Conflicts:
#	lib/i18n/strings.g.dart
2026-02-10 12:47:41 +01:00