← All articles

Streaming, podcasting, recording

Game in the stream.
Discord only in your ears.

Published August 18, 20268 min read

Short answer

You need two mixes, not one: what you hear, and what the stream captures. On macOS 13 and later OBS can capture a single application directly, so build the broadcast mix inside OBS by capturing only the game — and leave Discord out of it. Then use a per-app mixer to set what you hear locally. No virtual audio cable required for the common case.

Every Mac streamer hits the same wall. Either the stream carries your friends' voices — including the parts they did not intend for an audience — or you strip Discord out and lose it from your own headphones too. On Windows this is a solved problem. On a Mac, the advice you find is usually three years out of date.

The idea that fixes it: two mixes, not one

Stop thinking about "volume" and start thinking about two separate outputs that happen to come from the same machine:

  • The monitor mix — what you hear. Game, Discord, your own music, notifications. Balanced for you, and nobody else's business.
  • The broadcast mix — what the stream captures. Game audio, your microphone, maybe licensed music. Deliberately missing things.

Almost every Mac streaming audio problem is these two collapsed into one. Build them separately and the problems stop being problems.

Build the broadcast mix in OBS — it can do this natively now

This is the part where old advice misleads people. For years, capturing one application's audio on a Mac meant installing a virtual audio device — BlackHole, Loopback, Sound Siphon — routing your system output into it, and untangling the results. macOS had no per-application capture, so a fake device was the only way in.

Since OBS 28 on macOS 13 and later, OBS can capture desktop audio or the audio of a single application directly, using Apple's own APIs. No virtual cable. Add the capture source, pick the application, and it lands in the OBS audio mixer as its own track with its own fader.

So the broadcast mix is:

  1. An application audio capture source for the game.
  2. An audio input capture source for your microphone.
  3. No Discord source at all.

That third line is the entire fix for "my viewers can hear my friends." Discord is not excluded by turning it down — it is excluded by never being captured. There is no slider to accidentally nudge before going live.

Detail on the OBS side of this — track routing, monitoring, why the mixer faders behave the way they do — is in the OBS article.

Build the monitor mix with a per-app mixer

Now for your side, which is where macOS still gives you nothing. You want the game at a level you can play to, Discord clearly above it so you can hear callouts, and Spotify well underneath. macOS has one volume for all three.

A per-app mixer gives each one its own fader. In MixPill this is the free tier — unlimited apps, permanently, no trial clock:

  • Game at a comfortable level.
  • Discord above it — with per-user volume inside Discord for the one friend who is always too loud, covered in the Discord article.
  • Spotify well down.
  • Everything else muted, because a notification chime mid-stream is a specific kind of embarrassment.

Levels persist per app, so you set this once rather than before every session, and with Pro you can save the whole thing as a preset and recall it in a click.

Where output routing earns its place

For a lot of setups the above is all you need. Routing becomes worth it when you want audio to physically go somewhere else:

  • Discord on headphones, game on speakers — or the reverse, so a second person in the room hears the game but not your voice channel.
  • Music to a separate interface output, so it never touches the pair of channels you are monitoring the stream on.
  • Specific channel pairs on a multi-output interface, rather than whole devices.

MixPill's per-app output routing does this, including channel pairs, and it is a Pro feature. It does not install a virtual device to do it — the routing happens through Core Audio process taps in user space, which is also why your default output device never changes.

Test it, every time, before you go live

This is the habit that separates people who have audio problems on stream from people who do not. Both OBS and a per-app mixer work by tapping application audio, and the interaction between two tools tapping the same process is worth verifying rather than assuming.

  1. Start a 30-second local recording in OBS.
  2. Play the game, speak, have someone say something in Discord, start Spotify.
  3. Stop, and listen back on headphones.

You are checking three things: is Discord absent, is the game at a sane level against your voice, and does anything sound thin or doubled. Thirty seconds now beats a clip going around later.

Two things that are not routing problems

  • Your friends hearing the stream. That is your speakers feeding your microphone. Headphones fix it; routing does not.
  • Everything sounding thin the moment you join voice chat. Many Bluetooth headsets drop into a low-bandwidth mode when their microphone is in use. Use wired headphones, or a separate USB microphone with Bluetooth output only.

If a DAW is anywhere in the chain

Music producers streaming a session have a specific worry: anything sitting between an application and the audio hardware is a latency risk, and a mixer that taps your DAW is a mixer that can change monitoring behaviour mid-take.

MixPill has a per-row DAW Direct switch that keeps an application entirely out of the signal path — not turned down, not processed, never tapped. Logic, Ableton, Pro Tools, Cubase, FL Studio and Studio One are covered by default, and you can switch it on for anything else. It is in the free tier deliberately, because a safety switch behind a paywall is not a safety switch. More on how that works.

Common questions

Do I still need BlackHole or Loopback for this?

For the common case, no. OBS on macOS 13 and later can capture a specific application's audio natively, which is what a virtual cable used to be for. Virtual devices are still useful for more complicated routing — feeding audio between applications, or building a mix-minus for remote guests.

Why can my friends hear the stream through my mic?

That is echo, not routing: your speakers are playing the stream and your microphone is picking it up. Headphones fix it completely. No amount of routing will if you are on speakers.

Can I have Discord louder in my headphones than it is in the stream?

Yes, and that is the whole point of separating the two mixes. If Discord is not in the OBS capture at all, its level in your headphones is purely a personal choice and cannot affect the broadcast.

Does a per-app mixer change what OBS records?

It can, depending on how each is capturing. Both tools tap processes, so the interaction is worth verifying rather than assuming — do a 30-second test recording and listen back before you go live. That habit catches every version of this problem.

Try it

Per-app volume, mute and live metering are free forever, for unlimited apps. No driver, no restart, one macOS permission.

macOS 15 Sequoia or later · Apple silicon & Intel · signed and notarized