View Issue Details
|ID||Category||Date Submitted||Last Update|
|0007829||bugs||2019-10-23 09:03||2019-10-24 20:53|
|Platform||x86_64||OS||macOS||OS Version||10.15 Catalina|
|Fixed in Version|
|Summary||0007829: No input signal from audio hardware on macOS 10.15 Catalina|
|Description||Something in the most recent release of macOS breaks Ardour's recording capabilities from audio hardware via CoreAudio. While all the required input devices and channels are still visible and useable in a session, Ardour's meters do not show any input signal at all from the selected input device. When hitting the record button, Ardour just records silence.|
|Steps To Reproduce||1. Open Ardour.|
2. Load a session or create a new one.
3. In the subsequent Audio/MIDI Setup dialog, set Audio System to CoreAudio and Input Device to any audio hardware properly connected to the machine.
4. Start the Audio System and wait for Ardour to load the session.
5. Choose or create an audio track and set the track's INPUT to receive audio from the chosen hardware device (which should be system:capture).
6. Watch Ardour not getting any signal from the audio device.
|Additional Information||I tested the above steps on multiple Macs running different versions of MacOS. I did a fresh install of Ardour and used all default values from Ardour's first run wizard to make sure it's not a configuration fault or a machine-specific error.|
For audio hardware, I used a microphone connected to a Focusrite Scarlett 2i2 USB and then plugged that into the Mac in each case. The Scarlett has a physical meter on its front panel so I was able to make sure I actually get a signal from the microphone. In addition, I tried recording from the Mac's built-in microphone.
To sum up the results: With identical configurations for both Ardour and the audio hardware, recording works flawlessly out of the box on every system NOT running macOS 10.15 Catalina. Also, recording in Catalina does work with other software like Quick Time Player, Audio Hijack, Garage Band and Logic Pro.
inspired by https://forum.audacityteam.org/viewtopic.php?f=47&t=107162
open a terminal (search for "Terminal" in spotlight or go to Applications > Utilities
run `open /Applications/Ardour5.app`
No, this won't work with Ardour. First off, the linked forum post doesn't suggest to run the app bundle from terminal, but the binary inside the app bundle. If anything, that would be: open /Applications/Ardour5.app/Contents/MacOS/Ardour5. This however won't start Ardour, but output the following in Terminal (irrelevant lines stripped):
ARDOUR_DATA_PATH not set in environment
Cannot find ArdourMono TrueType font
Cannot load ArdourMono TrueType font.
bind txt domain [gtk2_ardour5] to /usr/local/share/ardour5/locale
Ardour5.12.0 (built using 5.12 and GCC version 4.2.1 (Apple Inc. build 5664))
ARDOUR_CONFIG_PATH not set in environment
ARDOUR_DLL_PATH not set in environment - exiting
On IRC, I got the advice to run the shell script rather than the binary. Since there is only one shell script inside Ardour's app bundle, I suspect that would be /Applications/Ardour5.app/Contents/lib/ardour-util.sh. Unfortunately, I had no luck with this either. Running the script from the terminal makes it run indefinitely without starting Ardour. I have to manually abort the script to get the prompt back. If I get this correctly, the shell script is what gets executed when starting Ardour the usual way, so I'm not sure how this would be any different from running the script manually. I didn't have time yet to examine the contents of the script to see what it actually does.
/Applications/Ardour5.app/Contents/MacOS/Ardour5 is a shell script wrapper you could launch it as follows:
but just using `open /Applications/Ardour5` or `open /Applications/Ardour5.app` should do the trick.
In any case, chances are that this Catalina issue is fixed in tomorrow's nightly build, Ardour 6.0-pre0-2638-g7f11d13c8a (or later) should be available in 5-7 hours from now at https://nightly.ardour.org/
PS. It seems that the shell script wrapper was the cause of the issue. The shell script sets up some environment variables and then runs`Ardour.bin`. It seems that if the Application-name does not match the binary name, there won't be a dialog "Ardour6 would like to use the mic.."
That's actually great news. Using
fixes the problem for me while the other terminal command didn't. `open /Applications/Ardour5` returns a "file does not exist" error; `open /Applications/Ardour5.app` starts Ardour but does not fix input silence, meaning it behaves just as if it had been started the usual (non-terminal) way; and using the shell script wrapper without the "ARDOUR_BUNDLED=1" argument results in the terminal output described above (without starting Ardour). Indeed this is just what happens on my main workstation; I'd have to try this on the other Catalina Macs as well to see if it's just me who can't get the more simple commands to work.
I'm happy to report that the current nightly (which is 2640-gaaae93c at the time of writing) does indeed fix the problem. Ardour properly triggers the macOS permission dialog at first run ("Ardour wants to access you microphone") and then lets me record audio just as it used to. Many thanks for the fix.
|2019-10-23 09:03||saltedcoffee||New Issue|
|2019-10-23 09:03||saltedcoffee||Tag Attached: OSX|
|2019-10-23 09:03||saltedcoffee||Tag Attached: record|
|2019-10-23 15:27||x42||Note Added: 0020790|
|2019-10-23 16:06||x42||Note Edited: 0020790||View Revisions|
|2019-10-23 18:29||saltedcoffee||Note Added: 0020791|
|2019-10-23 23:51||x42||Note Added: 0020792|
|2019-10-24 20:53||saltedcoffee||Note Added: 0020793|