The two-minute demonstration
Klang "Build on Pianissimo", Stockholm, Friday 23 October 2026. Hacking 08:15-09:30, demos from 09:30.
Sayback checks a short spoken change before it becomes a job instruction: real Swedish speech recognition on the CPU, replayable speech evidence, and an explicit human confirmation of the final meaning.
TaglineHear the change. Confirm the handoff.
Before the demo (5 minutes, do this at 08:15)
- Plug in power. Close other heavy apps. Start the server: double-click run_windows.bat in the repository folder. The browser opens http://127.0.0.1:8765/.
- Wait for the status pill (top right) to turn green: "Recognizer ready". On the laptop this takes roughly 10-30 s after the window opens (the model is about 630 MB).
- Press Large text for the big screen. Set the browser zoom so the four cards are readable from the back of the room.
- Test the microphone once: Record, say "test ett två tre", Stop, Transcribe. Allow the microphone permission when the browser asks. If the room is loud, use the upload path with a clip recorded on the phone.
- Load the backup example once (button "Backup example (synthetic)") so it is cached, then press Clear audio and review.
Preparation at the venue
- 08:00-08:15: arrive, hear the organiser's instructions, and confirm the demo format. Use the event's actual rules if anything differs from this guide.
- 08:15-08:35: complete the five-minute setup above, then ask a Swedish speaker to record the fictional note. Test the physical microphone and the room's sound. Keep that short clip as a backup if the speaker agrees.
- 08:35-09:00: try a fresh note with a correction, then one with two separate tasks. Verify that you can keep both tasks using “Other value I heard” rather than treating the last mention as automatically correct.
- 09:00-09:15: rehearse the two-minute flow twice, check the projector, and keep the labelled synthetic backup ready.
- 09:15-09:30: stop adding features. Check battery/power, microphone and model readiness. Leave the app on its start screen.
- From 09:30: follow the organiser's demo order. If your slot is shorter, show the change, replay it, confirm it, and show the final instruction.
The run (about two minutes)
- Record or play the note. Press Record with microphone, read the fictional delivery note, press Stop.
"Hej Sara. Leveransen är på torsdag, förlåt, fredag. Ta åtta lådor, nej, arton lådor. Lämna inte varorna utanför. Ring innan du kommer." Delivery Friday (not Thursday), eighteen boxes (not eight), do not leave the goods outside, call before arrival.Ask the audience: "Which delivery instruction should the team follow?" On the local version, add: "This audio is being processed on this laptop." On a hosted version, say it is sent to the Sayback server.
- Transcribe. Press Transcribe this audio. Point at the actual elapsed time: "This is Pianissimo running now, not a saved transcript." A 16-second synthetic clip took 2.07 seconds in one Windows browser run; timing varies. Do not promise a one-second result.
- Show the evidence. The unedited transcript appears. Click torsdag, then fredag: the audio replays around each word. "These positions are the model's own token estimates, not an alignment. The transcript is never edited; it is evidence."
- Draw attention to the three moments. Day: "torsdag ... fredag" with the cue "förlåt" between them. Quantity: "åtta lådor ... 18 lådor" with "nej" between them; note that the recognizer wrote the digits 18 for "arton". Negation: "Lämna inte varorna utanför" highlighted in red. "The highlights are simple word rules. They are not confidence scores and they can miss things. They do not decide which value wins."
- Resolve it as a human. In the review card: replay, choose fredag, Confirm. Choose 18 lådor, Confirm. Keep "Lämna inte varorna utanför", Confirm. Confirm the name Sara. Press Insert summary from confirmed fields, tidy the wording, tick the acknowledgement.
- Export. Download the text (or JSON). Read one line from it: the final text, the confirmed values with their audio positions, the original transcript, the model revision. "Nothing was sent, booked or paid. The export is the handoff."
- Invite a Swedish attendee. Press Clear audio and review, hand over the microphone for a fresh 10-second note. If the recognizer gets something wrong, show it: that is exactly what the review step is for. If it fails outright, the error message says why (too short, silent, model busy); show it honestly.
A short pitch to practise
After the demo, ask: "Do you receive voice instructions at work? Tell me about the last time one was unclear." Use their example to learn whether this solves a real problem. This is a prototype hypothesis, not a validated business.
If something breaks
Run python scripts\download_model.py in the repo (needs internet) and restart run_windows.bat.
First load on a cold disk can take up to a minute. Watch the server window for errors. If it says out of memory, close other applications.
Use the browser's address-bar permission icon, or record on a phone and use Upload audio file (any format the browser can decode).
The server handles one clip at a time. Wait a few seconds and press Transcribe again.
Press Backup example (synthetic). It is clearly labelled as a precomputed result on text-to-speech audio. Say so out loud. Then press Transcribe this audio live to show the live path on the same clip.
Clips are limited to 30 seconds (and about 1 MB of PCM). Keep the note short.
Things to say, and not to say
- Say: "the recognizer is Klang Pianissimo, the int8 ONNX build, running on this laptop's CPU".
- Say: "the highlights are rules, not confidence; the human decides".
- Say: "the synthetic example is text-to-speech and says nothing about real speakers".
- Do not claim a prize, customer validation, guaranteed accuracy, GDPR compliance, or that this is the first product of its kind. Meeting summaries, audio citations and voice work orders exist; the focus here is correction and negation review with explicit human resolution in a short operational handoff.
Keyboard
Tab moves through every control, including each transcript word (Enter replays it) and each candidate's Replay button. Radio options respond to the arrow keys. Focus is always visible.
Privacy on stage
Local demo (127.0.0.1): audio stays on the laptop and is processed in memory there. Hosted demo: the browser uploads the clip to the Sayback server for processing in memory. The app does not save recordings or log transcript text. The browser keeps the clip until you press Clear or close the tab. Check the app's Privacy line before describing the setup to your audience.