[pulseaudio-discuss] [PATCH v2] core: Link virtual sinks and sources to their streams.

Tanu Kaskinen tanu.kaskinen at digia.com
Mon Feb 7 08:46:42 PST 2011


On Mon, 2011-02-07 at 18:35 +0200, Kaskinen Tanu wrote:
> This change doesn't add any functionality in itself, but it will be useful in
> the future for operating on chains of sinks or sources that are piggy-backing
> on each other.
> 
> For example, the PA_PROP_DEVICE_MASTER_DEVICE property could
> be handled in the core so that each virtual device doesn't have to maintain it
> separately. By using the origin_sink and destination_source pointers the core
> is able to see at stream creation time that the stream is created by a virtual
> device, and then update that device's property list using the name of the
> master device that the stream is being connected to. The same thing can be done
> also when the stream is being moved from a device to another, in which case the
> _MASTER_DEVICE property needs updating.

This second version of the patch adds links from filter sinks and
sources to their virtual stream connected to the master sink or source.
The first version only included links to the other direction. Originally
I planned to include the sink->input_to_master pointer in the main "flat
sink" patch, named sink->flat_sink_input there, but then I figured out
that it doesn't hurt to make the pointer more generic, and name it
accordingly. I'm not aware of other potential uses for the
sink->input_to_master pointer than the "flat sink" logic, though...

This second version of the patch also modifies module-echo-cancel, which
I missed in the first version for some reason.

The commit message is also clarified now.

-- 
Tanu




More information about the pulseaudio-discuss mailing list