Saturday, 14 November 2015

MEASUREMENTS: Apple Mac OS X ("Yosemite") Software Audio Upsampling


Well... You knew this was coming, right? After looking at Linux, then Windows, what about all the hub bub with Mac OS X? Depending on which forum one visits, there's often talk about Mac's being "better" as audiophile sources than PCs.

As readers here know by now, I think sound quality these days with a decent modern digital interface is primarily a function of the quality of one's DAC. So long as the digital source device is decent (not a high bar to cross by any means!) with bitperfect results and absent of any timeout errors, or extreme noise pollution, it's just fine. And one can verify the quality with objective measurements of course.

The question being asked today is, compared to the software upsampling in Windows and Linux, how well does the Mac OS X software upsampling measure up?



Behold the test subject in the image above - a 2015 MacBook; the model with just one communication port, the USB 3.1/Type C connector. Connected to the "break out box" to the left is my Light Harmonic Geek Out V2 plugged into the standard USB connector.

Here is the "About This Mac" window to give us a little more info about this machine:

We have a fanless 1.1GHz dual-core Intel Core M (Broadwell) processor. It's OS X 10.10.4 or "Yosemite". The new OS X 10.11 "El Capitan" has just been released but given some early growing pains, I figure it was wise to delay an upgrade since this is my wife's machine and she doesn't care about the latest-and-greatest :-).

When it comes to OS X audio, the underlying digital infrastructure is something called "Core Audio". As most folks know, to switch the underlying samplerate requires setting the "Audio Devices" panel in Utilities --> Audio MIDI Setup as seen here for the Geek Out V2:

This is the equivalent to what I did previously with Windows and it will allow standard audio applications like iTunes to output audio at the above samplerate; resampling as appropriate.

So, what does the "digital filter overlay graph" of 44kHz signals upsampled to 96kHz look like with the Mac?


In a word - impressive. Much better than the Windows equivalent software upsampling algorithm with DirectSound:

And quite close to the Geek Out V2's hardware-based ESS Sabre9018AQ2M:

So what does the "Dirac delta function" impulse response look like coming from the functionally excellent Mac resampling algorithm?

As expected, a good looking orthodox, linear, "sinc function" impulse response for the antialiasing reconstruction filter.

Now for the requisite RightMark results comparing hardware "bitperfect" playback (using iTunes + BitPerfect app), Windows 10 up/downsampling, and Mac OS X up/downsampling. I'll only show the 44kHz and 192kHz results since 96kHz would not require any resampling. Remember, for each of these measurements, OS X Core Audio and Windows 10 DirectSound were set to resample to 96kHz:

16/44 (resampled to 96kHz using Core Audio / Win 10 DirectSound):

Frequency Response
THD+N vs. frequency
24/192 (resampled to 96kHz using CoreAudio / Win 10 DirectSound):


As you can see, the higher quality upsampling algorithm in the Mac results in less high-frequency roll-off in the 44kHz test. Also no surprise is that with this better upsampling quality, intermodulation distortion which was shown to be high with the Windows 10 test is much better and can be easily appreciated in that THD+N vs. frequency graph.

As for downsampling from 192kHz, it's not as much a problem other than a slightly earlier roll-off with the inferior Windows algorithm and the THD+N results are only marginally increased. Not significant issues in any case since the difference is likely all ultrasonic when downsampling to 96kHz.

Finally, for completeness; jitter:


16 and 24-bit J-Test spectra; the top with iTunes plus BitPerfect to the hardware at the respective 44/48kHz samplerates. The bottom spectra using OS X Core Audio software upsampling to 192kHz (might as well stress the system a bit more that 96kHz). As you can see there is nothing here of significance... Certainly nothing of concern that would suggest jitter problems due to the extra "stress" from software upsampling of the audio!

Realize that with today's CPUs in general, there is no real "stress" at all. Even at 192kHz software upsampling, I'm seeing at most 10% CPU utilization spikes including the kernel, daemons, iTunes when playing music with OS X... Not to mention that the fanless Intel Core M 1.1GHz processor isn't exactly a speedy processor by today's standards!

Conclusion:

As I had speculated previously, whereas Windows functions on a broad range of hardware ranging widely in processing speed, Apple's OS X is targeted for a small family of computers with known speed parameters... Save for folks who run "Hackintoshes", OS X is meant for reasonably well endowed Apple laptops and desktops (with admittedly substantial price tags to boot!). This probably allows them to use a significantly higher quality resampling algorithm in Core Audio as demonstrated in the measurements above.

Realize that although I can demonstrate and say that OS X is better in terms of the digital audio filter used, this would not explain claims by all the audiophiles who seem to have an affinity for Apple computers as preferred over a similar quality Windows computer using a properly configured set-up. I have certainly not noticed any difference in audible or measurable quality compared to my ASUS and Microsoft Surface portables when playing through a good asynchronous USB DAC in bit-perfect manner.

Good job Apple! If there's one thing that I appreciate with Apple, it is that they attend to all the little details. It is good to see that this includes things like the resampling algorithm in the audio infrastructure. And this is coming from a Windows / Android guy :-).

--------------------------

Hope you're all enjoying your music! Still travelling abroad for work...

9 comments:

  1. Nice work! Bonus points for use of "behold" in your machine reveal....

    ReplyDelete
    Replies
    1. Yes... "Behold" the Mighty Apple :-).

      Delete
  2. Hey there! Who I recently discovered your blog and it is very promising.

    But, there's one thing that I would really like to see here, RMAA measurements with loads, I mean you should run the RMAA test using some loads, usually those test are run with three loads, 16, 60 and 250 Ohm. or 32 Ohm if you just wanna run one load test.

    Those test show how the source will really behave when you plug headphones directly to it, usually the low impedance loads are the most demanding with distortions and crosstalk.

    Also, some sources have caps in their outputs, if they are too small they may roll-off bass with low impedance loads, and the lower the impedance, the worse the roll-off is.

    And finally, please measuring output impedance is also very important!

    ReplyDelete
    Replies
    1. Yes. Simulated loads for measurements of headphone outputs very important. Likewise output impedance... As usual in life, there's only so much time to do stuff :-).

      Remember though that I'm not much into the headphone stuff and when I do listen, I often use the higher impedance Senn HD800 (300-ohm). That's part of the reason I've dragged my feet at getting load measurements out... That and the fact that even if we simulate load with a specific value, this would still be a simulation rather than model the variance in impedance depending on frequency as in real headphones.

      I think InnerFidelity does an amazing job with headphones already of course...

      Delete
  3. Great post Archimago, really enjoying your blog.

    Can you please review the Apogee Groove? I'm really curious how it measures on a HD6X0 -> HD800. Apogee claims to have overcome high impedance output & high impedance sensative headphones and I'd love to see an objective breakdown. Cheers!

    ReplyDelete
    Replies
    1. Interesting... I'll see if this device comes across my sphere of high-fi friends.

      Delete
  4. Does Windows 10 not have better additional resampler in Groove/WMP playback ?

    ReplyDelete
  5. Hi Archimago,

    I noticed that the MacBook’s USB-C port is used for charging and USB 3 data transfers (among other uses).

    Would you notice “noise” or signal / sound quality degradation if you connect your DAC using one of those USB-C Digital AV multiport adapters and at the same time, charge your MacBook?

    ReplyDelete
  6. Hi, some Apple forums are talking about clicks and pops from USB audio when using a DAC, this is my experience and hasn't been fixed in El Capitan, to the extent that I am switching to a Toslink in the hope it solved the problem, any thoughts, it must be testable, thanks

    ReplyDelete