demo · v151
Punctuation Diff Viewer
Two recognizers, one microphone. The left-hand panel runs unspokenPunctuation: true; the right runs with it off. Speak naturally, watch the diff appear in real time, and see exactly which tokens the engine inferred.
Requires microphone permission. If your browser doesn't yet support
unspokenPunctuation, the right panel will mirror the left. If SpeechRecognition is unavailable entirely, you'll see a feature-detect message.
controls
idle
diff
unspokenPunctuation: true
engine adds punctuation it inferred
(speak into your mic)
unspokenPunctuation: false
raw transcript, spoken words only
(speak into your mic)
code
// Run two recognisers in parallel with different flags.
const rOn = new SpeechRecognition();
const rOff = new SpeechRecognition();
rOn.unspokenPunctuation = true;
rOff.unspokenPunctuation = false;
[rOn, rOff].forEach(r => {
r.continuous = true; r.interimResults = true; r.lang = "en-US";
});
rOn .onresult = (e) => renderInto("tOn", e);
rOff.onresult = (e) => renderInto("tOff", e);
rOn.start(); rOff.start();
see also
implementation reference
Need the exact API surface, compatibility boundaries, errors, lifecycle, and source links? Read the matching gendn reference ↗