# ExistentialAudio/BlackHole

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/existentialaudio-blackhole).**

18,426 stars · 760 forks · C · gpl-3.0

## Links

- GitHub: https://github.com/ExistentialAudio/BlackHole
- awesome-repositories: https://awesome-repositories.com/repository/existentialaudio-blackhole.md

## Topics

`audio` `driver` `loopback` `macos` `virtual-audio-cable`

## Description

BlackHole is a system-level virtual audio driver designed for macOS that enables real-time routing of digital audio signals between applications and hardware. By functioning as a kernel-level extension, it creates a virtual loopback interface that allows users to transfer sound streams across software environments without the need for physical cables or external hardware.

The software distinguishes itself through its ability to aggregate multiple physical and virtual audio sources into a single, unified interface. This abstraction layer supports complex signal management, including the mirroring of audio outputs for simultaneous recording, monitoring, or broadcasting across different software tools. It ensures signal integrity through synchronous clock alignment, which matches the timing of virtual streams to hardware clocks to prevent drift.

Beyond basic routing, the project provides comprehensive management of audio stream properties, including bit depth, sample rates, and channel counts. Users can configure driver parameters and manage gain levels directly on virtual channels to meet specific production requirements. The software also includes command-line utilities to facilitate the lifecycle management of the driver, including uninstallation and the clearing of routing configurations.

## Tags

### Development Tools & Productivity

- [Audio Routing Utilities](https://awesome-repositories.com/f/development-tools-productivity/macos-utilities/audio-routing-utilities.md) — Provides a virtual audio driver for routing and aggregating digital audio signals across macOS applications.

### System Administration & Monitoring

- [CoreAudio Virtual Devices](https://awesome-repositories.com/f/system-administration-monitoring/virtual-device-drivers/coreaudio-virtual-devices.md) — Acts as a system-level audio driver enabling real-time signal mirroring and synchronization.
- [Audio Loopback Drivers](https://awesome-repositories.com/f/system-administration-monitoring/virtual-device-drivers/audio-loopback-drivers.md) — Implements a kernel-level virtual audio loopback driver for real-time signal routing between applications and hardware.

### Artificial Intelligence & ML

- [Virtual Audio Loopbacks](https://awesome-repositories.com/f/artificial-intelligence-ml/machine-learning/infrastructure/model-optimization-and-inference/hardware-and-acceleration/hardware-abstraction-layers/audio-hardware-interfaces/virtual-audio-loopbacks.md) — Creates a persistent signal path between disparate applications by mimicking physical hardware ports.
- [Audio Aggregators](https://awesome-repositories.com/f/artificial-intelligence-ml/machine-learning/infrastructure/model-optimization-and-inference/hardware-and-acceleration/hardware-abstraction-layers/device-abstraction-layers/audio-aggregators.md) — Merges multiple physical and virtual audio sources into a single unified interface.

### Graphics & Multimedia

- [Kernel Audio Drivers](https://awesome-repositories.com/f/graphics-multimedia/audio-music/audio-plugin-architectures/kernel-audio-drivers.md) — Intercepts and redirects digital audio streams directly within the operating system kernel.
- [Audio Processing](https://awesome-repositories.com/f/graphics-multimedia/audio-music/audio-processing.md) — Transfers digital audio signals between different software applications in real-time.
- [Inter-Application Audio Routing](https://awesome-repositories.com/f/graphics-multimedia/audio-music/audio-processing/inter-application-audio-routing.md) — Enables real-time transfer of digital audio signals between software applications without physical hardware. ([source](https://github.com/ExistentialAudio/BlackHole#readme))
- [Synchronous Audio Streams](https://awesome-repositories.com/f/graphics-multimedia/media-processing-analysis/media-manipulation/media-processing-workflows/stream-content-distribution/synchronous-audio-streams.md) — Synchronizes internal driver timing with external devices to ensure consistent playback. ([source](https://github.com/ExistentialAudio/BlackHole/blob/master/CHANGELOG.md))
- [Audio Signal Mirroring](https://awesome-repositories.com/f/graphics-multimedia/audio-music/audio-recording/audio-signal-mirroring.md) — Supports creating secondary virtual devices that share signals for simultaneous recording or broadcasting. ([source](https://github.com/ExistentialAudio/BlackHole#readme))
- [Audio Processing Systems](https://awesome-repositories.com/f/graphics-multimedia/media-processing-analysis/audio-processing-systems.md) — Configures custom channel counts and sample rates for high-fidelity routing between workstations and applications.

### Networking & Communication

- [Audio Management Systems](https://awesome-repositories.com/f/networking-communication/audio-management-systems.md) — Aggregates multiple input and output sources into a single virtual interface for simplified routing. ([source](https://github.com/ExistentialAudio/BlackHole/blob/master/CHANGELOG.md))
- [Audio Signal Mirroring Systems](https://awesome-repositories.com/f/networking-communication/audio-management-systems/audio-signal-mirroring-systems.md) — Creates secondary virtual audio paths to duplicate output signals for simultaneous monitoring or broadcasting.
- [Audio Stream Property Controls](https://awesome-repositories.com/f/networking-communication/audio-management-systems/audio-stream-property-controls.md) — Allows modification of bit depth, sample rates, and channel counts for specific production requirements. ([source](https://github.com/ExistentialAudio/BlackHole/blob/master/CHANGELOG.md))

### Operating Systems & Systems Programming

- [Audio Clock Synchronizers](https://awesome-repositories.com/f/operating-systems-systems-programming/system-administration-maintenance/system-clock-utilities/audio-clock-synchronizers.md) — Matches the sample rate and phase of virtual streams to hardware clocks to prevent signal drift.
- [Audio Volume APIs](https://awesome-repositories.com/f/operating-systems-systems-programming/audio-volume-apis.md) — Provides programmatic control over audio gain levels for complex hardware setups. ([source](https://github.com/ExistentialAudio/BlackHole/blob/master/README.md))
- [Virtual Audio Gain Controls](https://awesome-repositories.com/f/operating-systems-systems-programming/virtual-audio-gain-controls.md) — Provides controls to regulate gain levels and silence states directly on virtual channels. ([source](https://github.com/ExistentialAudio/BlackHole/blob/master/CHANGELOG.md))

### Software Engineering & Architecture

- [Audio System Abstractions](https://awesome-repositories.com/f/software-engineering-architecture/integration-abstraction-layers/audio-system-abstractions.md) — Implements host operating system audio abstraction layers to ensure compatibility with system-wide routing.

### DevOps & Infrastructure

- [Audio Driver Configurations](https://awesome-repositories.com/f/devops-infrastructure/embedded-hardware-drivers/audio-driver-configurations.md) — Allows configuration of channel counts, sample rates, and latency to match hardware requirements. ([source](https://github.com/ExistentialAudio/BlackHole#readme))
