AirCheck Guides · Support · Home

Guides / Recording internal and system audio

What is ScreenCaptureKit audio capture on a Mac?

Tested on macOS 26.4.1 (Tahoe), Apple M3 Max, 3 Sept 2026. Updated 2026-09-03.

ScreenCaptureKit is Apple's framework for streaming screen content and audio to an app. It shipped in macOS 12.3 for video; audio capture (capturesAudio) arrived in macOS 13. It delivers the Mac's mixed output as PCM at 48 kHz stereo by default, filtered by display, window or app, after the user grants Screen & System Audio Recording permission. It replaces virtual audio drivers for recording what a Mac plays.

What is ScreenCaptureKit?

Apple's own summary: "Use ScreenCaptureKit to capture high-performance video and audio across iOS, iPadOS, macOS, tvOS, and visionOS." The framework hands an app a stream of CMSampleBuffer objects, video frames and audio buffers with timestamps, drawn from the compositor and the audio mixer rather than from a capture device.

The audio side is small and specific:

Bit depth is not a stream setting; the buffers are float PCM and the recorder chooses what to write. AirCheck writes 24-bit AIFF and converts on export. For the plain-language version see can a Mac record internal audio natively.

Which permission does ScreenCaptureKit audio need?

One. Apple's developer page says: "Request screen recording permission from the person before capturing content", and the app must declare an NSScreenCaptureUsageDescription. On the user's side this is System Settings > Privacy & Security > Screen & System Audio Recording. Apple's support page explains you can "allow apps to record both your screen and audio, or just your audio", which is why an audio-only recorder appears in what looks like a screen-recording list.

What the permission does not do: it does not grant microphone access (that is a separate Microphone entry), and it does not survive a re-signed build of the app. On macOS 26.4.1 a denied or missing entry gives an empty recording rather than an error dialog, so an empty file is the first symptom to check. Steps that fix it:

  1. Open System Settings > Privacy & Security > Screen & System Audio Recording.
  2. Toggle the recorder on; if it is missing, launch the recorder and start a capture so macOS adds it.
  3. Quit and reopen the recorder.

See permission not showing if the entry never appears.

Which apps and sounds can it capture, and what is excluded?

Capture follows an SCContentFilter. A filter can take a whole display, a single window, or a display "including only windows of the specified apps" or excluding listed apps. Audio is attached to the filtered content, so a filter that includes one app records that app's sound. AirCheck uses a whole-display filter, which yields everything the Mac plays; Audio Hijack and Piezo expose per-app selection.

Exclusions, in practice:

Which Mac apps record audio with ScreenCaptureKit, and which do not?

Apps built on it: AirCheck (system audio source), OBS Studio (macOS audio capture source, macOS 13 or newer). Apps that do not: QuickTime Player, Voice Memos, GarageBand, Audacity and the Screenshot toolbar, all of which record input devices through AVFoundation or Core Audio and therefore need a virtual driver to see system output. Audacity's guide states the limitation directly: "MacOS does not have built-in desktop audio recording capabilities."

Apple's second API, Core Audio process taps (AudioHardwareCreateProcessTap, macOS 14.2), is an alternative for per-process audio without any video machinery. Rogue Amoeba's apps list macOS 14.4 as their floor, consistent with that API. Whichever route an app uses, the user-facing permission is the same pane, and no kernel or user-space audio driver is installed. The virtual driver guide explains when the old route still makes sense.

Use ScreenCaptureKit to capture high-performance video and audio across iOS, iPadOS, macOS, tvOS, and visionOS.

Apple, ScreenCaptureKit documentation

Ways an app can obtain system audio on macOS (Sept 2026)

Capture methodMin macOSDriver installedPer-app filterMic in same streamDefault rate
Virtual driver (BlackHole, Soundflower)10.10yesnovia Aggregate Devicedevice setting
ScreenCaptureKit audio13.0noyes (app or window)macOS 15+48 kHz stereo
Core Audio process tap14.2noyes (process)nodevice setting
AVFoundation input capture (QuickTime, ffmpeg)anynon/a, inputs onlyn/adevice setting

AVFoundation input capture cannot see system output at all without a virtual driver.

Where AirCheck fits

AirCheck is a thin, honest use of this API: a System Audio source that opens a ScreenCaptureKit stream at 48 kHz stereo, excludes its own playback, writes a 24-bit AIFF master and exports WAV 16-bit, WAV 24-bit or MP3 320 kbps. It needs macOS 14 or newer, the single Screen & System Audio Recording permission, and $39 once. A watchdog checks every 2 seconds and restarts the stream into the same file if buffers stop for 5 seconds.

When you do not need it: If you are a developer, you do not need AirCheck to use the API; Apple's sample code is enough. If you want per-app capture or a mic mixed in, Audio Hijack or Piezo use the same OS features with more routing.

AirCheck records what your Mac plays, or any input, to one file. $39 once.

Buy AirCheck for $39

macOS 14 or newer. One-off payment. Fourteen-day refund, no questions asked.

Questions people ask

Does ScreenCaptureKit work on Intel Macs?

Yes. The framework is part of macOS 12.3 and later on both Apple silicon and Intel. Audio capture needs macOS 13 or later; the hardware architecture does not matter, and the permission pane is the same on both.

Does ScreenCaptureKit audio capture the microphone?

Not by default. A system audio stream contains only what the Mac plays. Since macOS 15 an app can set captureMicrophone to add a mic, but the app must implement that; AirCheck does not.

Is ScreenCaptureKit audio lossless?

The stream is uncompressed PCM at 48 kHz stereo, so the recorder receives exactly what the mixer produced. Quality is capped by the source: a 128 kbps stream does not improve, it is just stored without further loss.

Why does my ScreenCaptureKit recording sound fine but Netflix is silent?

DRM-protected video services can withhold audio from screen and system capture. This is enforced by the platform and the service, not by the recorder, and no setting changes it. Standard streaming sites and meeting apps are unaffected.

Sources

Hannes Hennerbichler builds AirCheck and records his own DJ sets with it through a Focusrite Scarlett 8i6. Every step on this page was run on the macOS version stated above. Drafted with AI assistance, checked and edited by the author. About