libpipewire-module-pulse-tunnel(7) Miscellaneous Information Manual libpipewire-module-pulse-tunnel(7)

libpipewire-module-pulse-tunnel - Pulse Tunnel

The pulse-tunnel module provides a source or sink that tunnels all audio to a remote PulseAudio connection.

It is usually used with the PulseAudio or module-protocol-pulse on the remote end to accept the connection.

This module is usually used together with module-zeroconf-discover that will automatically load the tunnel with the right parameters based on zeroconf information.

libpipewire-module-pulse-tunnel

  • tunnel.mode: the desired tunnel to create, must be source or sink. (Default sink)
  • pulse.server.address: the address of the PulseAudio server to tunnel to.
  • pulse.latency: the latency to end-to-end latency in milliseconds to maintain (Default 200).
  • stream.props: Extra properties for the local stream.

Options with well-known behavior.

  • remote.name
  • audio.format
  • audio.rate
  • audio.channels
  • audio.position
  • node.latency
  • node.name
  • node.description
  • node.group
  • node.virtual
  • media.class
  • target.object to specify the remote node.name or serial.id to link to

context.modules = [
{   name = libpipewire-module-pulse-tunnel
    args = {
        tunnel.mode = sink
        # Set the remote address to tunnel to
        pulse.server.address = "tcp:192.168.1.126"
        #pulse.latency = 200
        #audio.rate=<sample rate>
        #audio.channels=<number of channels>
        #audio.position=<channel map>
        #target.object=<remote target name>
        stream.props = {
            # extra sink properties
        }
    }
}
]
1.0.5 PipeWire