
MIRA: Building a TV That Moves While It Talks
This weekend at HackBarna—the hackathon opening AI Summit Barcelona at Norrsken—Igor Kuzmin, Arik Dutta, and I built MIRA, a TV you can talk to.
Tell her what you are in the mood for. She finds it, talks it through with you, and presses play.
The result was three podium finishes:
- 2nd place overall out of 68 projects
- Winner of the Titan OS challenge
- Runner-up in the SLNG challenge

The Design Decision That Made It Feel Different
Most voice assistants stop talking to perform an action. You hear, “Let me do that for you…” followed by a pause, and only then does the interface respond. That pattern works, but it makes the assistant feel like a voice-operated remote.
MIRA does not pause. Every turn produces two things at once:
- What she says
- A stream of typed commands for the TV—focus an item, open its details, or start playback
The screen moves while she is still mid-sentence. The speech and interface become one continuous presentation rather than a request followed by an action.
Interruption handling is just as important. If the viewer interrupts MIRA, any command that has not yet gone out is dropped. Without that rule, commands generated for an abandoned response could continue changing the screen after the conversation has moved on.
That is the difference between a voice remote and a presenter.

Two Planes, One Experience
Under the hood, MIRA separates media from control.
The media plane runs in one Pipecat pipeline:
WebRTC → speech-to-text → LLM → text-to-speech → lip-synced avatar
The command plane produces structured TV actions alongside the spoken output. Those commands can be streamed to the Titan OS interface as soon as they are ready instead of waiting for the complete spoken response.
This separation gave us three useful properties:
- Low perceived latency — the interface starts responding during speech
- Natural pacing — visual actions align with what MIRA is currently saying
- Safe interruption — queued, unsent actions can be discarded immediately
The avatar in the demo was custom-made from Igor, which helped make the concept feel like a television presenter rather than a generic assistant.
The Stack
We used Nebius for inference, SLNG for MIRA’s voice, Titan OS as the TV platform, and fal for generated media. Pipecat connected the real-time speech and avatar pipeline, with WebRTC carrying the live media.
The full source is available on GitHub. The recorded demo starts at 58:19.
One Hard Thing
This was my second HackBarna in a row with a win. Last year, our team built Relocation Buddy, which won the “Make Travel Delightful” challenge.
The lesson was the same both times: pick one hard thing and make it feel effortless.
For MIRA, that hard thing was not merely making a television respond to speech. It was making conversation and interface action feel like the same real-time performance.
Huge thanks to the HackBarna organisers, the jury, and the teams at Nebius, SLNG, Titan OS, and fal for supporting the build.
