libpipewire-module-link-factory - Man Page

Link Factory

Description

Allows clients to create links between ports.

This module creates a new factory. Clients that can see the factory can use the factory name (link-factory) to create new link objects with pw_core_create_object(). It is also possible to create objects in the config file.

Object of the PW_TYPE_INTERFACE_Link will be created and a proxy to it will be returned.

As an argument to the create_object call, a set of properties will control what ports will be linked.

Module Name

libpipewire-module-link-factory

Module Options

Properties for the Create_object Call

Example Configuration

The module is usually added to the config file of the main pipewire daemon.

context.modules = [
{ name = libpipewire-link-factory
  args = {
      #allow.link.passive = false
  }
}
]

Config Override

A module.link-factory.args config section can be added to override the module arguments.

# ~/.config/pipewire/pipewire.conf.d/my-link-factory-args.conf

module.link-factory.args = {
    #allow.link.passive = false
}

Config Objects

To create an object from the factory, one can use the pw_core_create_object() method or make an object in the context.objects section like:

context.objects = [
{ factory = link-factory
    args = {
        link.output.node = system
        link.output.port = capture_2
        link.input.node  = my-mic
        link.input.port  = input_FR
    }
}

Note that this only works when the ports that need to be linked are available at the time the config file is parsed.

See Also

Referenced By

libpipewire-modules(7).

1.4.0 PipeWire