Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

RumorConsumer

macrumors 68000
Original poster
Jun 16, 2016
1,690
1,216
I recently discovered a frustrating issue with Apple’s Music.app on macOS when using an external DAC (Chord Hugo 2), and after some research, I realized this has likely been a problem for years.



The Issue: High-Res Audio Is Being Resampled Incorrectly



If you play a high-resolution file (e.g., 96kHz) through an external DAC, even if you manually change the DAC’s sample rate to match, macOS internally down-samples it to whatever sample rate was set when Music.app launched (e.g., 44.1kHz) and then up-samples it back to 96kHz.



This means that Music.app is not delivering true bit-perfect playback—instead, it’s feeding your DAC a resampled version of what should be lossless, high-resolution audio.



This Also Affects the Built-In Headphone Jack



This resampling issue isn’t exclusive to external DACs. If you’re using the built-in headphone jack on a Mac, macOS will resample high-res files if the sample rate in Audio MIDI Setup doesn’t match the file. The only way to get proper playback is to manually change the sample rate before playing each track, which is completely impractical.



Why This Is Frustrating

Music.app does not automatically switch sample rates to match the playing file—something Audirvana, Roon, and even iTunes with BitPerfect used to do.

CoreAudio forces resampling, even if you try to manually match the DAC’s settings.

Apple markets Music.app as a lossless audio player, yet it’s quietly degrading playback quality.

Pro audio apps like Logic don’t have this issue, so why does Music.app?



Third-Party Players Work Fine—So Why Can’t Apple Fix This?



Third-party apps like Audirvana and Roon establish their own direct connections to the DAC, completely bypassing CoreAudio’s system mixer. They deliver true bit-perfect playback without this unnecessary resampling.



But why does Apple’s own Music.app—on the platform that introduced lossless Apple Music—fail at properly handling high-res playback? This feels like an unforced error.




Sources & More Discussion:


GitHub Discussion – LosslessSwitcher Issue

CoreAudio API Mailing List (2008) – Sample Rate Handling
 
TRYING to come from PC to Mac, but this is deal breaker.
I notice there isn't a Mac app of Amazon Music.
Amazon Music PC app works perfect on PC, my RME UFX locks on perfectly.
Sigh...
 
TRYING to come from PC to Mac, but this is deal breaker.
I notice there isn't a Mac app of Amazon Music.
Amazon Music PC app works perfect on PC, my RME UFX locks on perfectly.
Sigh...
Use Audirvana. It's actually awesome.
 
I recently discovered a frustrating issue with Apple’s Music.app on macOS when using an external DAC (Chord Hugo 2), and after some research, I realized this has likely been a problem for years.



The Issue: High-Res Audio Is Being Resampled Incorrectly



If you play a high-resolution file (e.g., 96kHz) through an external DAC, even if you manually change the DAC’s sample rate to match, macOS internally down-samples it to whatever sample rate was set when Music.app launched (e.g., 44.1kHz) and then up-samples it back to 96kHz.



This means that Music.app is not delivering true bit-perfect playback—instead, it’s feeding your DAC a resampled version of what should be lossless, high-resolution audio.



This Also Affects the Built-In Headphone Jack



This resampling issue isn’t exclusive to external DACs. If you’re using the built-in headphone jack on a Mac, macOS will resample high-res files if the sample rate in Audio MIDI Setup doesn’t match the file. The only way to get proper playback is to manually change the sample rate before playing each track, which is completely impractical.



Why This Is Frustrating

Music.app does not automatically switch sample rates to match the playing file—something Audirvana, Roon, and even iTunes with BitPerfect used to do.

CoreAudio forces resampling, even if you try to manually match the DAC’s settings.

Apple markets Music.app as a lossless audio player, yet it’s quietly degrading playback quality.

Pro audio apps like Logic don’t have this issue, so why does Music.app?



Third-Party Players Work Fine—So Why Can’t Apple Fix This?



Third-party apps like Audirvana and Roon establish their own direct connections to the DAC, completely bypassing CoreAudio’s system mixer. They deliver true bit-perfect playback without this unnecessary resampling.



But why does Apple’s own Music.app—on the platform that introduced lossless Apple Music—fail at properly handling high-res playback? This feels like an unforced error.




Sources & More Discussion:


GitHub Discussion – LosslessSwitcher Issue

CoreAudio API Mailing List (2008) – Sample Rate Handling
Your evidence consists of, firstly, an article that comes from some email wherein an earlier allegation is actually referred to as a "theory" which "seems to be a relic from iTunes times"; and, secondly, from another article from 2008(!). Your accusatory post title seems to be based on some old contention which you are presenting as actual proof that this is happening right now in the Music app. How do you actually know this is still true some 17 years later?

I'm genuinely curious because I see no actual evidence.
 
  • Like
Reactions: Alameda
Your evidence consists of, firstly, an article that comes from some email wherein an earlier allegation is actually referred to as a "theory" which "seems to be a relic from iTunes times"; and, secondly, from another article from 2008(!). Your accusatory post title seems to be based on some old contention which you are presenting as actual proof that this is happening right now in the Music app. How do you actually know this is still true some 17 years later?

I'm genuinely curious because I see no actual evidence.
I have reproduced it myself on my 5 Macs running various OSes. It's a thing.
 
This means that Music.app is not delivering true bit-perfect playback—instead, it’s feeding your DAC a resampled version of what should be lossless, high-resolution audio.

It's still lossless, resampling doesn't make it any less so.

Music.app does not automatically switch sample rates to match the playing file—something Audirvana, Roon, and even iTunes with BitPerfect used to do.

Yes, they claim exclusive access to the audio device. This prevents any other application from using it (or changing its settings).

CoreAudio forces resampling, even if you try to manually match the DAC’s settings.

It is a framework in which audio applications can coexist.

Apple markets Music.app as a lossless audio player, yet it’s quietly degrading playback quality.

I call BS on that one.

Third-party apps like Audirvana and Roon establish their own direct connections to the DAC, completely bypassing CoreAudio’s system mixer. They deliver true bit-perfect playback without this unnecessary resampling.

They don't bypass CoreAudio, but they get an exclusive lock on the audio device.

But why does Apple’s own Music.app—on the platform that introduced lossless Apple Music—fail at properly handling high-res playback?

By design, to allow coexistence with other audio apps.
 
For the record: this seems to apply for locally stored files (owned music). Streaming seems unaffected. I personally still use BitPerfect to automatically switch the sample rate for local music.

Anyway, it's sad that iOS/iPadOS devices are actually more suitable for lossless/hi-res Apple Music streaming than a Mac (more straight forward).
 
These things get wrong fast on an operating system that run thousands of apps. What would happen if you have two or more apps that tries to change the sample rate running at the same time?

Moreover, can you ever hear the difference? Did you make a blind listening test?
 
It's still lossless, resampling doesn't make it any less so.



Yes, they claim exclusive access to the audio device. This prevents any other application from using it (or changing its settings).



It is a framework in which audio applications can coexist.



I call BS on that one.



They don't bypass CoreAudio, but they get an exclusive lock on the audio device.



By design, to allow coexistence with other audio apps.

This is where it begins. Argue with them.
 
How have you reproduced this?
Specifically, how do you identify that the music was downsampled and subsequently upsampled by the Mac? What is the test for this?
Many DACs have visual readouts that report the resolution of the current playback content is. In my case, with a Chord Hugo 2, there is an LED that changes colors to indicate source frequency. In other cases there's digital readouts that tell you in plain alphanumeric English. I was looking at this LED the other day and it struck me that I was not sure I ever have seen it change colors even though I know I was playing material at different frequencies. So I experimented and watched the LED as I played a wide variety of file types - no change. 48khz constantly. Then I did some research, downloaded Audirvana (which has one of these special relationships with the DAC) and launched the app, imported my Music library and began playing and voila the DAC LED shifted around as expected. Did some more research and here we are.
 
For the record: this seems to apply for locally stored files (owned music). Streaming seems unaffected. I personally still use BitPerfect to automatically switch the sample rate for local music.

Anyway, it's sad that iOS/iPadOS devices are actually more suitable for lossless/hi-res Apple Music streaming than a Mac (more straight forward).
This.
 
I don't know about Apple Music but using foobar2000, if I don't use exclusive mode the system will resample to whatever is set in the MIDI app
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.