commits
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The comment-stripping regex was matching // inside at:// URIs,
silently corrupting every entry so the deny list filtered nothing.
Removed comments from the JSON file and simplified parsing to plain
JSON.parse. Also trimmed the list to only non-talk entries (starting
soon, lunch, join us, duplicates) — all actual talks are now included.
Reduced audio ready-wait timeout from 3s to 1s.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Use hls.js on the video-only playlist (track=1) for fast video start,
while fetching the single-segment audio blob in the background. Removes
~120 lines of manual M3U8 parsing, byte-range fetching, MediaSource
buffer management, and the fragile playbackRate-based audio sync loop
that caused crackling and drift. Audio now just seeks once to match
video position and plays without continuous correction.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Update name in Wrangler configuration file to match deployed Worker
Uses Web Audio API to generate looped white noise at low volume
during channel switches, with a quick fade-out to avoid clicks.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
A static web app that presents ATmosphereConf 2026 conference recordings
as a CRT television channel-surfing experience. Turn the dial to land on
a random talk at a random point, exactly like flipping channels mid-programme.
Uses MSE directly (no hls.js) to work around CDN byte-range quirks and
single-segment audio tracks. Deploys to Cloudflare Workers.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The comment-stripping regex was matching // inside at:// URIs,
silently corrupting every entry so the deny list filtered nothing.
Removed comments from the JSON file and simplified parsing to plain
JSON.parse. Also trimmed the list to only non-talk entries (starting
soon, lunch, join us, duplicates) — all actual talks are now included.
Reduced audio ready-wait timeout from 3s to 1s.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Use hls.js on the video-only playlist (track=1) for fast video start,
while fetching the single-segment audio blob in the background. Removes
~120 lines of manual M3U8 parsing, byte-range fetching, MediaSource
buffer management, and the fragile playbackRate-based audio sync loop
that caused crackling and drift. Audio now just seeks once to match
video position and plays without continuous correction.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
A static web app that presents ATmosphereConf 2026 conference recordings
as a CRT television channel-surfing experience. Turn the dial to land on
a random talk at a random point, exactly like flipping channels mid-programme.
Uses MSE directly (no hls.js) to work around CDN byte-range quirks and
single-segment audio tracks. Deploys to Cloudflare Workers.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>