# media_kit_libs_windows_video (vendored fork) Fork of `media_kit_libs_windows_video 1.0.11` from pub.dev. Windows-only, wired into the main app via `dependency_overrides` in the project `pubspec.yaml`. Not published to pub. ## Why fork Upstream 1.0.11 downloads the media-kit organisation's 2023-09-24 `mpv-dev` archive at build time. Its bundled FFmpeg is compiled with `--disable-decoders` plus an explicit allow-list that omits two decoders we need: - `truehd` — Dolby TrueHD audio (mpv reports `Failed to initialize a decoder for codec 'truehd'`) - `hdmv_pgs_subtitle` (`pgssub`) — Blu-ray PGS bitmap subtitles (track can be selected via `sid`, but nothing renders on screen) Both symptoms are documented in the upstream tracker ([media-kit/media-kit#1269](https://github.com/media-kit/media-kit/issues/1269), [#1371](https://github.com/media-kit/media-kit/issues/1371)) and both are fixed by swapping in a full libmpv build. ## What changed vs. upstream 1.0.11 Only three variables in `windows/CMakeLists.txt` — the archive name, download URL, and MD5. The download / extract / bundle logic is untouched, and the archive layout (`libmpv-2.dll` + `include/mpv/*.h`) matches upstream. | | Upstream 1.0.11 | This fork | |---|-----------------|-----------| | Source | `media-kit/libmpv-win32-video-build` | `zhongfly/mpv-winbuild` | | Tag / date | `2023-09-24` | `2026-07-11-e5486b96d7` | | Archive | `mpv-dev-x86_64-20230924-git-652a1dd.7z` | `mpv-dev-x86_64-20260711-git-e5486b96d7.7z` | | Build flavour | Stripped (allow-listed decoders only) | Full (all upstream FFmpeg decoders) | | CPU baseline | Generic x86_64 | Generic x86_64 (not `-v3`, so no AVX2 requirement) | The plugin registrar (`MediaKitLibsWindowsVideoPluginCApi`), ANGLE bundle, and package name / class name / API are identical to upstream so no other change to `media_kit` / `media_kit_video` is required. ## Follow-ups (not blocking) - `zhongfly/mpv-winbuild` is a nightly repository. Historical releases can be pruned. To keep CI reproducible long-term, mirror the pinned archive to a project-owned GitHub Release (same pattern as `mdk-sdk v0.37.0`) and repoint `LIBMPV_URL`. - Android has the same missing decoders in `media_kit_libs_android_video`. Android currently falls back to media3/fvp so this is not urgent; if we ever need mpv on Android too, mirror this vendor pattern there. ## License Original MIT license retained in [`LICENSE`](./LICENSE). Upstream copyright: Hitesh Kumar Saini and contributors.