Category
Browser Creative
Real-time graphics, sound and input in the browser: Three.js WebGL context leaks, Web Audio scheduling drift, Web MIDI permissions and face-api.js privacy.
4 entries
Three.js Too Many Active WebGL Contexts After dispose()
Chrome allows at most 16 active WebGL contexts per renderer process. Three.js renderer.dispose() doesn't release the WebGL context, so a scene remounted on every route visit hits the cap on visit 17.
Web Audio Scheduling Drift: Right in Code, Late in the Room
A Web Audio metronome on setTimeout drifts because the JavaScript timer and the audio clock are two clocks. A lookahead scheduler on currentTime fixes it, measured before and after.
face-api.js Privacy: Verify It in the Network Tab
A privacy claim worth trusting is one you can check. The Network tab on a live face-api.js app shows the model weights load once, then zero requests while the camera runs.
Web MIDI Permission, statechange and the Stuck Note
A Web MIDI app has three states to track: permission, device and connection. When an input disconnects, release every note it started, or the note sticks after the device returns.