BoatingCloud
8cae735e3c
docs: record tmdb detail completeness
2026-08-30 14:05:35 +08:00
BoatingCloud
82325ddfa9
docs: record search pagination
2026-08-30 13:57:28 +08:00
BoatingCloud
9c8e679c94
docs: record tmdb edge fixes
2026-08-30 13:53:10 +08:00
BoatingCloud
fe1935c3b3
docs: record tmdb data integration
2026-08-30 13:40:56 +08:00
BoatingCloud
8f58fad5cd
docs: record scene continuity redesign
2026-08-30 08:51:00 +08:00
BoatingCloud
3bcdcfd2a8
docs: clarify navigation ambient tint
2026-08-30 08:35:40 +08:00
BoatingCloud
e2f4fbd831
docs: record navigation contrast adjustment
2026-08-30 08:32:37 +08:00
BoatingCloud
29cd001796
docs: record immersive home redesign
2026-08-30 08:05:41 +08:00
BoatingCloud
e34a718c48
docs: record fixed home actions
2026-08-30 07:53:36 +08:00
BoatingCloud
f1f0484eb4
docs: record vui1 completion
2026-08-30 07:31:18 +08:00
BoatingCloud
32422c4e06
docs: record phase8 ui foundation status
2026-08-29 21:31:02 +08:00
BoatingCloud
7f3d2e0747
docs: record phase7 sdk integration status
2026-08-29 19:55:47 +08:00
BoatingCloud
14149854b8
feat: package core sdk and integrate velix player app
2026-08-29 19:52:38 +08:00
BoatingCloud
e594f66c35
perf: complete phase6 playback benchmark baseline
2026-08-29 18:56:22 +08:00
BoatingCloud
c6f267d6dd
feat: complete phase5 playback network contract
2026-08-29 16:49:38 +08:00
BoatingCloud
49b078737b
docs: record phase5 remote push
2026-08-29 15:42:58 +08:00
BoatingCloud
f9d1481fb8
feat: unify phase5 playback lab with stable core api
2026-08-29 15:42:26 +08:00
BoatingCloud
0db086a1e9
docs: refresh phase5 artifact record
2026-08-29 14:57:48 +08:00
BoatingCloud
d7cf273432
fix: close phase5 playback contract gaps
2026-08-29 14:55:57 +08:00
BoatingCloud
8a30e06621
feat: add phase5 playback and network capability
2026-08-29 14:34:50 +08:00
BoatingCloud
e4bc586d77
docs: pin final FFmpeg-Harmony branch
2026-08-29 13:43:44 +08:00
BoatingCloud
5a50baf26a
docs: pin final FFmpeg-Harmony tip
2026-08-29 13:41:36 +08:00
BoatingCloud
d84fd47f9b
docs: pin current FFmpeg-Harmony tip
2026-08-29 13:40:31 +08:00
BoatingCloud
09de481b03
build: isolate FFmpeg-Harmony MPV output prefix
2026-08-29 13:38:17 +08:00
BoatingCloud
329728ce56
docs: record Phase 4.5 fork status
2026-08-29 13:35:35 +08:00
BoatingCloud
46582ed8bd
build: add FFmpeg-Harmony prefix switch
2026-08-29 13:32:57 +08:00
BoatingCloud
e5f6c0ced2
docs: normalize Phase 4 status
2026-08-29 12:43:49 +08:00
BoatingCloud
e1bc8cc52f
docs: add Phase 4 OHCodec status
2026-08-29 12:43:14 +08:00
BoatingCloud
c239b1c186
docs: record Phase 4 OHCodec validation
2026-08-29 12:41:34 +08:00
BoatingCloud
1f1a6e5962
docs: record OHCodec interop boundaries
2026-08-29 12:36:33 +08:00
BoatingCloud
37df87fc56
feat: surface OHCodec diagnostics in Playback Lab
2026-08-29 12:36:20 +08:00
BoatingCloud
3f6132637b
feat: add Harmony OHCodec hwdec adapter
2026-08-29 12:36:14 +08:00
BoatingCloud
9fdf08073e
docs(harmony-audio): record implementation and validation
2026-08-29 10:07:29 +08:00
BoatingCloud
dfda10b6d8
harmony: playback-lab: expose audio diagnostics
2026-08-29 10:07:25 +08:00
BoatingCloud
9941ad1da9
harmony: meson: enable OHAudio backend on OHOS
2026-08-29 10:07:19 +08:00
BoatingCloud
7021f883cb
harmony: audio: add OHAudio output backend
2026-08-29 10:07:13 +08:00
BoatingCloud
c650a4214d
docs(playback-lab): record emulator verification
2026-08-29 09:06:04 +08:00
BoatingCloud
d4c84601fa
feat(playback-lab): add EGL and libmpv playback bridge
2026-08-29 09:05:47 +08:00
BoatingCloud
2356e2f67b
feat(playback-lab): add isolated HarmonyOS app shell
2026-08-29 09:05:42 +08:00
BoatingCloud
75ed9dd2f4
build: complete HarmonyOS arm64 libmpv phase 1
2026-08-28 19:08:53 +08:00
BoatingCloud
f178d38ce6
docs: record Velix remote repository
2026-08-28 18:36:36 +08:00
BoatingCloud
2c469d4299
docs: complete HarmonyOS phase 0 research
2026-08-28 15:47:20 +08:00
Kacper Michajłow
182fa6ca49
player/discnav: allow window dragging on menu
lint / commit-msg (push) Has been cancelled
lint / swift (push) Has been cancelled
lint / lua (push) Has been cancelled
lint / ruff (push) Has been cancelled
lint / mypy (push) Has been cancelled
lint / editorconfig (push) Has been cancelled
lint / pre-commit (push) Has been cancelled
build / mingw (i686, wine32) (push) Has been cancelled
build / mingw (x86_64, wine64) (push) Has been cancelled
build / win32 (arm64, windows-11-arm, aarch64-pc-windows-msvc) (push) Has been cancelled
build / win32 (x64, windows-2025-vs2026, x86_64-pc-windows-msvc) (push) Has been cancelled
build / macos (arm, macos-14, Xcode_15.0) (push) Has been cancelled
build / macos (arm, macos-15) (push) Has been cancelled
build / macos (arm, macos-26) (push) Has been cancelled
build / macos (macos-15-intel) (push) Has been cancelled
build / macos (test, macos-26, -target arm64-apple-macosx10.15, 10.15) (push) Has been cancelled
build / linux (map[args:-Db_lto=true -Db_lto_mode=thin cc:clang cxx:clang++ ld:lld]) (push) Has been cancelled
build / linux (map[args:-Db_ndebug=true cc:gcc cxx:g++]) (push) Has been cancelled
build / linux-fuzz (push) Has been cancelled
build / linux-ffmpeg-6-1 (push) Has been cancelled
build / openbsd (push) Has been cancelled
build / freebsd (push) Has been cancelled
build / msys2 (pattern, windows-2025-vs2026, clang64) (push) Has been cancelled
build / msys2 (true, windows-2025-vs2026, clang64) (push) Has been cancelled
build / msys2 (uninitialized, windows-2025-vs2026, clang64) (push) Has been cancelled
build / msys2 (windows-11-arm, clangarm64) (push) Has been cancelled
build / msys2 (windows-2025-vs2026, mingw64) (push) Has been cancelled
build / msys2 (windows-2025-vs2026, ucrt64) (push) Has been cancelled
build / msys2 (zero, windows-2025-vs2026, clang64) (push) Has been cancelled
build / Publish git release (push) Has been cancelled
2026-08-26 18:04:17 +02:00
Kacper Michajłow
c318236b88
player: drop the enhancement-layer pairing when the media has no EL
2026-08-26 01:47:41 +02:00
Kacper Michajłow
e1cf77c0e9
stream_dvdnav: clamp number of buttons to array size
...
libdvdread doesn't sanitize this value, so we do for corrupted discs.
2026-08-26 01:47:41 +02:00
Kacper Michajłow
93451ef64f
demux_disc: mark streams the current program does not carry
...
The outer streams live for as long as the disc does, but each program
brings its own set. Playing a BD playlist without the Dolby Vision
enhancement layer left the outer EL stream selected with no slave
stream mapped to it.
Normally when there is no EL there is no track either, but since it was
exposed in PMT we still have the track, while VM may decide to unmap it.
This is bit of workaround, but harmless one.
2026-08-26 01:47:41 +02:00
Kacper Michajłow
795cd15438
demux: let a demuxer mark a stream as absent
...
Media can stop providing a stream mid-playback, for example a disc
program that does not carry the Dolby Vision enhancement layer the
previous one had. Since mpv always try to keep at least 1 packet
buffered in all tracks, it can keep reading it till EOF.
2026-08-26 01:47:41 +02:00
Kacper Michajłow
96b9d84b60
f_output_chain: restore the chain ends manual connections on relink
...
mp_pin_connect() clears manual_connection on the pins it links, so a
filter that stops being the first or the last one leaves the chain
unable to drive its own ends. Nothing has changed the ends at runtime
so far, so this went unnoticed.
2026-08-26 01:47:41 +02:00
Kacper Michajłow
79186bd167
discnav: poll the disc VM while playback idles
...
The BD-J VM progresses only on reads. With playback at EOF or on a
held still nothing reads anymore, applet playlist switches never
surface and menus freeze, libbluray documents this polling requirement
for idle states. Drive one nav read per tick and keep the core awake.
The slave demuxer latches its EOF and stops touching the stream, so
the read path peeks the stream itself to run its event loop. Poll the
same way while paused in a menu, highlight redraws would otherwise
wait for the next core wakeup. dvdnav stills release on user input,
not reads, and the pump bypasses the cache limits, so no pumping
outside these states.
2026-08-26 01:47:41 +02:00
Kacper Michajłow
6f6bedec72
demux_disc: reset the slave demuxer in place on BD time seeks
...
A seek repositions the disc under the live slave demuxer, and mpegts
spliced its buffered PES state together with data of the new position
into broken packets, an AU worth of decode errors per seek. mpegts
already flushes all per-PID packet state when it sees the avio
position jump, so restart the byte position counters on the seek and
resync the avio position to the stream in drop_buffers.
2026-08-26 01:47:41 +02:00