libpipewire-module-pipe-tunnel - Man Page

Unix Pipe Tunnel

Description

The pipe-tunnel module provides a source or sink that tunnels all audio to or from a unix pipe respectively​.

Module Name

libpipewire-module-pipe-tunnel

Module Options

When tunnel​.mode is capture, a capture stream on the default source is created​. The samples captured from the source will be written to the pipe​.

When tunnel​.mode is sink, a sink node is created​. Samples played on the sink will be written to the pipe​.

When tunnel​.mode is playback, a playback stream on the default sink is created​. The samples read from the pipe will be played on the sink​.

When tunnel​.mode is source, a source node is created​. Samples read from the the pipe will be made available on the source​.

tunnel​.may-pause allows the tunnel stream to become inactive (paused) when there is no data in the fifo or when the fifo is full​. For capture and playback tunnel​.mode this is by default true​. For source and sink tunnel​.mode, this is by default false​. A paused stream will consume no CPU and will resume when the fifo becomes readable or writable again​.

When pipe​.filename is not given, a default fifo in /tmp/fifo_input or /tmp/fifo_output will be created that can be written and read respectively, depending on the selected tunnel​.mode​.

General Options

Options with well-known behavior​.

When not otherwise specified, the pipe will accept or produce a 16 bits, stereo, 48KHz sample stream​.

Example Configuration of a Pipe Playback Stream

# ~/​.config/pipewire/pipewire​.conf​.d/my-pipe-tunnel​.conf

context​.modules = [
{   name = libpipewire-module-pipe-tunnel
    args = {
        tunnel​.mode = playback
        #tunnel​.may-pause = true
        # Set the pipe name to tunnel to
        pipe​.filename = "/tmp/fifo_output"
        #audio​.format=<sample format>
        #audio​.rate=<sample rate>
        #audio​.channels=<number of channels>
        #audio​.position=<channel map>
        #target​.object=<remote target node>
        stream​.props = {
            # extra sink properties
        }
    }
}
]

Info

1.6.9 PipeWire