Changeset 8d43aa1 in Klonkt for src/assets/js/audio-player.js


Ignore:
Timestamp:
06/20/2026 04:39:28 AM (3 months ago)
Author:
roboburr <roboburr@…>
Branches:
main
Children:
8ab20b6
Parents:
e056e56
Message:

fix(player): prewarm hidden YT player (autoplay within gesture)

The YT player was only created on click (cold) → by the time it was ready
the click gesture had expired → YouTube blocked autoplay (flaky: only worked
if the player happened to be warm). Now embed-player prewarms the player as
soon as an audio-only YT embed/album renders
(pcmsAudioPlayer.prewarmYouTube), so the first click falls within the
gesture. busters audio-player.js?v=26, embed-player.js?v=15.

Co-Authored-By: Claude <noreply@…>

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/assets/js/audio-player.js

    re056e56 r8d43aa1  
    982982  }
    983983
     984  // Maak de verborgen YT-speler vast aan (zonder iets te spelen), zodat 'ie bij de
     985  // eerste klik al klaar staat → loadVideoById valt dan binnen de user-gesture en
     986  // YouTube's autoplay-policy blokkeert het niet.
     987  function prewarmYouTube() { try { ensureYT(); } catch (e) {} }
     988
    984989  window.pcmsAudioPlayer = {
    985     setQueue, play, pause, next, prev, close, openSheet, closeSheet, playYouTube, playYouTubeList,
     990    setQueue, play, pause, next, prev, close, openSheet, closeSheet, playYouTube, playYouTubeList, prewarmYouTube,
    986991    isPlaying: () => isPlaying,
    987992    currentTrack: () => queue[currentIndex] || null,
Note: See TracChangeset for help on using the changeset viewer.