Feed vocoder speech in live mode: fix the robot_choir hum

The live conductor passed speech:null to every openLive, so the vocoder voice (robot_choir, u.vocoder) got an empty carrier and droned. Two gaps closed:

• live.js: decode the speech source (vocoderSourceId, else first sp_/vx_/vox_ found source — mirrors press.js decodeInputs) once per id via FP.decodeUrlToBuffer (local cache) into a mono Float32

• stream-renderer.js: the LIVE vocIns now LOOPS the carrier (modulo) so it keeps speaking past the clip length; the whole-song open() speech-tile path (parity) is untouched.

Verified: segment-parity byte-equal, engine.test ALL PASS, clicktest 0 clicks. Functional (electro, vocoder lead): every openLive received a non-null ~3.2s carrier (speechOpens 3, nullOpens 0)

▶ Play it: Dial Tone Prophet — the genre built out of recorded and synthesized voices https://stellate.app/?genre=spokenword&seed=2840&path=196.11721,215.11754,177.11754&xdur=13.122

c0f411e https://github.com/aboard-io/stellate/commit/c0f411e8c010ac2f2ba853eade361b23a81373e4