Setting up Zoom on a Mac with Sonic Pi using free additional software.
You can use commercial programs like Rogue Amoeba’s LoopBack or their Audio Hijack program, and these are very quick and easy to use, but are expensive. Alternatively, you can download one of three free loopback drivers and set them up to do the same job. It is a bit fiddlier to do so, but ends up with a system that works well and is free.
For the Zoom audio settings use Built in Output for speaker and Built in microphone for the microphone setting.
You will need to use the ZoomAudioDevice driver. This is automatically set up the first time you share a Zoom screen if you “Share computer sound”. This will ensure that Zoom installs the Zoom Audio Device. After that it will appear in the Audio MIDI setup app in the Audio Devices window.
The Zoom Audio Settings preference window is shown below. You can use Built in Microphone and Built in Output as shown.
You will need to install any one of sound flower (2 channel) or Blackhole (16 channel) or iShowU Audio Capture device drivers.
SoundFlower is quite old and Blackhole is probably a better more up to date driver. I was using Mac OS Catalina and used these install locations to install them all!
You can use https://github.com/mattingalls/Soundflower/releases/tag/2.0b2
Or http://existential.audio/blackhole/
Or https://downloads.shinywhitebox.com/driver/catalina
Having installed the driver you wish to use. make sure that at this stage Sonic Pi is NOT running. This is because it grabs the current input and output settings as it starts, and gets upset if they change whilst it is running.
Start up a Zoom Meeting. (You don’t need any additional participants at this stage, although it is useful to add say your phone or tablet as a single additional meeting member for testing purposes. I advise in that case using headphones on the Mac if they are in the same room.
Start Audio MIDI Setup (which you can find with SpotLight) and select the Audio Devices window.
Set default output to Built in Output and default input to built in microphone initially.
Use the + sign at the bottom of the window to create a multi output device.
This should automatically become the selected output device, and when you click on it, it will show a list of available output devices from which a selection can be made.
First set the Sample rate to 48Khz This is the fixed rate at which the ZoomAudioDevice works and everything else should be set to match this. It is worth going down the list of devices and selecting 48KHz for all of them.
Now select the capture device you have added. I used BlackHole
Also select ZoomAudioDevice**. I set both of these to drift correction, leaving Built-in Output untagged.
Now set your capture device (Blackhole, Soundflower or iShowU as the default input in the Audio devices window. By right clicking on its icon and choosing use this device for input.
**If ZoomAudioDevice is not present then start up a share screen in Zoom with Use Computer Audio selected. This should load it. Quit the screen once it is available in the list.
Now start up Sonic PI. If you start it playing, you should initially be able to hear it on the Mac.
Now start a shared screen and share the Sonic PI window. Make sure that Share Computer Sound is ticked.
All being well you should be able to hear Sonic Pi in your phone (the additional meeting member). Also you should be able to talk using the built in microphone.
Note when in shared screen mode with Share Computer sound selected the output shown in the Audio Devices window automatically switches to ZoomAudioDevice. It switches back again when the sharing is stopped.
You can adjust the Mac volume using the Speaker slider in the Zoom audio settings window.
Also I suggest auto settings for the Mic output in the same window.