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

Info

1.6.9 PipeWire