logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

libpipewire-module-client-device - Client Device

Description

       Allow clients to export devices to the PipeWire daemon.

       This module creates an export type for the SPA_TYPE_INTERFACE_Device interface.

       With pw_core_export(), objects of this type can be exported to the PipeWire server. All actions performed
       on the device locally will be visible to connecteced clients.

       In some cases, it is possible to use this factory directly. With pw_core_create_object() on the client-
       device factory will result in a SPA_TYPE_INTERFACE_Device proxy that can be used to control the server
       side created DeviceImpl.

       Schematically, the client side Device is wrapped in the ClientDevice proxy and unwrapped by the server
       side resource so that all actions on the client side device are reflected on the server side device and
       server side actions are reflected in the client.

         client side proxy                            server side resource
       .------------------------------.            .----------------------------------.
       | SPA_TYPE_INTERFACE_Device    |            |  PW_TYPE_INTERFACE_Device        |
       |                              |  IPC       |.--------------------------------.|
       |                              | ----->     || SPA_TYPE_INTERFACE_Device      ||
       |                              |            |'--------------------------------'|

Example Configuration

       The module is usually added to the config file of the main PipeWire daemon and the clients.

       context.modules = [
       { name = libpipewire-module-client-device }
       ]

Module Name

       libpipewire-module-client-device

Module Options

       This module has no options.

Name

       libpipewire-module-client-device - Client Device

Properties For The Create_Object Call

       All properties are passed directly to the pw_context_create_device() call.

See Also

       • module-spa-device-factory: make nodes from a factory

PipeWire                                              1.4.5                  libpipewire-module-client-device(7)

See Also