Skip to content

feat: Add video playback support for video songs#2861

Draft
kairosci wants to merge 7 commits intoMetrolistGroup:mainfrom
kairosci:feature/video-playback
Draft

feat: Add video playback support for video songs#2861
kairosci wants to merge 7 commits intoMetrolistGroup:mainfrom
kairosci:feature/video-playback

Conversation

@kairosci
Copy link
Contributor

@kairosci kairosci commented Feb 15, 2026

Problem
Video songs display only static thumbnails instead of playing video content.

Cause
The player lacks video playback integration. While the codebase tracks isVideoSong metadata, the UI only renders static images in the thumbnail area for all media types.

Solution

  • Created VideoPlayer component using Media3 PlayerView to render video content
  • Modified Thumbnail.kt to conditionally show VideoPlayer or static image based on media type
  • Added user preference toggle in appearance settings (disabled by default)
  • Added media3-ui dependency to support PlayerView

Testing
Feature builds successfully. Requires device testing with video songs from YouTube Music to verify playback functionality, performance, and battery impact.

Closes no specific issue (new feature implementation)

@kairosci kairosci force-pushed the feature/video-playback branch 2 times, most recently from 66e0703 to e321811 Compare February 15, 2026 15:53
@mostafaalagamy
Copy link
Member

Feedback: It gives us all a black screen

@mostafaalagamy mostafaalagamy marked this pull request as draft February 15, 2026 17:36
@mostafaalagamy
Copy link
Member

The settings option could be improved so that we use it within the player as a toggle button at the top instead of Now Playing!
youtube music

@kairosci kairosci force-pushed the feature/video-playback branch from f203d2e to 7e33307 Compare February 15, 2026 17:56
@mostafaalagamy
Copy link
Member

No video player shown yet!

-Add VideoPlayer component using Media3 PlayerView
- Add toggle button in Now Playing header
- Add EnableVideoPlaybackKey preference (defaults to true)
- Add appearance settings option for video playback
- Implement video streaming support in YTPlayerUtils (muxed formats)
- Pass video preference from MusicService to streaming layer
- Add videocam/videocam_off icons for toggle button
@kairosci kairosci force-pushed the feature/video-playback branch from 7e33307 to ee2b71b Compare February 15, 2026 18:30
@kairosci
Copy link
Contributor Author

I just discovered that the app only fetched audio, so I need to fetch mixed data.

When it's ready, I'll mark it as ready.

@alltechdev
Copy link
Collaborator

alltechdev commented Feb 16, 2026

I just discovered that the app only fetched audio, so I need to fetch mixed data.

When it's ready, I'll mark it as ready.

Just letting you know, in order to get ada

I just discovered that the app only fetched audio, so I need to fetch mixed data.

When it's ready, I'll mark it as ready.

If you want adaptive streaming, above 720p you can use built in MergingMediaSource, TVHTML is a good primary client too.

Might need to apply PoToken and n transform same that we are using for web remix. I think so. Could be wrong.

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.

3 participants