Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Question about AAC and Bluetooth (Read 5069 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Question about AAC and Bluetooth

Apple devices use AAC as their A2DP codec. And Apple's streaming service uses AAC as its lossy codec.

So, if you are playing an AAC file over Bluetooth, does it just pass the file through, or will AAC re-encode the file again?

I have been trying to find an answer on Google, and have had no luck.

I read a thread years ago that claimed one of AACs advantages was that if you re-encode an AAC file at the same bitrate that it is encoded in, that the encoder will not remove any additional data. So, re-encoding an AAC file 100 times over at the same bitrate will cause no degradation in sound quality.

Of course, now it's 2021 and I can't find the thread.


Re: Question about AAC and Bluetooth

Reply #1
AAC will not pass through. It will be re-encoded.
https://habr.com/en/post/456182/
Quote
Just as with any other Bluetooth codec, any music is first decoded then encoded with a codec. When listening to music in AAC format, it is first decoded by the OS, then encoded into AAC again, for transmission over Bluetooth. This is necessary to mix several audio streams such as music and new message notifications. iOS is no exception. You can find a lot of statements that iOS does not transcode music in AAC format for transmission via Bluetooth, which is incorrect.

Re: Question about AAC and Bluetooth

Reply #2
One of AACs advantages was that if you re-encode an AAC file at the same bitrate that it is encoded in, that the encoder will not remove any additional data. So, re-encoding an AAC file 100 times over at the same bitrate will cause no degradation in sound quality.

I'm pretty sure that's not true.


Re: Question about AAC and Bluetooth

Reply #4
AAC will not pass through. It will be re-encoded.
https://habr.com/en/post/456182/
Quote
Just as with any other Bluetooth codec, any music is first decoded then encoded with a codec. When listening to music in AAC format, it is first decoded by the OS, then encoded into AAC again, for transmission over Bluetooth. This is necessary to mix several audio streams such as music and new message notifications. iOS is no exception. You can find a lot of statements that iOS does not transcode music in AAC format for transmission via Bluetooth, which is incorrect.

That's a shame. If it could pass it through, then you may get some battery life back.

Re: Question about AAC and Bluetooth

Reply #5
AAC will not pass through. It will be re-encoded.
https://habr.com/en/post/456182/
Quote
Just as with any other Bluetooth codec, any music is first decoded then encoded with a codec. When listening to music in AAC format, it is first decoded by the OS, then encoded into AAC again, for transmission over Bluetooth. This is necessary to mix several audio streams such as music and new message notifications. iOS is no exception. You can find a lot of statements that iOS does not transcode music in AAC format for transmission via Bluetooth, which is incorrect.

That makes sense.

Re: Question about AAC and Bluetooth

Reply #6
One of AACs advantages was that if you re-encode an AAC file at the same bitrate that it is encoded in, that the encoder will not remove any additional data. So, re-encoding an AAC file 100 times over at the same bitrate will cause no degradation in sound quality.

I'm pretty sure that's not true.

I was pretty sure that wasn't true either. But the link that @Rollin provided shows that AAC handles re-encoding better than other codecs.

Re: Question about AAC and Bluetooth

Reply #7
One of AACs advantages was that if you re-encode an AAC file at the same bitrate that it is encoded in, that the encoder will not remove any additional data. So, re-encoding an AAC file 100 times over at the same bitrate will cause no degradation in sound quality.

I'm pretty sure that's not true.

I was pretty sure that wasn't true either. But the link that @Rollin provided shows that AAC handles re-encoding better than other codecs.
Check this out:

https://hydrogenaud.io/index.php?topic=107692.0

A test from 2014, and encoders have improved since then. Basically, AAC not suffering any noticeable generational losses after as many as 100 reencodings, while both Ogg Vorbis and Opus suffered considerably after way less.

Maybe someone would feel like throwing different xHE-AAC encoders into that sort of test?

Re: Question about AAC and Bluetooth

Reply #8
One of AACs advantages was that if you re-encode an AAC file at the same bitrate that it is encoded in, that the encoder will not remove any additional data. So, re-encoding an AAC file 100 times over at the same bitrate will cause no degradation in sound quality.

I'm pretty sure that's not true.

I was pretty sure that wasn't true either. But the link that @Rollin provided shows that AAC handles re-encoding better than other codecs.
Check this out:

https://hydrogenaud.io/index.php?topic=107692.0

A test from 2014, and encoders have improved since then. Basically, AAC not suffering any noticeable generational losses after as many as 100 reencodings, while both Ogg Vorbis and Opus suffered considerably after way less.

Maybe someone would feel like throwing different xHE-AAC encoders into that sort of test?

Thank you. That is very interesting.

Re: Question about AAC and Bluetooth

Reply #9
Apple Music uses 256 kbps AAC and bluetooth generally uses 256 kbps AAC?

I'd guess going from a competently encoded 256 kbps lossy file to another competently encoded 256 kbps file* it probably would sound fine for at least casual listening.

*Yes, I know file isn't really the correct term here.

Re: Question about AAC and Bluetooth

Reply #10
Apple Music uses 256 kbps AAC and bluetooth generally uses 256 kbps AAC?

I'd guess going from a competently encoded 256 KBPS lossy file to another competently encoded 256 KBPS file* it probably would sound fine for at least casual listening.

*Yes, I know file isn't really the correct term here.

Well, there are 2 posts linked in this thread that show that re-encoding, even 100 times, causes no artifacts with AAC. AAC is the clear re-encoding winner.

I wonder if they engineered this into AAC, or if it's just a happy accident.

It would be nice if other codecs could do this, but I doubt that re-encoding is a high priority for anyone codec developers, and most lossy codecs used to encode music aren't used by Bluetooth, anyway. I'm kind of surprised that OPUS, with it's low latency and excellent compression isn't being used more. It seems like an idea codec for Bluetooth A2DP.

 

Re: Question about AAC and Bluetooth

Reply #11
macOS uses 192kbps VBR, min 32kbps, max 256kbps. Windows only just started using AAC support at all, and I haven't checked what it uses.

Re: Question about AAC and Bluetooth

Reply #12
I read a thread years ago that claimed one of AACs advantages was that if you re-encode an AAC file at the same bitrate that it is encoded in, that the encoder will not remove any additional data. So, re-encoding an AAC file 100 times over at the same bitrate will cause no degradation in sound quality.
Well, the AAC spec only defines a decoder and how AAC is encoded is solely dependent upon the encoder implementation. So, even if it is the case (which is unlikely), it is specific to a encoder and thus not generalisable.

I don't think I need to say this but I'll say anyway that, assuming that AAC is indeed better at handling re-encoding than other codecs, as others have pointed out earlier, there will still be generation loss. And I don't personally believe after 100 re-encodes the quality can sustain.