The mix sink points into the tls_fwd object, so we must not free it
during operation, such as when a connection error occurs.
Separate out object creation and connection setup functions. Reset
object state at connection error, but don't free the object.
Make reconnect attempt part of checking the connection state.
Change-Id: Ib551532c47236afe5ec22711fcc161a8535338e4
Move destination format information into the sink object.
Decode each codec directly to its matching output format and leave
resampling to the sinks.
Move managing of the adjusted multi-channel output format into the mix
context.
Make sure all inputs to a mix outputs use the same audio format.
Change-Id: Ib9f334443bfee26d59f2ede6e13ac80c66c1b57e