mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-06 13:30:01 -05:00
A virtual source is usually implemented with a null-sink, it looks
like a source to pulseaudio clients but just forwards what it gets
as input.
Make sure the port names make sense.
You can use the null sink now as:
pactl load-module module-null-sink sink_name=source object.linger=1
media.class=Audio/Source/Virtual channel_map=FL,FR,RL,RR
This creates a node with "input" and "capture" ports and looks
like a virtual source for pulseaudio clients.
pactl load-module module-null-sink sink_name=source object.linger=1
media.class=Audio/Sink channel_map=FL,FR,RL,RR
This creates a node with "playback" and "monitor" ports and looks
like a virtual sink for pulseaudio clients.
pactl load-module module-null-sink sink_name=source object.linger=1
media.class=Audio/Duplex channel_map=FL,FR,RL,RR
This creates a node with "playback" and "capture" ports and looks
like a virtual source and sink for pulseaudio clients.
|
||
|---|---|---|
| .. | ||
| module-adapter | ||
| module-client-device | ||
| module-client-node | ||
| module-metadata | ||
| module-profiler | ||
| module-protocol-native | ||
| module-protocol-pulse | ||
| module-session-manager | ||
| spa | ||
| meson.build | ||
| module-access.c | ||
| module-adapter.c | ||
| module-client-device.c | ||
| module-client-node.c | ||
| module-link-factory.c | ||
| module-metadata.c | ||
| module-portal.c | ||
| module-profiler.c | ||
| module-protocol-native.c | ||
| module-protocol-pulse.c | ||
| module-rtkit.c | ||
| module-session-manager.c | ||