Provided by: libpipewire-0.3-modules_1.2.3-1_amd64 bug

NAME

       libpipewire-module-protocol-native - Protocol Native

DESCRIPTION

       The native protocol module implements the PipeWire communication between a client and a
       server using unix local sockets.

       Normally this module is loaded in both client and server config files so that they cam
       communicate.

MODULE NAME

       libpipewire-module-protocol-native

MODULE OPTIONS

       The module supports the following arguments:

       • sockets: [ { name = 'socket-name', owner = 'owner', group = 'group', mode = 'mode',
         selinux.context = 'context' }, props = { ... }, ... ]

       Array of Unix socket names and (optionally) owner/permissions to serve, if the context is
       a server. If not absolute paths, the sockets are created in the default runtime directory.

       The props are copied directly to any client that connects through this server socket and
       can be used to configure special permissions.

       Has the default value [ { name = 'CORENAME' }, { name = 'CORENAME-manager' } ], where
       CORENAME is the name of the PipeWire core, usually pipewire-0.

       The permissions have no effect for sockets from Systemd socket activation. Those should be
       configured via the systemd.socket(5) mechanism.

GENERAL OPTIONS

       The name of the core is obtained as:

       • PIPEWIRE_CORE : the environment variable with the name of the core

       • core.name : in the context properties

       • a name based on the process id

       The context will also become a server if:

       • PIPEWIRE_DAEMON : the environment is true

       • core.daemon : in the context properties is true

       The socket will be located in the directory obtained by looking at the following
       environment variables:

       • PIPEWIRE_RUNTIME_DIR

       • XDG_RUNTIME_DIR

       • USERPROFILE

       The socket address will be written into the notification file descriptor if the following
       environment variable is set:

       • PIPEWIRE_NOTIFICATION_FD

       When a client connect, the connection will be made to:

       • PIPEWIRE_REMOTE : the environment with the remote name

       • remote.name : the property in the context.

       • The default remote named 'pipewire-0'

       A Special remote named 'internal' can be used to make a connection to the local context.
       This can be done even when the server is not a daemon. It can be used to treat a local
       context as if it was a server.

EXAMPLE CONFIGURATION

       context.modules = [
       { name = libpipewire-module-protocol-native }
       ]

       context.modules = [
        { name = libpipewire-module-protocol-native,
          args = {
              sockets = [
                  { name = "pipewire-0" }
                  { name = "pipewire-0-manager" }
                  { name = "pipewire-1"
                    props = { my.connection = "the other one" }
                  }
              ]
          }
        }
       ]