Link Audio channels are demand-driven: a sink only transmits when at least one source subscribes
Link Audio implements channels with a sink/source pattern. A sink is the publishing side: creating a sink announces a new channel to the session, and the sink captures audio, converts it to the wire format, and transmits it. A source is the receiving side: creating a source for a given channel ID subscribes to it and begins receiving audio buffers asynchronously via callbacks on Link-managed threads. Multiple peers can create sources for the same channel, giving one-to-many distribution. The key efficiency property is that a sink only sends data when at least one corresponding source exists — if nobody is listening, no network bandwidth is consumed. This lets apps create sinks preemptively without cost until someone subscribes.
Examples
An app creates a sink for its master output on startup (channel announced, but silent on the wire). When a second app creates a source for that channel ID, the sink begins transmitting; buffers arrive at the source via callbacks. If the source disconnects, transmission stops and bandwidth drops to zero.
Assessment
Explain why creating a Link Audio sink consumes no network bandwidth until a source subscribes. How does the sink/source model support one-to-many audio distribution?