Skip to content

Feature/apple music artwork - #2467

Open
HrishikeshBhandarkar wants to merge 11 commits into
maxrave-dev:devfrom
HrishikeshBhandarkar:feature/apple-music-artwork
Open

Feature/apple music artwork#2467
HrishikeshBhandarkar wants to merge 11 commits into
maxrave-dev:devfrom
HrishikeshBhandarkar:feature/apple-music-artwork

Conversation

@HrishikeshBhandarkar

Copy link
Copy Markdown

Apple Music Live Motion Artwork & Canvas Prioritization

What this PR does

Adds Apple Music live motion artwork support for both the player view (Apple Music layout) and the Album screen, plus prioritization between Apple Music animated covers and Spotify Canvas so they don't fight each other.

Changes

  • Live Artwork in Player & Album screens: Uses ExoPlayer (MediaPlayerView) to loop Apple Music motion covers (.m3u8) full-bleed with smooth scrim gradients. Falls back to static artwork if no motion exists.
  • 1080p Cap for Motion Video: Restricted ExoPlayer's video track selector in core to max 1920x1920 with adaptive streaming enabled. This keeps playback at crisp 1080p without buffering 4K 2048x2732 streams that drain battery.
  • Apple Music vs Spotify Canvas Prioritization:
    • Both requests start concurrently when a song loads so there's no added delay.
    • In-memory caching for both Canvas and Apple Music artwork responses to avoid re-fetching on song switches.
    • If Apple Music has live motion artwork, it takes precedence and Canvas is hidden.
    • If Apple Music doesn't have motion artwork (or times out), Spotify Canvas displays as usual.

Note: Depends on core submodule changes on branch feature/apple-music-artwork (Apple Music scraper service + 1080p DefaultTrackSelector in media3-ui).


Media / Comparisons

Now Playing (Live Artwork)

Before After
Screenshot now playing before
Screenrecorder-2026-09-06-15-32-36-221.mp4

Album Screen

Before After
Screenshot of Album before
Screenrecorder-2026-09-06-15-38-23-555.mp4

How it was tested

  • Tested songs with live motion artwork on Apple Music.
  • Tested offline / tracks with no live artwork or Canvas to verify static cover fallback.
  • Tested Album screen motion playback on both portrait and landscape orientations.

@github-actions

github-actions Bot commented Sep 6, 2026

Copy link
Copy Markdown

Thanks for the PR! Please complete the pull request template — in particular the checkbox confirming you wrote or personally reviewed every line, and the issue this change addresses. It helps us tell real contributions from the flood of auto-generated ones. Edit your PR description; no need to open a new PR.

@github-actions github-actions Bot added the needs-template PR template incomplete — see the triage comment label Sep 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-template PR template incomplete — see the triage comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant