Skip to content

feat(realtime): WebRTC support#8790

Merged
mudler merged 2 commits intomudler:masterfrom
richiejp:feat/webrtc
Mar 13, 2026
Merged

feat(realtime): WebRTC support#8790
mudler merged 2 commits intomudler:masterfrom
richiejp:feat/webrtc

Conversation

@richiejp
Copy link
Copy Markdown
Collaborator

@richiejp richiejp commented Mar 5, 2026

This adds WebRTC support to the realtime API and converts the Talk page to use realtime WebRTC. This has a huge impact on the existing realtime API and requires the inclusion of large libraries like Pion.

The Opus codec is needed for WebRTC and requires libopus. To keep this separate from the main Go executable and avoid requiring a C toolchain, Opus has been given its own backend.

TODO:

  • Handle barge-in from the client speaker
  • Prevent sending back multiple audio streams at once (assuming that is the problem)
  • Replaced buggy Opus-go with libopus using purego binding to avoid CGO.
  • convert to new UI (rebase on master)

Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants