UPnP controler (=TuneBrowser) determines which file to send based on only MIME information.
Before playback, controler sends SetAVTransportURI SOAP command to renderer. This command includes resource info like sample rate. If renderer accepts this command, then controler sends “Play” SOAP command.
On the other hand, UPnP media server (is also TuneBrowser) sends file when http get request is received.
Renderer can return error to controler as response of SOAP command.
These are almost all of the processes.