A joining member's player always called loadVideo(itemId, 0, false), hardcoding a resume position of 0. Since a party's Emby stream is one shared transcode session (PartyStreamService, keyed by partyId alone), a newcomer's hls.js requesting segments from position 0 against a session that already progressed well past that forces Emby to seek/restart the shared transcode - stalling playback for every member, host included, right as the newcomer joins. Seed the initial resume position from the host's last-reported position (already available in party.members) instead, so the first segment request lands near where the shared session already is. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| src | ||
| build.mjs | ||
| package-lock.json | ||
| package.json | ||
| tsconfig.json | ||