Skip to content

feat(player): add native libmpv playback - #126

Open
Lowband21 wants to merge 56 commits into
devfrom
feat/mpv-integration
Open

feat(player): add native libmpv playback#126
Lowband21 wants to merge 56 commits into
devfrom
feat/mpv-integration

Conversation

@Lowband21

Copy link
Copy Markdown
Owner

Summary

  • add a backend-neutral playback contract and in-process LGPL libmpv control plane
  • preserve authenticated playback, redaction, progress, and watch-state behavior across backends
  • add native presentation policies for Wayland, X11, Windows, and macOS
  • make integrated mpv the default and only playback engine on macOS, with mpv native-window fallback
  • add native playback fixtures, boundary checks, CI coverage, and concise operator/developer guidance
  • carry a temporary macOS Winit foreign-view patch under an upstream-or-delete exit contract

Validation

  • workspace all-features check
  • 161 playback tests passed; 4 environment-dependent tests ignored
  • 287 UI tests passed
  • 28 macOS bundle/profile policy tests passed
  • 13 native playback fixture tests passed
  • documentation check and production build passed
  • focused presenter tests passed on Apple Silicon
  • manual Apple Silicon trial confirmed one visible mpv-owned window with working in-root Ferrex controls

Known follow-ups

  • improve window-size and fullscreen-state consistency
  • reveal the OSD without waiting for a pointer click
  • qualify HDR/EDR, the observed VideoToolbox path, and extended lifecycle stress
  • upstream or replace the temporary Winit patch

Intel macOS is outside the supported validation matrix. macOS release packaging is intentionally deferred; cargo-dist remains Linux-only.

Lowband21 added 24 commits July 26, 2026 14:44
@Lowband21 Lowband21 self-assigned this Jul 26, 2026
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jul 26, 2026

Copy link
Copy Markdown

Deploying ferrex with  Cloudflare Pages  Cloudflare Pages

Latest commit: 0d245d5
Status: ✅  Deploy successful!
Preview URL: https://be701058.ferrex.pages.dev
Branch Preview URL: https://feat-mpv-integration.ferrex.pages.dev

View logs

Lowband21 added 28 commits July 26, 2026 15:54
Stop the playback smoke after both fake sinks receive decoded buffers instead of relying on Windows hlsdemux2 to propagate the one-segment VOD EOS.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant