Skip to content

Add Microsoft voice live service - #82

Merged
pragmatrix merged 9 commits into
masterfrom
voice-live
Jun 23, 2026
Merged

Add Microsoft voice live service#82
pragmatrix merged 9 commits into
masterfrom
voice-live

Conversation

@pragmatrix

Copy link
Copy Markdown
Owner

The goal of this PR is to add a basic service that supports Microsoft Voice Live API endpoints and to experiment with Semantic / Smart VAD.

@pragmatrix
pragmatrix marked this pull request as ready for review June 23, 2026 18:08
@pragmatrix
pragmatrix requested a review from Copilot June 23, 2026 18:08

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new microsoft-voice-live service crate to support Microsoft Foundry Voice Live Realtime (transcription-focused) endpoints, and updates existing realtime event types to consistently serialize variant fields in camelCase (needed for OpenAI/Azure-style realtime JSON payloads). This also extends the transcribe example and docs to allow experimenting with Azure Semantic/Smart VAD parameters.

Changes:

  • Introduce services/microsoft-voice-live (host/client/transcription buffering) and register it in the main registry + service re-exports.
  • Normalize realtime Service{Input,Output}Event serde attributes to apply camelCase to enum variant fields consistently.
  • Extend CLI example/docs/just targets to run the new Voice Live provider and provide env var configuration guidance.

Reviewed changes

Copilot reviewed 20 out of 21 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/lib.rs Re-exports the new MicrosoftVoiceLiveTranscribe service from the top-level services module.
src/context_switch.rs Registers the new service in the runtime service registry under microsoft-voice-live-transcribe.
services/openai-dialog/src/types.rs Updates serde tagging/casing rules for realtime input/output event enums.
services/openai-dialog/src/transcription_state.rs Adds new transcription buffering/state module for interim + final transcript assembly.
services/openai-dialog/src/lib.rs Switches module wiring to use transcription_state.
services/openai-dialog/src/client.rs Updates imports to the new transcription state module.
services/openai-dialog/Cargo.toml Bumps tokio-tungstenite to 0.29.0.
services/microsoft-voice-live/src/lib.rs New crate entrypoint exporting params/service/events.
services/microsoft-voice-live/src/transcribe.rs Implements Service wrapper and defines service-level control events + defaults.
services/microsoft-voice-live/src/host.rs Builds Voice Live websocket URL and connects via Azure realtime protocol settings.
services/microsoft-voice-live/src/client.rs Implements websocket loop, session update, audio append, and transcription event handling.
services/microsoft-voice-live/src/transcription_state.rs New minimal transcription buffer state (input-side only).
services/microsoft-voice-live/Cargo.toml New crate dependencies and workspace integration.
services/google-dialog/src/types.rs Aligns serde casing rules for realtime event enums.
README.md Documents how to run the transcribe example with Voice Live + required env vars.
justfile Adds a convenience target for Voice Live transcription in German.
examples/transcribe.rs Adds voice-live provider option and wires up Voice Live params + (experimental) Azure semantic VAD config.
CONTEXT.md Adds terminology glossary distinguishing Azure Speech vs Azure OpenAI Realtime vs Voice Live.
Cargo.toml Adds the new service crate as a workspace member and workspace dependency.
.harper-dictionary.txt Adds “VAD” to spelling dictionary.

Comment thread examples/transcribe.rs Outdated
Comment thread services/microsoft-voice-live/src/client.rs Outdated
Comment thread services/microsoft-voice-live/src/client.rs Outdated
pragmatrix and others added 4 commits June 23, 2026 20:13
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@pragmatrix
pragmatrix merged commit 65a4a60 into master Jun 23, 2026
3 checks passed
@pragmatrix
pragmatrix deleted the voice-live branch June 23, 2026 18:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants