I have a Sony Xperia which is only so-so through the 3.5mm jack, but it sounds much better over Bluetooth 2.x. I guess this means my Bluetooth devices have better DACs than the Xperia. The Xperia plays some high definition formats like FLAC, but when I use it with DLNA, for example, not all formats will go. Presumably DLNA streams the raw file, so it must rely on the player's own CODECs. I understand the original Bluetooth spec may allow for this by design (where both sides support the same format), but that it is not usually implemented. Therefore with Bluetooth your player's CODEC typically decodes, then some intermediate format is sent to the audio device and output by its DAC. What is the intermediate format? Is that PCM, or something similar? (I don't know if this is changed in later Bluetooth versions). When I use Chromecast Audio, which side of the WiFi connection does the decoding? Does the WiFi carry the decoded intermediate, or does it stream the source file to a CODEC on the Chromecast? I probably have a lot more questions, but maybe if I understood more about these questions right here I could figure out the rest myself.