Code Monkey home page Code Monkey logo

blackhole's Introduction

BlackHole: Audio Loopback Driver

BlackHole: Audio Loopback Driver

Platform: macOS Release License Twitter Facebook

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

Funding

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

Table of Contents

Features

  • Builds 2, 16, 64, 128, and 256 audio channels versions
  • Customizable channel count, latency, hidden devices
  • Customizable mirror device to allow for a hidden input or output
  • Supports 8kHz, 16kHz, 44.1kHz, 48kHz, 88.2kHz, 96kHz, 176.4kHz, 192kHz, 352.8kHz, 384kHz, 705.6kHz and 768kHz sample rates
  • Zero additional driver latency
  • Compatible with macOS 10.10 Yosemite and newer
  • Builds for Intel and Apple Silicon
  • No kernel extensions or modifications to system security necessary

Audio MIDI Setup

Installation Instructions

Option 1: Download Installer

  1. Download the latest 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
  • 64ch: brew install blackhole-64ch

Uninstallation Instructions

Option 1: Use Uninstaller

Option 2: Manually Uninstall

  1. Delete the BlackHole driver with the terminal command:

    rm -R /Library/Audio/Plug-Ins/HAL/BlackHoleXch.driver

    Be sure to replace X with either 2, 16, or 64.

    Note that the directory is the root /Library not /Users/user/Library.

  2. Restart CoreAudio with the terminal command:

    sudo launchctl kickstart -kp system/com.apple.audio.coreaudiod

For more specific details visit the Wiki.

User Guides

Logic Pro X

GarageBand

Reaper

Record System Audio

  1. Setup Multi-Output Device
  2. In Audio MIDI SetupAudio 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

Developer Guides

A license is required for all non-GPLv3 projects

Please support our hard work and continued development. To request a license contact Existential Audio.

Build & Install

After building, to install BlackHole:

  1. Copy or move the built BlackHoleXch.driver bundle to /Library/Audio/Plug-Ins/HAL
  2. Restart CoreAudio using sudo launchctl kickstart -kp system/com.apple.audio.coreaudiod

Customizing BlackHole

The following pre-compiler constants may be used to easily customize a build of BlackHole.

kDriver_Name
kPlugIn_BundleID
kPlugIn_Icon

kDevice_Name
kDevice_IsHidden
kDevice_HasInput
kDevice_HasOutput

kDevice2_Name
kDevice2_IsHidden
kDevice2_HasInput
kDevice2_HasOutput

kLatency_Frame_Size
kNumber_Of_Channels
kSampleRates

They can be specified at build time with xcodebuild using GCC_PREPROCESSOR_DEFINITIONS.

Example:

xcodebuild \
  -project BlackHole.xcodeproj \
  GCC_PREPROCESSOR_DEFINITIONS='$GCC_PREPROCESSOR_DEFINITIONS kSomeConstant=value'

Be sure to escape any quotation marks when using strings.

Renaming BlackHole

To customize BlackHole it is required to change the following constants.

  • kDriver_Name
  • kPlugIn_BundleID (note that this must match the target bundleID)
  • kPlugIn_Icon

These can specified as pre-compiler constants using xcodebuild.

driverName="BlackHole"
bundleID="audio.existential.BlackHole"
icon="BlackHole.icns"

xcodebuild \
  -project BlackHole.xcodeproj \
  -configuration Release \
  PRODUCT_BUNDLE_IDENTIFIER=$bundleID \
  GCC_PREPROCESSOR_DEFINITIONS='$GCC_PREPROCESSOR_DEFINITIONS
  kDriver_Name=\"'$driverName'\"
  kPlugIn_BundleID=\"'$bundleID'\"
  kPlugIn_Icon=\"'$icon'\"'

Customizing Channels, Latency, and Sample Rates

kNumber_Of_Channels is used to set the number of channels. Be careful when specifying high channel counts. Although BlackHole is designed to be extremely efficient at higher channel counts it's possible that your computer might not be able to keep up. Sample rates play a roll as well. Don't use high sample rates with a high number of channels. Some applications don't know how to handle high channel counts. Proceed with caution.

kLatency_Frame_Size is how much time in frames that the driver has to process incoming and outgoing audio. It can be used to delay the audio inside of BlackHole up to a maximum of 65536 frames. This may be helpful if using BlackHole with a high channel count.

kSampleRates set the sample rate or sample rates of the audio device. If using multiple sample rates separate each with a comma (,). For example: kSampleRates='44100,48000'.

Mirror Device

By default BlackHole has a hidden mirrored audio device. The devices may be customized using the following constants.

// Original Device
kDevice_IsHidden
kDevice_HasInput
kDevice_HasOutput

// Mirrored Device
kDevice2_IsHidden
kDevice2_HasInput
kDevice2_HasOutput

When all are set to true a 2nd BlackHole will show up that works exactly the same. The inputs and outputs are mirrored so the outputs from both devices go to the inputs of both devices.

This is useful if you need a separate device for input and output.

Example

// Original Device
kDevice_IsHidden=false
kDevice_HasInput=true
kDevice_HasOutput=false

// Mirrored Device
kDevice2_IsHidden=false
kDevice2_HasInput=false
kDevice2_HasOutput=true

In this situation we have two BlackHole devices. One will have inputs only and the other will have outputs only.

One way to use this in projects is to hide the mirrored device and use it behind the scenes. That way the user will see an input only device while routing audio through to the output behind them scenes.

Hidden audio devices can be accessed using kAudioHardwarePropertyTranslateUIDToDevice.

Continuous Integration / Continuous Deployment

BlackHole can be integrated into your CI/CD. Take a look at the create_installer.sh shell script to see how the installer is built, signed and notarized.

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 a virtual audio loopback 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?

See Setup a Multi-Output Device.

What bit depth does BlackHole use, and can I change it?

BlackHole uses 32-bit float bit depth since macOS Core Audio natively uses 32-bit at the system level. This provides the broadest compatibility and greatest audio headroom.

This format is lossless for up to 24-bit integer. All applications should be able to playback and record audio, and do not require adjusting bit depth at the BlackHole driver level.

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 PreferencesSecurity & PrivacyPrivacyMicrophone to make sure your digital audio workstation (DAW) application 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. See here for details.

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 also known as Master Device or Primary Device.

Why is the Installer failing?

  • Certain versions of macOS have a known issue where install packages may fail to install when the install package is located in certain folders. If you downloaded the .pkg file to your Downloads folder, try moving it to the Desktop and open the .pkg again (or vice-versa).

What Apps Don't Work with Multi-Outputs?

Unfortunately multi-outputs can be buggy and some apps won't work with them at all. Here is a list of known ones. If additional incompatible applications are found, please report them by opening an issue.

  • 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 this discussion for more details.

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 please contact Existential Audio directly.

blackhole's People

Contributors

alxarsenault avatar arialdomartini avatar blackbluegl avatar devinroth avatar henquist avatar jaegyunoh avatar leafac avatar mcnight avatar mvasilkov avatar orchetect avatar peterlewis avatar rex4539 avatar stephengroat avatar stevebanik avatar ts1 avatar virtustilus avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

blackhole's Issues

Multiple Input on Aggregate Device

Maybe I'm misunderstanding something.

Situation: In Skype I'd like to pick up form an USB-Mic and an application like QuickTimePlayer.

Skype is configured to use an Aggregate Device as its Microphone.

I can configure the Aggregate Device that it picks up the USB-Mic or the QuickTimePlayer, but never both!

Which one gets picked up depends on their order in the Aggregate Device config. Whatever is configured right after the Build-in Output gets taken.

In this case it is the Rode Podcaster Mic.

Screenshot 2020-02-11 at 18 27 46

Creating more channels?

Hi, I would love to use Blackhole with more output/input channels, however I have no experience with coding. I understand that I can only create more input/outputs when I change the code, but I don't know how to do that and I don't have Xcode. Is there a way I can create more channels? I need like 40. Thanks

Buffer Overflow when connecting, disconnecting, then connecting to BlackHole input again.

In Ableton, if I set the input to device to BlackHole for the first time it works great. If I set the input device to something else, then set the input device to BlackHole again, BlackHole crashes with a Buffer Overflow.

Ableton handles it gracefully and defaults to no input device. If you try to connect to it again it works fine. (maybe because BlackHole restarts?) But there is a crash every second time you try to reconnect to BlackHole input device.

The same thing happens when you connect to BlackHole input in Ableton, close Ableton, then open Ableton again (and it tries to reconnect to BlackHole as input).

This is reproducible with Audacity as well. (I have to run Audacity from terminal as sudo for some reason). The trick to reproduce with Audacity is to actually record BlackHole once, close and reopen Audacity, then record again.

Are we not cleaning memory properly when we stop IO?

Thanks for making this!

System Info:
MacOS Catalina 10.15.3
Audacity 2.3.3
Midi setup:
midi setup

Where is BlackHole.h ?...

Hey,

I'm really sorry to ask a question like this... I would like to increase the number of channel, possibly to 128 for my needs, and looks so simple in FAQ.

BlackHole.h is a file hide somewhere on my computer ? Or...

Thanks anyway !
GG

BlackHole and ffmpeg

Recording audio with ffmpeg through BlackHole works quite well, thanks for this!

I encounter one problem though: The second execution of ffmpeg does not work. There is 3 CTRL-C necessary to kill ffmpeg. It then responds with: Received > 3 system signals, hard exiting. After that, the next ffmpeg command does work, the ffmpeg after that not and so on.

Killing coreaudiod before the second ffmpeg does help too.

It happens only if audio is or was playing at the first ffmpeg command.

I tested ffmpeg version 4.2.2
You may test it using this command:

# Get input channel number for BlackHole device
ffmpeg -f avfoundation -list_devices true -i ""

# Record 2 seconds from i.e. input channel 0
ffmpeg -loglevel debug -f avfoundation -i :0 -t 2 test.mp3

-loglevel debug shows much, interesting is this:

First ffmpeg call:

...
[avfoundation @ 0x7f8843000000] audio device 'BlackHole 16ch' opened
[avfoundation @ 0x7f8843000000] All info found
...

Second ffmpeg call stops at audio device 'BlackHole 16ch' opened

Recording through other input channels like Built-in Microphone does work multiple times, as expected.

Any idea what may be wrong here?

Aggregate Output issue on Mojave-based Mac

Thank you for this brilliant work on BlackHole development... looks super interesting.
I've tried BlackHole on Mojave-based MacBook Pro (2018 15inch 10.14.6). It works if it's single-channel BlackHole output->BlackHole input, but it doesn't work if I use composite output composed of BlackHole output and headphones or speakers output. Is there any method to compose an aggregate output device with BlackHole in Audio MIDI Setup app?

No screenshots? No binary?

Hey!

If you want to become n°1 replacement for Soundflower then please add some screenshots... and maybe have a website with a binary? That would make the decision easier if I want to use/try/love it or not.

Cheers

distinction from Jack?

First off, I'm excited by this project, and look forward to experimenting with it. Thanks for putting it out there.

Could @devinroth speak to motivations for this project relative to the Jack connection kit? Is there something that this project offers (or will offer) that Jack does not?

Possible system badness from Blackhole

Hi Blackhole team,

Since installing blackhole (among other programs to be fair), I have had some system wide crashes where all applications shut down and my computer almost goes into total lock down where I cannot restart/shutdown manually but have to resort to sudo reboot.

I have been monitoring the issue for a while and found two crash logs which coincide time-wise with this crash event happening.

The logs are attached here:

crash1.txt
crash2.txt

It is entirely possible blackhole has nothing to do with this, but the crashes appear after the phase in which I moved from JACK to Blackhole and not before. Also, there is nothing else in my logs I can find related to the crash.

Would someone be able to have a look at this and investigate the possibility that Blackhole is doing something unintended?

Release v0.2.4 not working for me

The latest release v0.2.4 is not working for me. I'm using macOS Catalina. Tried installing and restarting a couple of times. ;)

The v0.2.3 release works though.

Changer le nombre de canaux

Bonjour et merci pour cette appli bien necessaire. Je voudrais utiliser Blackhole pour router 36 canaux audio. J'ai bien lu la notice qui propose de le faire mais je ne comprends pas la methode, en tout cas je ne trouve pas balckhole.h.
Pourriez vous m'éclaire svp
merci

Install failed on MacOS catalina 10.15.4 Beta

I run this command to install BlackHole.

brew cask install blackhole

Log

==> Purging files for version 0.2.6 of Cask blackhole
Error: Failure while executing; `/usr/bin/sudo -E -- /usr/bin/env LOGNAME=jimmysong USER=jimmysong USERNAME=jimmysong /usr/sbin/installer -pkg /usr/local/Caskroom/blackhole/0.2.6/BlackHole.v0.2.6.pkg -target /` exited with 1. Here's the output:
installer: Package name is BlackHole.v0.2.6
installer: Installing at base path /
installer: The install failed. (The Installer encountered an error that caused the installation to fail. Contact the software manufacturer for assistance. An error occurred while running scripts from the package “BlackHole.v0.2.6.pkg”.)
Follow the instructions here:
  https://github.com/Homebrew/homebrew-cask#reporting-bugs
/usr/local/Homebrew/Library/Homebrew/system_command.rb:176:in `assert_success!'
/usr/local/Homebrew/Library/Homebrew/system_command.rb:53:in `run!'
/usr/local/Homebrew/Library/Homebrew/system_command.rb:29:in `run'
/usr/local/Homebrew/Library/Homebrew/system_command.rb:33:in `run!'
/usr/local/Homebrew/Library/Homebrew/cask/artifact/pkg.rb:59:in `block in run_installer'
/usr/local/Homebrew/Library/Homebrew/cask/artifact/pkg.rb:65:in `with_choices_file'
/usr/local/Homebrew/Library/Homebrew/cask/artifact/pkg.rb:52:in `run_installer'
/usr/local/Homebrew/Library/Homebrew/cask/artifact/pkg.rb:34:in `install_phase'
/usr/local/Homebrew/Library/Homebrew/cask/installer.rb:218:in `block in install_artifacts'
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/set.rb:777:in `each'
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/set.rb:777:in `each'
/usr/local/Homebrew/Library/Homebrew/cask/installer.rb:209:in `install_artifacts'
/usr/local/Homebrew/Library/Homebrew/cask/installer.rb:101:in `install'
/usr/local/Homebrew/Library/Homebrew/cask/cmd/install.rb:22:in `block in run'
/usr/local/Homebrew/Library/Homebrew/cask/cmd/install.rb:16:in `each'
/usr/local/Homebrew/Library/Homebrew/cask/cmd/install.rb:16:in `run'
/usr/local/Homebrew/Library/Homebrew/cask/cmd/abstract_command.rb:36:in `run'
/usr/local/Homebrew/Library/Homebrew/cask/cmd.rb:92:in `run_command'
/usr/local/Homebrew/Library/Homebrew/cask/cmd.rb:158:in `run'
/usr/local/Homebrew/Library/Homebrew/cask/cmd.rb:123:in `run'
/usr/local/Homebrew/Library/Homebrew/cmd/cask.rb:9:in `cask'
/usr/local/Homebrew/Library/Homebrew/brew.rb:103:in `<main>'

Set up with BlackHole.v0.2.6.pkg also failed.

image

I have changed the Security & Privacy.

image

What do we have to change to change the name of the driver ?

Hi,

I build a 2 channels version of BlackHole with Xcode but it could be nice to rename the driver like "BlackHole(2ch)" to keep both the 16 channels and 2 channels.

So, what do we have to change in the code to achieve that ?

Thanks !

Best,

Jean

Does not work with Shazam

Hi there,
I am trying to let Shazam recognise songs as I play them (e.g., youtube compilations).

I successfully created a multi-output device with Built-in Audio (Master) and Blackhole (Drifted).
I did some tests and everything's fine (e.g., I am able to record on Logic Pro whatever I'm listening to).

However, Shazam seems to get no audio: it's not able to recognise even the most famous songs of all times.

Any thoughts? Am I missing something?

Channel configuration is not stored in Audio MIDI Setup

When I am configuring BlackHole's output as surround device (e.g. 5.1) in speaker configuration of macOS Audio MIDI setup, the channel order is not stored, it always goes back to 1:L , 2:R and other channels are not assigned. My OS is Sierra (10.12.6).

btw. BlackHole is awesome! Great job!

Multi-Output Device blocks tv decoder program (HDHomerun)

If the audio output is set to Headphones, HDHomerun (silicondust.com) works normally decoding video and audio.

If the audio output is set to BlackHole 16ch, HDHomerun starts up and decodes video, but audio is silent. I think this would be expected.

If the audio output is set to Multi-Output Device, HDHomerun is blocked and does not display the opening screens. To close the program I must use the menu Quit option as the "X" does nothing.

Screen Shot 2020-03-03 at 12 19 28 PM

Facetime no longer working

Hi, I'm on mac catalina, and the plug-in works perfectly for screen recording audio, but now I'm seeing an issue with it when I make or receive calls on my mac via FaceTime. I have the sound settings back to microphone and internal speakers, but I cannot hear calls and the caller can't hear me. Any thoughts?

Recording with Audacity

Hi,

I just installed v0.2.5 of blackhole and tried to record audio beside I wanted to hear it. Here are some points I setup to do so:

  1. Created a multi output device within the Audio-Midi-Setup with the primary device being set to the internal speakers - drift correction applied to BlackHole 16ch
  2. Started the system preferences for audio and set the input to BlachHole 16ch
  3. Started Audacity and set the recording device to BlackHole 16ch and the output to the multi output device

What I am facing is that in the system preferences the input is recording the signal correctly - I can see it right there, but Audacity is not recording anything.

Any Ideas what I made wrong?

Beside that I am using macOS 10.15.2, Audacity 2.3.3

Thanks a lot and kind regards

Note: QuickTime is recording the audio without any issues. Maybe it is related to Audacity but I just wanted to ensure.

Audio not routed from In to out

Hi, I'm trying to troubleshoot using BlackHole for some basic routing. I was struggling to get anything to route at all so I tested my setup using a trial version of AudioHijack.

I am routing like so:

Audio Interface -> Logic Track -> BlackHole Input 1

I would then like to send BlackHole Output 1 to another app (Mobius Looper). In AudioHijack the routing above all works, and I see levels for the interface and the BlackHole Input 1, but BlackHole Output 1 does not show any signal.

I'm not sure how it can be that BlackHole Input is not connected to BlackHole output, so I'd appreciate any thoughts for troubleshooting this! Screenshot below

Screenshot 2020-02-15 at 23 32 56

Thank you

Edit: I’m on Mojave and I also have Soundflower installed, will try removing that today to see if it affects.

OBS/Mac/Catalina Help

Hey all, so I don't know where down the workflow this is not working but I can't seem to get this to work with OBS.

For output device in OBS, Blackhole is not listed. OBS is listed as a microphone source in Privacy and Security.

Any help would be appreciated!

Does not seem to work with rack+garage band

I've installed it through brew. In rack I choose it as an output, and in garage band I add a new audio track and choose the first channel of black hole as an input. The output of the garage band is set as a multi output device which is made of default output and black hole. When I press record in garage band, I can not hear anything and neither does it record anything. Monitoring in garage band is turned on. What am I missing?
macOS Catalina

Having trouble recording system audio with Blackhole

Downloaded and installed but can't get system audio from Safari page to show up in Quicktime Player or Uniconverter (screen recorder tool) all inside Catalina 10.15.2

Really baffling. Under Mojave I had Soundflower working fine for this same function.

Any help is appreciated.

Thanks.

Able to record audio from Youtube/streaming audio, but not Google Hangouts or FaceTime

I'm trying to record the audio from a Google Hangout through Adobe Audition, but none of the input channels seem to be giving me anything. But, when I record audio from, say, YouTube, it records perfectly. I'm using a mic connected to a Scarlett 2i2 audio interface and the setup that I've gotten to work correctly is:

Audio MIDI Setup
Aggregate Device named Scarlett & BlackHole:
image

Multi-Output Device:
image

Sound
Input:
image

Output:
image

Audition Audio Hardware Settings
image

Audition Tracks
image

That's a recording of both my mic and youtube playing at the same time. If instead of Youtube, I try to record the sound coming from either a Google Hangout or Facetime, the levels are completely flat and nothing records.

I've also included Built-In Output in the agg and multi-out setups as per the wiki instructions, but I still get no audio recording regardless.

The one thing that I found strange is the naming of the Scarlett Inputs in Audition.
image

Its labeled as BlackHole 16ch Input 1 and 2? It doesn't affect anything with the youtube recording, and I've tried using the BlackHole inputs 3-16 but no sound goes in or comes out when I use them. I'm new to all of this so I'm not positive if I'm screwing up somewhere.

Question about Screen Recording

Found this project when trying to use SoundFlower on Catalina. Thanks for developing!

Is it possible to use BlackHole to record audio when record screen using system recording tool (QuickTime Player) and also can listen to system audio from speaker? Currently I have to set output as BlackHole in both Sound and Screen Recording to record system audio. But I can not hear system audio under this situation.

Compared to other screen recording tools like Snagit and ScreenFlow, I found they both have slight latency in sound for recording system audio. There is no latency when using BlackHole with QuickTime. However, can not listen to audio is a problem.

BlackHole is not showing up anywhere.

BlackHole is not showing up in preferences. Do I have to disable System Integrity Protection?
I am using macOS 10.15.2.

Any idea why It's not working?

Blackhole latency and glitching

Hi, Cool that you have built this. well done!

I've been trying it out, feeding 8 channels of Traktor DJ output (4 stereo pairs) into blackhole and then picking them up Ableton to play alongside prerecorded tracks from Ableton. I'm finding the Trakor tracks via Blackhole have a greater latency doing this than using the equivalent loopback feature on my RME soundcard. I don't always have my sound card available so it would be great to have the option to use this. Any idea why this is?

I also get quite bad glitching after a while. Is this to do with the clocking issue raised in #27? ie the "blackhole" input interface is not synced to the "internal audio" output interface of my macbook in Ableton?

Best, Tom

Catalina , Apple Music not working

I followed the instructions and can't seem to get this working. I noticed when setting "Use this device for Sound Output" on the Multi-Output Device, Apple Music, YouTube (in Chrome), and Quicktime player won't even play. Youtube videos even stop when switching to this output while playing. And i can't press play to resume. The scrubber on the timeline doesn't even move. Its almost as if macOS knows what we are trying to do and stops anything from working. haha. Both garage band and Logic have access to the microphone in system preferences. Not sure what else I could try.
Screen Shot 2020-02-11 at 7 21 02 PM
Screen Shot 2020-02-11 at 7 20 50 PM

Audacity 2.3.2.

I cannot get the audio from BlackHole into Audacity. I followed all instruction and selected BlackHole as the recording device but no audio is entered. Any suggestions?

blackhole volume control

Hi

Firstly, thanks for making this wonderful driver.

I have one question: I am unable to manipulate the volume when i route audio via blackhole. What's the trick?

The volume level slider has no effect on the output stream either via the finder menu bar or the Audio Midi Setup app.

When I used Soundflower previously the volume level slider worked which was quite convenient.

2ch and 16ch version can't coexist ?

He,

I'm trying to compile again a two channels version of BlackHole by following the wiki instructions.
The compilation succeed. So I changed the name of the folder and copy it in the right folder next to the 16ch version as what did in November.

But after the "sudo killall coreaudiod" command I find just one BlackHole with a strange mix regarding the name on the left which displays 16 channels and the number of in/out on the right.

Can you help please ?

Best regards,

Jean

Capture d’écran 2020-03-17 à 15 20 20
Capture d’écran 2020-03-17 à 15 20 50

Sample rate not set by application?

BlackHole doesn't seem to set the sample rate based on the actual stream as requested by an application, or at least it doesn't show it on the MIDI panel. Tested with Audacity and IINA player. Verified with IINA player -> Hecate USB SPDIF out card -> Roland Quad Capture SPDIF input, Roland MIDI panel shows the correct input sample rate.
A test program that reads an input stream from the Blackhole inputs and displays the actual audio sample rate would be greatly appreciated. Test case would be a) launch test program with nothing playing and Blackhole mnually set to 48KHz, b) play a 96KHz file and verify that the sample rate is correct, c) play a 192KHz file and verify that the sample rate changes to the correct value.

Not working for audacity

After installing BlackHole (followed instructions including restart), I set all my input/output to blackhole, and tried recording from audacity, but it's a flatline. I changed the audio settings to BlackHole in both the system settings and audacity. I am seeing that it is successfully routing through because macOS is registering an input through BlackHole, but it doesn't seem to extend to audacity.
I have tried the following:

  1. Restart audacity
  2. Turn Transport Options > Software Playthrough on/off.

Any thoughts? I'm assuming this should work with any DAW. I'm going to try reinstalling Audacity. Otherwise I might have to wait for Soundflower to add Catalina support.

Install Catalina

Catalina says won't let me install because might be malware, what's the work around?

BlackHole gets forgotten

Hi, I love your piece of work. I'm using is to route audio from Ableton Live to my own application written in cycling 74 Max. It works perfect. When I quit all applications and restart them all audio is still routed from one to the other application. But when I close the lid of my macbook Live forgets BlackHole was the selected audio output device. So I tried making an aggregated audio device with just BlackHole in this device selected, but then still Live forgets this Aggregated device when I close the lid. I'm letting other people work with this setup who are not aware live's in the background. You can imagine I don't want to send them to the live preferences every time they close the lid of their Macbook. I'm on a late 2019 16" Macbook Pro which shipped with Catalina (10.15.3)

FYI I also posted this question with Ableton.

But again, what great work have you done!

Support loopback?

In windows, we can capture audio directly from speaker, anyway to do it by BlackHole?

I'm lost...can you support me?

I have blackhole downloaded and installed on Mac OS 10.15. First off should there be an application in the apps folder? I have played around and set Audio Midi Setup yet I'm not sure things are working properly. I am trying to record auto from a video online and it still the sound still have that low echo type sound to it. I played around with Audio Hijack and when doing so the sound came out clear...I was under the impression this would be aiming to do that same sort of thing...Can anyone support me with this?

BlackHole disappears

I've tried to install BlackHole: it puts up a dialogue saying it installed successfully, but I can't find it anywhere. This is on Catalina, 10.15.1

Any ideas?

Regards,
David

Where are the number of channels suppose to appear ?

Hi,

I just tried to build a 2ch version with the instructions on the Wiki. Finally the two devices are visibles but they are named "BlackHole 1 " & "BlackHole 2".

So no number of channels in the name. Is it normal ?

I used Xcode 10 on High Sierra..

Jean

Not finding BlackHole software

I tried to install BlackHole few times, but I can't find the software anywhere on my computer. Is the installation failing or maybe I missed something.
Any ideas ?

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.