Phone telemetry post-deploy showed attachListenerStreamViaAudioContext logging ctxState=suspended despite resume() being called at entry- click time. Firefox Android requires more than just resume() to keep the audio render thread alive — the context goes back to suspended the moment the gesture window closes if nothing is actively playing through destination. Fix: inside primeAudioOnGesture, after resume(), play a brief silent oscillator (50ms, gain=0) through audioCtx.destination. That forces the render thread to ACTUALLY START rather than just queueing- pending. After this the context stays running for the session and every MediaStreamAudioSource attached to destination plays through. Added 'audioCtx primed state=...' log so we can confirm the state flipped to 'running' in the entry click. |
||
|---|---|---|
| .. | ||
| blog | ||
| fonts | ||
| chat.html | ||
| host-your-own.html | ||
| how-it-works.html | ||
| index.html | ||
| kernel.html | ||
| stamp.js | ||
| zebra-audio.html | ||
| zebra-spaces.html | ||