For information, about Chromecast sound :
- Chromecast protocol allow both source and renderer to select a codec : PCM, MP3, FLAC, ...
- In case you cast local FLAC files directly : usually FLAC is transmitted untouched if the renderer can read FLAC, else the FLAC is decoded on the source and casted in PCM : you get FLAC quality.
- In case you cast local MP3 files directly : usually MP3 is transmitted untouched if the renderer can read MP3, else the MP3 is decoded on the source and casted in PCM : you get MP3 quality.
- In case you cast Deezer, Qobuz, Tidal, ... : the renderer get the files directly from the music service : AAC for Spotify, MP3 or FLAC for Deezer, etc... : you get exactly the quality of the music service.
- If you use the "share audio" (aka Smartview for Samsung, or Google Home Screen Sharing) : MP3 192kbps is used for casting : it means that no matter what quality you play while casting globally in "share audio" mode : the sound is reencoded in MP3 192. In case you play FLAC : you get 192kbps MP3 quality , In case you play AAC 256 : you get even worse : double LOSSY encoding.
So, Chromecast can be lossless for everything but the screen sharing : in this case, like for Bluetooth : you should never cast anything else than FLAC if you don't want your (for example AAC) file to be encoded once again in MP3 192, which is crappy double LOSSY encoding. Casting FLAC, even encoded in MP3 192 is not bad : not fantastic, but acceptable for most.