A local bridge that captures browser-tab audio, relays it over WebRTC, and routes it through a Linux virtual audio sink for secondary browser sessions.
Why this system had to exist
This tool came from a very specific systems problem: browsers do not allow one site to inject microphone audio directly into another tab, even when the workflow clearly needs it. I needed a local utility that could take audio from one browser context and make it available to another in a standards-compliant way.
Solved a real browser limitation by combining WebRTC delivery with OS-level audio device routing.
Bridged browser tab audio inputs to secondary windows via WebRTC and OS-level virtual sound devices.
What was breaking down
Direct browser-to-browser microphone injection is intentionally blocked for security reasons. That makes voice relays, assistive browser workflows, and certain AI-audio interactions harder to implement than they appear. The challenge was to move audio safely between sessions without violating browser security constraints.
Audio Routing
Manual fragile workarounds
Browser Limits
Hard blocker
Voice Input Reuse
Not practical
The breakthrough and implementation path
I implemented a local WebRTC bridge that captures shared tab audio, delivers it to a listener page, and plays it through a selectable output device. On Linux systems it can create a dedicated PulseAudio or PipeWire null sink so the monitor source becomes a usable microphone input for another browser session. That makes a previously awkward manual workflow dependable and repeatable.
The correct solution was not to fight the browser sandbox, but to bridge across it. By using WebRTC for tab-to-tab streaming and an OS-level virtual sink for final routing, the system stays within platform rules while still enabling the desired audio handoff.
Tab Audio Capture
WebRTC Streaming Channel
Before vs after, without the clutter
Outcome metrics stay visible while comparison details are compressed into large readable cards instead of long stacked panels.
Audio Routing
Manual fragile workarounds
Optimized resolution
Structured bridge flow
Layered architecture with one consistent layout
Explore the operating layers and the shipped feature set in the same wider content frame used across the full case study.
Tab Audio Capture
Captures shared browser-tab audio and relays it to a second session
Supports virtual sink creation for Linux audio routing
Lets downstream browser tools consume routed audio as microphone input
Works even when automatic sink creation is unavailable
