Feature Request: Per-Application Audio Sink Routing (Independent of Default Output) #950
-
Select Topic AreaFeature Request BodyFeature Request: Per-Application Audio Sink RoutingDescriptionThe current audio sink implementation is limited because it is hard-coded to capture the system's default output. To function, it forces the entire system's default output into the sink. This creates a significant usability issue: if I want to share only one specific application's audio (e.g., Nucleus Co-op) with a remote client while keeping my other activities private, I have to do the opposite of what is intuitive. Since the client "hears" everything on the default device, I am forced to manually redirect every other running application to my headphones.
Proposed Change: Per-Application Audio SinkingI propose implementing audio sinking on a per-application basis. For example:
This would allow for routing specific programs to a virtual output automatically or manually without affecting the rest of the system's audio routing. Use Case & MotivationI often play co-op games with friends or let them play remotely while I study or watch YouTube videos. I want to prevent our audio streams from mixing. Current suboptimal workaround:
Desired Workflow:
Technical SummaryBy allowing the sink to be configured per application, the software can create a dedicated monitor for virtual audio that only captures intended streams. This leaves the "Default" device exclusively for the local user, eliminating the need for complex manual re-routing. |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments
-
Beta Was this translation helpful? Give feedback.
-
|
Would be nice to have an option to select specific applications to remove their audio from being captured on Linux, this is already possible with an plugin to OBS, it works extremely well, it should be able to do, look at this https://github.com/dimtpap/obs-pipewire-audio-capture This project uses PipeWire to do the audio capture, as far as I know, sunshine uses PulseAudio which is an old solution, but I don't really know if this is possible to do with Pulse. But what really matters is the feature anyway |
Beta Was this translation helpful? Give feedback.
LizardByte/roadmap#31