Skip to content

VideoPlayer - #36

Merged
colemancda merged 13 commits into
masterfrom
feature/video
Jul 23, 2026
Merged

VideoPlayer#36
colemancda merged 13 commits into
masterfrom
feature/video

Conversation

@colemancda

Copy link
Copy Markdown
Member

AVKit-style video playback.

What's new

  • VideoPlayer(player: AVPlayer(url:)) — mirrors the AVKit spelling (URL-backed playback only); emits a VideoPlayer node carrying the media URL
  • The interpreter's video composable is platform-specific (expect/actual): Android hosts a Media3 ExoPlayer in a PlayerView with the standard playback controls, prepared paused on the first frame and released on dispose; the desktop rig shows a labeled placeholder (no media stack)
  • Media3 (media3-exoplayer + media3-ui) added to the interpreter's androidMain — the legacy MediaPlayer/VideoView stack proved unreliable for remote streams (tried first: failed with MEDIA_ERROR_UNKNOWN on a reachable URL)
  • Demo app now requests INTERNET

Verification

  • swift test — URL emission test, 58 passing
  • Emulator (new Video screen): streams the Big Buck Bunny sample over HTTPS — controls render, play starts buffered playback, and a mid-playback screenshot shows real frames at 00:04 of 09:56

Notes

Depends on #35 (branched from it); its commits drop out of this diff once that merges. Playback state is player-owned (no play/pause/seek bridge surface yet); desktop playback deferred.

@colemancda
colemancda merged commit 2bc1ae7 into master Jul 23, 2026
6 checks passed
@colemancda
colemancda deleted the feature/video branch July 23, 2026 15:37
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