Not sure how this will show on the site, but I have tried to put this down as I understand it with a few diagrams.
Firstly, using the API/White List scenario.
If you use Spotify now, then this is how it works with Chromecast. The user launches Spotify, logs on, selects a song/play list, The spotify App scans the network for spotify ready end points and Chromecast end points and presents them as available devices, the user presses play and the song is streamed directly from Spotify to the users end device, the mobile/desktop app just acts as a remote control and performs no audio processing. Google has a number of whitelisted services and note that the content is streaming from the cloud, not the local network.
Then using the Web RTC option as I believe VLC does
The user launches VLC, VLC scans the network looking for devices using uPNP and DIAL. The user selects an endpoint from the discovered list and VLC or the application sends the raw data to the Chromecast device and the Chromecast device turns it from Digital to Audio using its DAC (FLAC stream for example).
The App isn’t doing any work, the device is streaming the source file from its local storage or from a network share, so the device is doing a bit of work at this stage.
Then a possible Roon scenario which loads the server and therefore not every Roon application. Note I have no idea what the Roon guys are thinking of at this stage and I have nothing to do with Roon other than being a happy user.
In this scenario the roon server would do a background scan of Roon compatible end points as it might do now. On discovering a ChromeCast end point it adds it to the list. The user picks a play list and chooses an audio zone as they do now. The roon server has to decode the source file from FLAC (or whatever), apply any user selected signal processing (Equalisation, room correction etc) and then has to re-encode the resulting audio file into a format the Chromecast device understands such as FLAC/MP3/AAC etc. The Roon server then streams the resulting FLAC encoded file to the end point. At this stage note that the Roon Server would be decoding the original file, applying corrections and then re encoding the file all on the fly which would be a ton of work for the processor and I am not sure if it would be possible. The alternative would be for Roon not to decode the file at point (d.) and simply stream it to the Chromecast device (g.) which would be less work, but might break the Roon model.
All of the above are just my thoughts on the whole Chromecast thing and may be totally off base, so just something to think about.