|
PipeWire 1.0.3
|
Device interface More...
Files | |
| file | device.h |
pipewire/device.h | |
Data Structures | |
| struct | pw_device_info |
| The device information. More... | |
| struct | pw_device_events |
| Device events. More... | |
| struct | pw_device_methods |
| Device methods. More... | |
| struct | pw_device |
Functions | |
| struct pw_device_info * | pw_device_info_update (struct pw_device_info *info, const struct pw_device_info *update) |
| Update and existing pw_device_info with update and reset. | |
| struct pw_device_info * | pw_device_info_merge (struct pw_device_info *info, const struct pw_device_info *update, bool reset) |
| Merge and existing pw_device_info with update. | |
| void | pw_device_info_free (struct pw_device_info *info) |
| Free a pw_device_info. | |
Device interface
| #define PW_TYPE_INTERFACE_Device PW_TYPE_INFO_INTERFACE_BASE "Device" |
| #define PW_DEVICE_PERM_MASK PW_PERM_RWXM |
| #define PW_VERSION_DEVICE 3 |
| #define PW_DEVICE_CHANGE_MASK_PROPS (1 << 0) |
| #define PW_DEVICE_CHANGE_MASK_PARAMS (1 << 1) |
| #define PW_DEVICE_CHANGE_MASK_ALL ((1 << 2)-1) |
| #define PW_DEVICE_EVENT_INFO 0 |
| #define PW_DEVICE_EVENT_PARAM 1 |
| #define PW_DEVICE_EVENT_NUM 2 |
| #define PW_VERSION_DEVICE_EVENTS 0 |
| #define PW_DEVICE_METHOD_ADD_LISTENER 0 |
| #define PW_DEVICE_METHOD_SUBSCRIBE_PARAMS 1 |
| #define PW_DEVICE_METHOD_ENUM_PARAMS 2 |
| #define PW_DEVICE_METHOD_SET_PARAM 3 |
| #define PW_DEVICE_METHOD_NUM 4 |
| #define PW_VERSION_DEVICE_METHODS 0 |
| #define pw_device_method | ( | o, | |
| method, | |||
| version, | |||
| ... ) |
| #define pw_device_add_listener | ( | c, | |
| ... ) pw_device_method(c,add_listener,0,__VA_ARGS__) |
| #define pw_device_subscribe_params | ( | c, | |
| ... ) pw_device_method(c,subscribe_params,0,__VA_ARGS__) |
Subscribe to parameter changes.
Automatically emit param events for the given ids when they are changed.
| ids | an array of param ids |
| n_ids | the number of ids in ids |
This requires X permissions on the device.
| #define pw_device_enum_params | ( | c, | |
| ... ) pw_device_method(c,enum_params,0,__VA_ARGS__) |
Enumerate device parameters.
Start enumeration of device parameters. For each param, a param event will be emitted.
| seq | a sequence number to place in the reply |
| id | the parameter id to enum or PW_ID_ANY for all |
| start | the start index or 0 for the first param |
| num | the maximum number of params to retrieve |
| filter | a param filter or NULL |
This requires X permissions on the device.
| #define pw_device_set_param | ( | c, | |
| ... ) pw_device_method(c,set_param,0,__VA_ARGS__) |
Set a parameter on the device.
| id | the parameter id to set |
| flags | extra parameter flags |
| param | the parameter to set |
This requires W and X permissions on the device.
| struct pw_device_info * pw_device_info_update | ( | struct pw_device_info * | info, |
| const struct pw_device_info * | update ) |
Update and existing pw_device_info with update and reset.
| struct pw_device_info * pw_device_info_merge | ( | struct pw_device_info * | info, |
| const struct pw_device_info * | update, | ||
| bool | reset ) |
Merge and existing pw_device_info with update.
| void pw_device_info_free | ( | struct pw_device_info * | info | ) |
Free a pw_device_info.