GithubHelp home page GithubHelp logo

classicvalues / blackhole Goto Github PK

View Code? Open in Web Editor NEW

This project forked from existentialaudio/blackhole

1.0 0.0 0.0 8.59 MB

BlackHole is a modern macOS virtual audio driver that allows applications to pass audio to other applications with zero additional latency.

License: GNU General Public License v3.0

C 100.00%

blackhole's Introduction

BlackHole: Virtual Audio Driver

Platform:macOS GitHub GitHub Build Status Twitter Facebook

BlackHole is a modern MacOS virtual audio driver that allows applications to pass audio to other applications with zero additional latency.

Download Installer

Funding

Sponsor: https://github.com/sponsors/ExistentialAudio

Table of Contents

Features

  • Supports 2, 16 or 64 audio channels versions.
  • Customizable to 256+ audio channels.
  • Supports 44.1kHz, 48kHz, 88.2kHz, 96kHz, 176.4kHz, and 192kHz sample rates.
  • No driver latency.
  • Compatible with macOS Mavericks (10.9) to macOS Big Sur (11).
  • Built for Intel and Apple Silicon.

Image of BlackHole Audio Driver

Installation Instructions

Option 1: Download Installer

  1. Download Installer
  2. Close all running audio applications
  3. Open and install package

Option 2: Install via Homebrew:

  • 2ch: brew install blackhole-2ch
  • 16ch: brew install blackhole-16ch

Uninstallation Instructions

Option 1: Use Uninstaller

Option 2: Manually Uninstall

  1. Delete BlackHoleXch.driver by running rm -R /Library/Audio/Plug-Ins/HAL/BlackHoleXch.driver NOTE: The directory is in /Library not user/Library and be sure to replace X with either 2 or 16
  2. Restart CoreAudio with terminal command sudo launchctl kickstart -kp system/com.apple.audio.coreaudiod

For more specific details visit the wiki.

Advanced Customization and Installation

There are a number of options available to customize BlackHole including number of channels, names, running multiple drivers, and latency. Visit the Wiki for details.

Guides

Logic Pro X

GarageBand

Reaper

Record System Audio

  1. Setup Multi-output Device
  2. In Audio Midi Setup->Audio Devices Right-click on the newly created Multi-output and select "Use This Device For Sound Output"
  3. Open digital audio workstation (DAW) such as GarageBand and set input device to "BlackHole"
  4. Set track to input from channel 1-2
  5. Play audio from another application and monitor or record in your DAW.

Route Audio Between Applications

  1. Set output driver to "BlackHole" in sending application
  2. Output audio to any channel
  3. Open receiving application and set input device to "BlackHole"
  4. Input audio from the corresponding output channels

Feature Requests

If you are interested in any of the following features please leave a comment in the linked issue. To request a features not listed please create a new issue.

FAQ

Why isn't BlackHole showing up in the Applications folder?

BlackHole is an audio interface driver. It only shows up in Audio MIDI Setup, Sound Preferences, or other audio applications.

How can I listen to the audio and use BlackHole at the same time?

Setup a Multi-Output Device

How can I change the volume of a Multi-Output device?

Unfortunately macOS does not support changing the volume of a Multi-Output device but you can set the volume of individual devices in Audio MIDI Setup.

Why is nothing playing through BlackHole?

  • Check System Preferences -> Security & Privacy -> Privacy -> Microphone to make sure your digital audio workstation (DAW) has microphone access.

  • Check that the volume is all the way up on BlackHole input and output in Audio Midi Setup.

  • If you are using a multi-output device, due to issues with macOS the Built-in Output must be enabled and listed as the top device in the Multi-Output. https://github.com/ExistentialAudio/BlackHole/wiki/Multi-Output-Device#4-select-output-devices

Why is audio glitching after X minutes when using a multi-output or an aggregate?

  • You need to enable drift correction for all devices except the clock source device.

What Apps Don't Work with Multi-Outputs?

Unfortunately multi-outputs are pretty buggy and some apps just won't work with them at all. Here is a list of known ones. If you have more to add please let me know.

  • Apple Podcasts
  • Apple Messages
  • HDHomeRun

AirPods with an Aggregate/Multi-Output is not working.

The microphone from AirPods runs at a lower sample rate which means it should not be used as the primary/clock device in an Aggregate or Multi-Output device. The solution is to use your built-in speakers (and just mute them) or BlackHole 2ch as the primary/clock device. BlackHole 16ch will not work as the primary since the primary needs to have 2ch.

Read the discussion. ExistentialAudio#146

Can I integrate BlackHole into my app?

BlackHole is licensed under GPL-3.0. You can use BlackHole as long as your app is also licensed as GPL-3.0. For all other applications contact me directly at [email protected].

blackhole's People

Contributors

arialdomartini avatar classicvalues avatar devinroth avatar imgbotapp avatar mend-bolt-for-github[bot] avatar mvasilkov avatar peterlewis avatar stephengroat avatar stevebanik avatar ts1 avatar tsadoq avatar virtustilus avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.