Jump to content
  • The Computer Audiophile
    The Computer Audiophile

    Apple Music Lossless Mess Part 2: AirPlay

     

     

    Earlier this month I dug into Apple Music's Lossless and Hi-Res offerings, running several bit perfect rests on the audio output of my Macs and iOS devices. The results were less than stellar (link). This week I dug into Apple Music lossless over AirPlay. One would think that the results would be similar if the only thing changing is the method of transporting the music. However, it's still the Wild West and Apple has made the waters even more muddy with AirPlay. 

     

    Before I get to the details, I want to thank the Bluesound team. This team was very helpful while I was testing and researching AirPlay and Apple Music Lossless. These guys really know what they are doing and are on the leading edge of supporting and developing solutions that may seem simple to the end user, but are quite complex behind the scenes. 

     

    NOTE: Be sure to read the UPDATED parts below, suggested by @Marco Klobas


    Let's Dig In

     

    Just like my previous article, I want to start with some basics. 

     

    What is bit perfect and why should I care? In the simplest terms, bit perfect means that the audio hasn't been changed. The music sent, in this case from Apple Music, into the playback device hasn't been altered. The source is what has been delivered to Apple by the record labels. Apple is just the delivery company.
     
    If you care about high quality, getting the lossless streaming you're paying for from Apple Music, Qobuz, Tidal, Amazon Music, etc... then you should care about bit perfect because without it you have no idea what's happening to your audio. If this isn't a concern for you, no worries. 

     

     

    Testing Methodology 

     

    Testing AirPlay was much more difficult than straight USB connected audio devices. There are AirPlay 1 devices, AirPlay 2 devices, Shairport devices, and a host of applications that don't follow any specific set of standards when sending audio via AirPlay. 

     

    My bit perfect testing consists of a Berkeley Audio Design Alpha DAC Reference Series 3 that identifies and decodes HDCD on all sample rates from 44.1 up through 192 kHz. When an unaltered HDCD music track is played, the HDCD indicator on the DAC is illuminated. The HDCD flag is on the 16th bit for lossless CD files and the 24th bit for high resolution files. Any alteration, DSP, volume leveling, etc... changes this least significant bit and won't enable the HDCD indicator to illuminate on my DAC. Apple Music's lossless audio that I tested was 16 bit / 44.1 kHz and the Hi-Res audio was both 24 bit / 176.4 kHz and 24 bit / 192 kHz. That's the hardware piece. 

     


    Feeding the DAC I used four devices.

     

    • A Berkeley Audio Design Alpha USB. This converts USB audio to AES or S/PDIF on BNC. This device doesn't use AirPlay, but it helps set a baseline for testing.
    • A Bluesound Node 2i that supports AirPlay 2 and uses the newest version of Apple's AirPlay 2 chip. 
    • An Apple AirPort Express 802.11n (2nd Generation) serial number C86HV7S1DV2R. This device supports AirPlay 2 and features optical S/PDIF output over Toslink. 
    • An Apple AirPort Express 802.11n (1st Generation) serial number 6F94552G2U6. This device supports AirPlay 1 and features optical S/PDIF output over Toslink.
    • A Sonore signatureRendu SE Optical. This device supports ShairPort, an open source version of Apple's AirPlay 1.

     


    Sending audio to the above devices I used the following.

     

    • An Apple iPhone 12 Pro running iOS 14.6 and the Apple Music app.
    • An Apple Mac Mini (M1) running macOS 11.4, and Apple Pro Display XDR.
    • An iPad Pro (12.9-inch) (2nd Generation) running iOS 14.6.

     


    With respect to source files, here's what I do. 
     
    I have a list of roughly ten known HDCD albums (although I could use more if needed). Many of these albums were only released as HDCD encoded CDs/files. There is no alternate lossless version. For example, Reference Recordings only releases CDs that are HDCD encoded. Pearl Jam's Live On Two Legs was only released as an HDCD master for its lossless CD version. 
     
    I set a baseline by playing my own local copy of the albums and make sure the HDCD indicator illuminates. I played some Reference Recordings albums through Apple's Music desktop application on macOS and made sure the app could handle bit perfect playback. All was good there. On iOS, I used other apps such as Qobuz, to play the identical music through the identical hardware. All was good through the Qobuz app. Again, there are no alternative versions of these lossless albums. It's the same music on all the services that offer lossless streaming.
     
    Absolutely there are possible holes in my methodology, but I believe I've minimized them as much as possible. If anyone can identify a hole, please let me know and I will retest. 
     

     

    Results Without Context

     

    Here is a list of the results, straight up without any context. 

     

    On iOS

    1. Apple's Music App, lossless streaming content, AirPlay 1 to AirPort Express 1st Gen - bit perfect at 44.1.
    2. Apple's Music App, lossless streaming content, AirPlay 1 to Sonore Rendu (ShairPort) - bit perfect at 44.1.
    3. Apple's Music App, lossless streaming content, AirPlay 2 to Bluesound Node 2i - NOT bit perfect at 44.1.
    4. Apple's Music App, lossless streaming content, AirPlay 2 to AirPort Express 2nd Gen - NOT bit perfect 44.1.

     

    iOS Notable

    1. Qobuz, lossless streaming content, AirPlay 2 to Bluesound Node 2i - bit perfect at 44.1.
    2. Qobuz, lossless streaming content, AirPlay 2 to AirPort Express 2nd Gen - bit perfect at 44.1.
    3. Tidal, lossless streaming content, AirPlay 2 to Bluesound Node 2i - NOT bit perfect at 44.1.
    4. Tidal, lossless streaming content, AirPlay 2 to AirPort Express 2nd Gen - NOT bit perfect 44.1.
    5. Tidal, lossless streaming content, AirPlay 1 to AirPort Express 1st Gen - bit perfect at 44.1.
    6. Apple's Music App, lossless streaming content, USB output with CCK - not bit perfect at 44.1.
    7. Qobuz, lossless streaming content, USB output with CCK - bit perfect at 44.1 and 192.

     


    On macOS

    1. UPDATED: Apple's Music App, lossless streaming content, AirPlay 1 to AirPort Express 1st Gen - bit perfect at 44.1 only if the system-wide AirPlay device is set. If AirPlay device only selected in the Music app, the output is NOT bit perfect.
    2. UPDATED: Apple's Music App, lossless streaming content, AirPlay 1 to Sonore Rendu (ShairPort) - bit perfect at 44.1 only if the system-wide AirPlay device is set. If AirPlay device only selected in the Music app, the output is NOT bit perfect.
    3. UPDATED: Apple's Music App, lossless streaming content, Airplay 2 to Bluesound Node 2i - bit perfect at 44.1 only if the system-wide AirPlay device is set. If AirPlay device only selected in the Music app, the output is NOT bit perfect.
    4. UPDATED: Apple's Music App, lossless streaming content, AirPlay 2 to AirPort Express 2nd Gen - bit perfect at 44.1 only if the system-wide AirPlay device is set. If AirPlay device only selected in the Music app, the output is NOT bit perfect.

     

    macOS Notable

    1. Apple's Music App, lossless local content, AirPlay 1 to AirPort Express 1st Gen - bit perfect at 44.1.
    2. UPDATED: Apple's Music App, lossless local content, AirPlay 2 to Bluesound Node 2i - bit perfect at 44.1 only if the system-wide AirPlay device is set. If AirPlay device only selected in the Music app, the output is NOT bit perfect.
    3. UPDATED: Apple's Music App, lossless local content, AirPlay 2 to AirPort Express 2nd Gen - bit perfect at 44.1 only if the system-wide AirPlay device is set. If AirPlay device only selected in the Music app, the output is NOT bit perfect.
    4. Apple's Music App, lossless local content, USB output - bit perfect at 44.1.

     

     

     

    Setting the system-wide audio device to an AirPlay device is done by selecting the following item in the system menu at the top of the screen.

     

    2.jpg 1.jpg

     

     

     

     

     

    Once selected, it will appear in the Music app this way.

     

    Display in Music App.jpg

     

     


    Results With Some Thoughts And Videos

     

    Please see the UPDATED notes above!

     

    Sending Apple Music lossless content from an iOS device to an AirPlay version 1 device was surprisingly bit perfect, when all other methods were not bit perfect. My original guess was that this is because the AirPlay version 1 Express only accepted Apple Lossless Audio Codec (ALAC), so the sending app had no choice. However, this doesn't square with the fact that the Music app on macOS doesn't send bit perfect lossless audio to the same 1st gen Express. I retested this multiple times to make sure the results were identical on every test. The bottom line is that AirPlay 2 isn't currently receiving bit perfect lossless audio unless the system-wide output is set to an AirPlay 2 device, otherwise it's likely converting it to AAC at 256 kbps. Strangely, the Music app on macOS says it's streaming lossless audio only when sending via AirPlay 2 even if it is lossy because of the output selection only being done in the Music app, but the audio isn't bit perfect this way. The same app when sending via AirPlay 1, doesn't even pretend to send lossless, so it doesn't even display the lossless logo will display the lossless logo only if the system-wide audio device is set to the AirPlay 1 device.

     

    Currently, the only way to stream lossless audio from a streaming service, bit perfectly, over AirPlay is to use an AirPlay version 1 device and use Apple Music, Tidal HiFi, or Qobuz, or an AirPlay 2 device and Qobuz. It seems like Qobuz doesn't care what the device supports, it just send the lossless audio without changing it. Apple Music sees AirPlay 2 and dumbs the music down to lossy AAC.

     

     

    VIDEO One

     

    Here is a video of my testing Apple Music streaming lossless 16 bit / 44.1 kHz audio from an iPad Pro to an AirPort Express (1st gen) via AirPlay 1. You can see several things in this video.

     

    1. Shortly after I press play, the sample rate on the DAC changes to 44.1, the Lock light on the DAC turns green to indicated a solid signal is received, and the HDCD indicator illuminates blue to indicate the DAC recognizes the HDCD flag on the 16th bit of the audio signal. 
    2. At 0:25 into the video you can see the app shows its sending Lossless 16-bit/44.1 kHz ALAC content.
    3. At 0:35 into the video you can see what happens when I adjust the volume. As soon as the volume is not at 100%, bit perfection is lost and the HDCD indicator turns off. When I increase the volume back to 100%, the indicator illuminates blue once again. This is but one example of anything that changes the audio, destroys bit perfection and the HDCD indicator goes off. 
    4. At 0:47 into the video I change tracks. Shortly thereafter you can see the HDCD light go out, while no audio is playing for the split second, then come back on as soon as the track starts. 
    5. At 1:03 into the video you can see as soon as I press pause, the HDCD and Lock indicator lights go out.

     

     

     

     

     

     

     

     

    VIDEO TWO

     

    Here is a video of my testing Apple Music streaming lossless 16 / 44.1 audio from MacBook Pro to a Bluesound Node 2i via AirPlay 2. You can see several things in this video.

     

    1. The sample rate and Lock indicator are already good because the Node 2i had previously played this content. 
    2. When I press play, the HDCD indicator remains off, indicating something in the audio has changed, destroying the 16th bit.
    3. At 0:23 into the video you can see when I click the Apple Music lossless logo. The app indicates it's receiving lossless audio from Apple Music. The fact that it isn't sending this lossless audio to the AirPlay 2 device is not indicated anywhere for the consumer to see.
    4. Note: When sending this same audio to an AirPlay 1 device from the MacBook Pro, the lossless logo doesn't appear in the now playing window and the app says AAC if you click Get Info.

     

     

     

     

     

     

     

     

    VIDEO THREE 


    Here is a video of my testing Apple's Music application streaming LOCALLY stored  / my own CD rip lossless 16 / 44.1 audio from MacBook Pro to a Bluesound Node 2i via AirPlay 2. You can see several things in this video.

     

    1. The sample rate and Lock indicators are correct. 
    2. The HDCD indicator never illuminates, indicating the audio sent is not bit perfect. 
    3. I also adjust the volume up and down to make sure it's at 100%. 

     

     

     

     

     

     

     

     

     

    VIDEO FOUR


    Here is a video of my testing Apple's Music application streaming LOCALLY stored  / my own CD rip lossless 16 / 44.1 audio from MacBook Pro to an AirPort Express 1st Gen via AirPlay 1. You can see several things in this video.

     

    1. The sample rate and lock indicator correctly adjust upon playback.
    2. The HDCD indicator correctly illuminates upon playback, indicating bit perfect audio.
    3. At 0:50 into the video you can see the track is local 44.1 AIFF file. 

     

     

     

     

     

     

     

     

     

    VIDEO FIVE

     

    Here is a video of my testing Apple Music streaming lossless 16 bit / 44.1 kHz audio from a MacBook Pro to an AirPort Express (1st gen) via AirPlay 1. You can see several things in this video.

     

    1. Sample rate and Lock indicator adjust correctly.
    2. HDCD indicator doesn't illuminate upon playback.
    3. At 0:40 into the video you can see the Get Info screen showing AAC audio being sent. This appears to be the audio sent from Apple Music, not what is sent behind the scenes to the AirPlay device, even though AAc is in fact what's sent to the AirPlay 1 device as well. 

     

     

     

     

     

     

     

     

     

    VIDEO SIX

     

    Here is a video of my testing Apple's Music application streaming LOCALLY stored  / my own CD rip lossless 16 / 44.1 audio from MacBook Pro to an Alpha USB via USB. This is just a baseline video showing Apple's Music app is fully capable of bit perfect output via USB.

     

     

     

     

     

     

     

     

     

    VIDEO SEVEN

     

    Here is a video of my testing Apple Music application streaming lossless audio 16 / 44.1 audio from MacBook Pro to an Alpha USB via USB. You can see several things in this video.

     

    1. The video shows all my settings correct in the app. 
    2. At 0:40 into the video I hit play and the HDCD indicator goes on for a short period, then continues to blink on/off periodically throughout the video. This indicates the audio fluctuates between bit perfect and not bit perfect. 
    3. At 0:50 into the video you can see the lossless logo clicked and Apple Music displaying Lossless 16-bit 44.1 kHz ALAC as the audio stream.  

     

     

     

     

     

     

     


    Wrap Up

    There you have the complete soup sandwich that is Apple Music lossless streaming over AirPlay versions 1 and 2. 

     

    I'd like to note that some people have said my bit perfect testing isn't really that big of a deal because Apple is streaming lossless audio and they don't care if it isn't bit perfect because it's better than the lossy stuff. After doing my research, I can tell you the "lossless" may be the exact same thing as the lossy, so people really should care about bit perfect playback. If we don't know where the digital signal processing is happening, we don't know that it's even lossless. 

     

    If you see anything in my tests that you think isn't right, please let me know. The last thing I want to do is cause even more confusion with misinformation. I believe everything here is 100% correct. 
     

     

     

     

     




    User Feedback

    Recommended Comments



    Thanks for doing these experiments and writing them up. I know how much work that is, especially when you think of something just as you think you are done and have to revisit a big chunk of work. I really appreciate the insight into behavior of Apple Music on iOS. 

     

    I've done some tests myself focused on MusicApp on MacOS. I've been looking at the amount of data transferred from Mac to an AirPorts Express v1 and v2 (with the AirPlay2 firmware) in order to identify whether the ALAC codec or the AAC codec is being used.

     

    The short answer is that when Apple Music on MacOS is set for lossless playback and playing a track with a lossless version available, it transcodes to AAC when playing directly to an AirPlay 2 receiver. When playing through system audio with the system audio set to the AirPlay 2 receiver, it uses ALAC. With an AirPlay v1 receiver, it switches to an AAC version from Apple's server and then transcodes that to ALAC for transmission. Playback of local ALAC rips uses ALAC transport to AirPlay 2 receivers.

     

    This comports with your results. It looks like the lack of bit-perfect playback to AirPlay 2 receivers is due to the use of AAC as the LAN transport codec.

     

    I hope Apple will fix this, but the lengths they seem to go to in order to avoid an unbroken lossless stream from their servers to a DAC (internal or external) over AirPlay v1 or v2 makes me think that this is deliberate, perhaps to thwart piracy of lossless files (even though CDs still exist).

    Share this comment


    Link to comment
    Share on other sites

    24 minutes ago, Marco Klobas said:

    A quick visual recap of Chris' tests:

     

    spacer.png

    Via USB, Apple Music isn’t bit perfect on macOS. 

    Share this comment


    Link to comment
    Share on other sites

    4 minutes ago, The Computer Audiophile said:

    Via USB, Apple Music isn’t bit perfect on macOS. 

     

    Sorry, Chris.

     

    You're referring to your first test, isn't it?

     

    I've updated the image.

    Share this comment


    Link to comment
    Share on other sites

    27 minutes ago, Marco Klobas said:

     

    Sorry, Chris.

     

    You're referring to your first test, isn't it?

     

    I've updated the image.

    Yeah, it’s confusing. The Music app can play local content via USB but perfect,  it not content from Apple Music the streaming service. 

    Share this comment


    Link to comment
    Share on other sites

    I just want to thank everyone, fascinating thread even though I live in MS-world except for the phones. Food for thought here. I had previously struggled with Chrome Audio but eventually gave up. Also you’ve reminded me to ID & decode more HDCD files since I don’t have anything that does it in real time. 
     

    And the latest additions may have me re-thinking this whole Airplay thing that I rejected years ago. 
     

    Carry on...

    Share this comment


    Link to comment
    Share on other sites

    31 minutes ago, The Computer Audiophile said:

    Yeah, it’s confusing. The Music app can play local content via USB but perfect,  it not content from Apple Music the streaming service. 

     

    Chris, if you download the album from Apple Music to a Mac, so you are playing back from locally stored files, do you still not get bit perfect playback over USB?

     

    If not, something strange is afoot.

     

    I do not get bit perfect playback using an iPad through the USB camera connection kit, but this is true for both my own rips and downloaded Apple Music files.

    Share this comment


    Link to comment
    Share on other sites

    Does anyone know if the 2nd and/or 3rd Gen  original Apple TV with optical out and Ethernet in can receive Airplay 1 and Airplay 2 and work the same as the two gens if airport express Chris used for his testing? 
    I sold my Airport Express long ago, but still have the 2nd and 3rd Gen of the original Apple TV with optical out in a drawer somewhere! 
    Second, anyone know if and how this may work and achieve bit perfect lossless in my new car which has Apple CarPlay? 
    My new car (2021 BMW) has both Bluetooth and also USB data input going into the stock BMW stereo / Infotainment system (iDrive 7) which can play music stored on my iPhone 12 Pro or a exFat USB stick and any locally downloaded offline content from Qobuz seems to be available via CarPlay (so far lossless downloaded Qobuz sounds the best). 
    I’m assuming that regardless of Bluetooth or USB input that the cars system still processing everything via it’s own DSP and DAC, so maybe it’s pointless anyhow??? 
     

    Share this comment


    Link to comment
    Share on other sites

    The videos are fantastic; the iPad volume test was my favorite.

     

    I've caught myself being annoyed by all this a few times but reminded myself we are simply witnessing a company doing it's job.

     

    I just hope Qobuz will be around long term.

    Share this comment


    Link to comment
    Share on other sites

    Excellent work Chris.  Thank you

    Share this comment


    Link to comment
    Share on other sites

    4 hours ago, agladstone said:

    Does anyone know if the 2nd and/or 3rd Gen  original Apple TV with optical out and Ethernet in can receive Airplay 1 and Airplay 2 and work the same as the two gens if airport express Chris used for his testing?

     

    If an Apple device runs AirPlay 2, it is never AirPlay 1.  However, AirPlay2 can send and receive in two codecs: lossless ALAC and lossy AAC.  It's up to the sender to choose whether it wants to send it lossless or lossy (perhaps for enhanced buffering to multi rooom).

    Share this comment


    Link to comment
    Share on other sites

    18 hours ago, Marco Klobas said:

    A quick visual recap of Chris's tests:

     

    spacer.png

     

    Thank you for sharing with us this visual conclusion @Marco Klobas and also thank you for dig into this subject  @The Computer Audiophile .

     

    I have to recognize that I'm not so sure that I can follow properly due to the lack of background informations. Having said that, would you please share with me your opinion in the following case?

     

    Apple Music installed on iPhone7, iOS 14.6, streaming using Airplay2 to Yamaha WXC-50, Airplay1.

     

    Playing Hi-Res files from Apple Music, will display on mobile up to 24-bit/96kHz ALAC.

    This looks normal because WXC-50 is a Streamer/DAC able to process ALAC files up to 24-bit/96kHz (not 192kHz).

     

    The question is, using this setup, the WXC-50 will receive what Apple Music info box is showing (bit perfect), will downsample or ?!

     

    I can't find a track with 24-bit/192kHz (if someone can point me to one, I can test with that file too in order to see what is displayed). I appreciate it!

    Share this comment


    Link to comment
    Share on other sites

    This is a 192 kHz track:

     

    https://music.apple.com/us/album/blues-to-elvin/962196097?i=962196098

     

    What Apple Music displays is what Apple Music offers, which is not necessarily what the user hears. For example I can listed to the above 192 kHz song with my AiPods Pro. The app shows 192 kHz even though I clearly can't listen to 192 kHz due to the limitation of AirPods Pro.

     

    AirPlay audio (1 and 2) is a 44.1 kHz protocol. Everything over 44.1 kHz is downsampled.

     

    It's not clear if your Yamaha WXC-50 is AirPlay 1 or 2. You stated "using Airplay2 to Yamaha WXC-50, Airplay1".

     

    Is it 1 or 2?

    Share this comment


    Link to comment
    Share on other sites

    Thank you for your feed-back.

    Yamaha WXC-50 is AirPlay1. The iPhone7 shows the AirPlay2 icon by default, being up to date to iOS 14.6 but getting back to the streamer, I've checked, there is no update to Airplay2 on WXC-50.

     

    Coltrane Plays the Blues, it shows as Hi-Res 24-bit/192kHz ALAC indeed but summing up with your statement, it looks like the WXC-50 will receive 16-bit/44.1kHz.  

     

    So in the end, there is no way to feed the streamer in order to play at Apple Music's delivered rated sample rate?

     

     

    Share this comment


    Link to comment
    Share on other sites

    Since you stream from your iPhone and being the Yamaha WXC-50 an AirPlay 1, it will get a 44.1 kHz bit perfect audio, which is the maximum for AirPlay 1.

     

    The AirPlay icon on iOS/iPadOS is currently always shown as AirPlay 2 even when an AirPlay 1 device is involved.

     

    I used both AirPlay logos to make visually a better distinction.

    Share this comment


    Link to comment
    Share on other sites

    Just to clarify, the WXC-50 will receive the maximum delivered by AirPlay1 and will remain at 16-bit/44.1kHz or after that the internal DAC will upsample this signal to 24-bit/96kHz which is the higher WXC's ALAC sample rate before getting to analog?

     

     

     

    Share this comment


    Link to comment
    Share on other sites

    Chris,

     

    What about the BitPerfect app that sells for $10 and the latest version 3 that supports the new Apple Music app.  Would this be a viable setup to get bitperfect out of Apple content?

     

     

    Share this comment


    Link to comment
    Share on other sites

    Really great job - thanks for testing Chris!

    Share this comment


    Link to comment
    Share on other sites

    What a total mess this is 😀

     

    Apple normally like to keep things simple. Not so this time it seems. 

    Share this comment


    Link to comment
    Share on other sites

    On 6/27/2021 at 7:25 AM, Bevok said:

    From the Wall Street Journal

    Likewise, Apple says it will make its wireless AirPlay system capable of lossless in a future update.”

     

    Q: if the Airplay will be updated to Hi-Res, and I guess that we are talking about a new version (maybe) those with Airplay1 devices will be able to receive the higher bitrate or the unit will remain @16-bit/44.1kHz and it's time to upgrade the hardware system? I am trying to understand if the limitation it's on the receiver too. Thanks,

    Share this comment


    Link to comment
    Share on other sites

    Thanks for your exhaustive work on this. I don’t know if the Bluesound people have any insight on this but hopefully Apple is working on some kind of Apple ‘Connect’ feature so as to better integrate Apple Music with Bluesound and other HiFi devices. At least Spotify mentioned they were working with many hi-fi companies when they announced their hi-fi service. 
    And while IOS can handle the varying sample rates present now in Apple Music due to automatic sample rate switching,  MacOS is still a mess because of the fixed rate forced upon us by the Audio MIDI setup. As John Darko says in his latest video, the only reliable way to get Apple Music lossless/hi-res lossless into your hi-fi at the moment is with an iOS device (iPad or iPhone), the CCK and a DAC. Everything else is a compromise of some sort. 

    Share this comment


    Link to comment
    Share on other sites




    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now




×
×
  • Create New...