It doesn't seem like the maximum of the measurement setup, but in theory it correctly reflects the difference between the Mac clock and the Motu clock.
REW seems to apply a filtering to the calculation so the indicated fluctuation could be smoother than real one, but the fact that it fluctuates remains (I am coding a script in C to measure outside of REW however).
I checked the Blackhole source code and it works with mach_absolute_time that is the most accurate timer in Mac. Furthermore it does not seem to make some dynamic adjustments in the request for samples. In any case, even if it were, the fluctuation would also appear with the built-in speaker, but no.
On the other hand, the way Motu handles USB timing is unknown. It is not taken for granted that it directly corresponds with the clock of AD/DA stages.
But if this were not the case, the Core Audio Clock Drift Correction principle would be slightly flawed. Or rather, it would not be recommended to opt for the MK5 clock source in this case.
We will clearly not distinguish a few ppm of drift in an audio signal, jitter audibility threshold should be 20ns (but depends on jitter type) and here I have about 0,01ns if I calculate correctly... so that's irrelevant.
But technically it leaves me perplexed.
I can't determine which is the most reliable configuration this way... I would need a good level adc like cosmos (I don't know the phase noise it has however) or oscilloscope to verify with greater certainty. But it seems too strange to me that the Mac's built-in speaker clock is more stable than the Motu.
Maybe @mdsimon2 can do a check?
www.audiosciencereview.com
www.audiosciencereview.com
Maybe Motu not happy with their ranking here and want to claim top spot
They have representatives hanging out on that forum so I'm sure they actually do care.
I use the aggregate to take Apple Music's 7.1.4 Atmos audio and send it to Reaper to apply DSP before sending it to speakers.What is your use case for Blackhole? It sounds like you are just using it as an input to the Mk5 so I wouldn't expect drifting to really be a concern (unlike a crossover from drift corrected outputs). I imagine you would see similar drifting with any sort of clock domain bridging such as rate adjust in CamillaDSP.
The problem is that it olny has 2 loopback channels...Have you tried the Mk5 internal loopback? In my experience it does not drift, shows 0 ppm in REW and can use rectangular windowing.
that's what I was trying to do by editing the blackhole source code but I was not able (adjust the blackhole clock according to the USB interrupt of the MK5).CamillaDSP indicates that pitch control has been implemented in Blackhole since 0.5.0 -> https://github.com/HEnquist/camilladsp/blob/master/backend_coreaudio.md. This feature adjusts the rate of the virtual clock and involves no resampling.
I installed Blackhole-16 on my Mac and pitch control seems to work perfectly. When I start CamillaDSP I get a message saying, "The capture device supports pitch control" and the Blackhole clock source in Audio MIDI setup changes from Internal Fixed to Internal Adjustable.
In CamillaDSP I see slight adjustments to rate adjust factor (0.99999 to 1.00001) and the buffer level seems stable around my target level. With a setup of Blackhole -> CamillaDSP -> Mk5 analog out -> Mk5 analog in, I get 0.0 ppm clock drift in REW and can use rectangular windowing.
Does Reaper have the ability to adjust the Blackhole clock? If not, I might consider switching to CamillaDSP if you want to avoid the Core Audio resampling related to drift correction.
Michael
No need to use anything other than Core Audio (and Blackhole).
Download and unpack a precompiled binary (camilladsp-macos-amd64.tar.gz or camilladsp-macos-aarch64.tar.gz, depending on if you have an Intel (AMD64) or ARM (aarch64) Mac). I usually move binary to /local/bin/ so I can run it from terminal by just typing camilladsp. The base installation assumes you have ~/camilladsp/coeffs/ and ~/camilladsp/configs/ directories to store configuration files and FIR coefficients.
There is also a web-based GUI. Install that by downloading and unpacking the bundle (bundle_macos_intel.tar.gz or bundle_macos_aarch64.tar.gz). I usually unpack the bundle to /opt/ and use it by running /opt/camillagui_backend/camillagui_backend in the terminal.
To run camilladsp with the GUI, I typically run camilladsp -s ~/camilladsp/statefile.yml -w -g-40 -p 1234 in the terminal.
"-s ~/camilladsp/statefile.yml" tells it you are using a statefile which will point to the configuration you apply in the GUI
"-w" tells it to wait for a configuration from the GUI
"-g-40" applies a -40 dB gain to start, you can delete this if you don't want any attenuation applied at startup or change to something else
"-p 1234" tells it use port 1234 for the websocket server (default for the GUI)
To access the gui, point your browser to http://hostname:5005 can also use IPADDRESS:5005.
If you want it running all the time you can automate using a plist.
If you want automatic sample rate switching, take a look at camilladsp controller -> https://github.com/HEnquist/camilladsp-controller, but I would explore this once you have a basic setup working.
Michael
From an initial test it seems very nice, although cumbersome. In my case, however, it seems that it cannot replace Reaper, since cannot load plugins, perform automations or use MIDI controllers.No need to use anything other than Core Audio (and Blackhole).
Download and unpack a precompiled binary (camilladsp-macos-amd64.tar.gz or camilladsp-macos-aarch64.tar.gz, depending on if you have an Intel (AMD64) or ARM (aarch64) Mac). I usually move binary to /local/bin/ so I can run it from terminal by just typing camilladsp. The base installation assumes you have ~/camilladsp/coeffs/ and ~/camilladsp/configs/ directories to store configuration files and FIR coefficients.
There is also a web-based GUI. Install that by downloading and unpacking the bundle (bundle_macos_intel.tar.gz or bundle_macos_aarch64.tar.gz). I usually unpack the bundle to /opt/ and use it by running /opt/camillagui_backend/camillagui_backend in the terminal.
To run camilladsp with the GUI, I typically run camilladsp -s ~/camilladsp/statefile.yml -w -g-40 -p 1234 in the terminal.
"-s ~/camilladsp/statefile.yml" tells it you are using a statefile which will point to the configuration you apply in the GUI
"-w" tells it to wait for a configuration from the GUI
"-g-40" applies a -40 dB gain to start, you can delete this if you don't want any attenuation applied at startup or change to something else
"-p 1234" tells it use port 1234 for the websocket server (default for the GUI)
To access the gui, point your browser to http://hostname:5005 can also use IPADDRESS:5005.
If you want it running all the time you can automate using a plist.
If you want automatic sample rate switching, take a look at camilladsp controller -> https://github.com/HEnquist/camilladsp-controller, but I would explore this once you have a basic setup working.
Michael
Anyway, I remain with the initial doubt... that is, if the fluctuation of USB clock is also present on the DA-AD stage of the MK5. I repeat, the strange thing is that the built-in speakers from Mac do not present any fluctuations.
Why did Motu raise the price tho?
I bought mine on Feb 2023 for $595, then a few months later they raised the price to $650 for NO reason, nothing changed or was added
![]()
That test is entirely based on frequency response (magnitude / phase). DC roll-off will have a huge impact on the results as shown in the plot below (source = https://gearspace.com/board/showpost.php?p=15781315&postcount=2490).
To prove this point further, I was able to improve the Mk5 null from -46 dB to -86 dB by applying EQ and could probably do better with more optimization.
https://gearspace.com/board/showpost.php?p=16909795&postcount=2914
Regarding -46dB, was that using front mic input or rear line input?To prove this point further, I was able to improve the Mk5 null from -46 dB to -86 dB
You can filter results for analysis to only be 20-20kHz, to remove DC issues.
Better not to use EQ if you want to see the performance 'as is'
Definitely worth filtering analysis to 20-20kHz though
Regarding -46dB, was that using front mic input or rear line input?
I found rear line input to be better than front mic input
Since I do room correction measurements, I am more interested in testing loopback with front mic input
I also thought that they had the same clock, but in that case I see impossible the constant 5ppm drift measured by REW.The most straight forward explanation is that Blackhole and the internal DAC use the same clock internal to the Mac.
I've tried drift correction on a few different aggregate devices and there are always some fluctuations if they have different clocks.
Michael
Anybody else see this noise with mic input? It is not there in rear TRS input.
Nothing significantly obviously but just asking if others seen it
Front mic input - noise around the 8kHz area. It shows in all measurements, not just this multitone
View attachment 441857
Rear TRS input - no noise
View attachment 441859
@mdsimon2
Hmm but same is not there with rear input? As shown above8KHz sounds suspiciously like noise caused by USB packet timing (125 μs). May want to try a USB isolator, powering your PC from a battery, etc.
Possibly there's a different analog leakage current path from the rear and the mic inputs.Hmm but same is not there with rear input? As shown above
I'll try with Topping HS02 isolator
Damn the Topping HS02 isolator doesn't work with Motu. I even put a USB hub in between which sometimes is needed with other USB DACs.Possibly there's a different analog leakage current path from the rear and the mic inputs.