Skip to content

feat(android): replace custom VideoView with media3 PlayerView - #4581

Merged
KrzysztofMoch merged 9 commits into
TheWidlarzGroup:masterfrom
Pieczasz:feat/track-controls
Jul 2, 2025
Merged

feat(android): replace custom VideoView with media3 PlayerView#4581
KrzysztofMoch merged 9 commits into
TheWidlarzGroup:masterfrom
Pieczasz:feat/track-controls

Conversation

@Pieczasz

Copy link
Copy Markdown
Contributor

Changes

  • Simplified ExoPlayerView: Replaces manual management of video surfaces, UI controls, and ad overlays with PlayerView's integrated components.
  • Enhanced Controls & Subtitles: Integrates PlayerView's native controls for a more consistent user experience, and improves subtitle styling and dynamic visibility based on available tracks. External subtitle support is now handled directly through ExoPlayer's MediaItem for better compatibility.
  • Improved Track Selection: Refines the logic for selecting audio and text tracks, providing more accurate reporting and enabling better control over track preferences.
  • Stability & Performance: Introduces a layout fix to address potential rendering issues with React Native's layout system, ensuring internal player views are sized correctly. The example app also includes performance enhancements for track change detection.
  • Modernized Base: Adopting PlayerView aligns the player with best practices, simplifies future maintenance, and leverages the latest features of the ExoPlayer library.

Pieczasz added 6 commits June 24, 2025 14:45
…nd update Podfile.lock for dependency versions
…for audio and text tracks in BasicExample and update UI components for better track labeling
…ideo scaling, and audio track selection logic

@KrzysztofMoch KrzysztofMoch left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks good, but there is a lot of "empty" functions that should be removed. Also I see that you removed possibility of setting SurfaceView type - this should be implemented also

Comment thread android/src/main/java/com/brentvatne/exoplayer/FullScreenPlayerView.kt Outdated
Comment thread android/src/main/java/com/brentvatne/exoplayer/ExoPlayerView.kt Outdated
Comment thread android/src/main/java/com/brentvatne/exoplayer/ReactExoplayerView.java Outdated
@KrzysztofMoch KrzysztofMoch changed the title Feat/track controls feat(android): replace custom VideoView with media3 PlayerView Jul 1, 2025

@KrzysztofMoch KrzysztofMoch left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please remove those empty functions that have comments

PlayerView manages shutter view automatically
This method is kept for compatibility

And I think we will be ready to merge

@KrzysztofMoch
KrzysztofMoch merged commit 978683b into TheWidlarzGroup:master Jul 2, 2025
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Development

Successfully merging this pull request may close these issues.

2 participants