send2streamer/public
vrubelroman 8aeca230bc
All checks were successful
CI/CD Pipeline / build-and-deploy (push) Successful in 29s
Fix TTS overlap deterministically, preserve message order, fix flaky Google login button
Overlay display duration is now computed server-side from estimated
reading time (text length / speaking rate), not from the audio
element's 'ended' event — edge-tts streams MP3 without a duration
header, and OBS's embedded browser fires 'ended' unreliably for that,
which is why the earlier event-based fix didn't hold up.

Per-streamer broadcasts are now serialized through a queue, so a
message waiting on an AI reply can no longer be overtaken by a later
message from a different viewer that doesn't need one.

Also fix the Google Sign-In button intermittently not rendering: the
GSI script tag is async/defer, and both index.html and send.html/js
called google.accounts.id.initialize() without waiting for it to
actually finish loading — a race that failed silently until the
script was cached from a previous load.
2026-07-08 18:21:57 +00:00
..
dashboard.html Add streamer dashboard stats; fix TTS overlap race properly 2026-07-08 18:04:02 +00:00
index.html Fix TTS overlap deterministically, preserve message order, fix flaky Google login button 2026-07-08 18:21:57 +00:00
overlay.html Initial commit: overlay + sender pages for StreamLabs browser source 2026-07-01 15:17:25 +00:00
overlay.js Fix TTS overlap deterministically, preserve message order, fix flaky Google login button 2026-07-08 18:21:57 +00:00
send.html Fix TTS overlap deterministically, preserve message order, fix flaky Google login button 2026-07-08 18:21:57 +00:00
send.js Fix TTS overlap deterministically, preserve message order, fix flaky Google login button 2026-07-08 18:21:57 +00:00