George Kiagiadakis
d8a42d2ec3
Revert "lib: return empty WpProperties if the info struct has no properties on SM objects"
...
This reverts commit 917a019b01 .
2020-06-01 18:29:28 +03:00
George Kiagiadakis
917a019b01
lib: return empty WpProperties if the info struct has no properties on SM objects
2020-06-01 17:48:54 +03:00
George Kiagiadakis
a7d657a196
object-manager: do not accept globals without a WpProxy subclass
2020-06-01 17:48:31 +03:00
George Kiagiadakis
6aba49f9e3
properties: implement a wp_properties_iterate() method
2020-06-01 12:07:36 +03:00
George Kiagiadakis
1983b6fb33
tools: refactor wireplumber-cli and rename it to wpctl
2020-05-31 12:38:11 +03:00
George Kiagiadakis
a30761c2f4
registry: forcibly add 'object.id' on all global properties
...
so that we can filter proxies by id on object managers
2020-05-31 12:19:47 +03:00
George Kiagiadakis
564e8a0db3
object-manager: fix iterator fold object access
2020-05-31 12:18:29 +03:00
George Kiagiadakis
5dfe688c35
endpoint: enable FEATURE_PROPS on streams when FEATURE_STREAMS is enabled
2020-05-31 12:17:52 +03:00
George Kiagiadakis
9ae7071134
props: refactor WpSpaProps into WpProps
...
- make it a GObject so that it can emit its own signals
and so that it can be shared between multiple proxies
- share the WpProps instance between endpoints, endpoint-streams
and their underlying nodes
- introduce the concept of the caching mode that redirects _set
to _set_param of the proxy that actually has the props; this allows
shared WpProps to actually set changes on the correct proxy
in a transparent way
- change methods to consume the ref of the pod and reflect that
also on wp_proxy_set_prop()
- refactor the export process on endpoints & endpoint-streams
so that they always get all the required features (info, props, bound)
and make it async so that we can take time to prepare the underlying
node to have FEATURE_PROPS
- update the props & endpoint unit tests, bringing back all the
checks that the endpoint unit test used to have
2020-05-29 18:47:16 +03:00
Julian Bouzas
ef47954e07
m-config-static-nodes: use wireplumber log
2020-05-29 08:43:36 -04:00
Julian Bouzas
908a7ffbc3
src: config: add midi.node to create the MIDI node at startup
2020-05-29 08:43:36 -04:00
Julian Bouzas
da63c05e76
m-config-static-nodes: remove unneeded 'conected' callback and create static nodes when the plugin is activated
2020-05-29 08:43:36 -04:00
Julian Bouzas
9667cccb5a
modules: move monitor device activation logic into a new device-activation module
2020-05-26 11:52:44 -04:00
Julian Bouzas
5a9cb7688a
m-monitor: set the device id property when creating nodes
2020-05-26 11:29:18 -04:00
Julian Bouzas
3ad875a624
m-monitor: add device reservation data when device is augmented
2020-05-26 11:29:18 -04:00
Julian Bouzas
daa8b8f5c0
modules: add node-suspension module
...
This module suspends a node if idle for at least 3 seconds
2020-05-26 11:29:18 -04:00
Julian Bouzas
182d4d6276
node: add send command API
2020-05-26 11:29:18 -04:00
Julian Bouzas
469c35edc8
m-monitor: remove monitor prefix from dbus device reservation API
2020-05-26 11:29:18 -04:00
Julian Bouzas
ac87822d6a
m-monitor: rename device reservation data API to reserve device
2020-05-26 11:28:51 -04:00
Julian Bouzas
bc385d24bd
m-monitor: rename node reservation data API to reserve node and move it to a separated file
2020-05-26 10:44:16 -04:00
Julian Bouzas
3ea183a53d
m-jack-device: port to WpPlugin
2020-05-25 17:04:25 -04:00
Julian Bouzas
0d93ccff8c
m-monitor: port to WpPlugin
2020-05-25 17:04:25 -04:00
George Kiagiadakis
666cd10b6d
algorithms: cleanup unused code
2020-05-25 19:06:52 +03:00
George Kiagiadakis
162c1d4574
session: fix the default-endpoint prop
...
* Use a direction instead of a string prop id
* Emit default-endpoint-changed again
* Get rid of the useless virtual methods
2020-05-25 18:56:21 +03:00
George Kiagiadakis
8a94937b2a
proxy: refactor how PARAM_Props/PropInfo are handled
...
+ rename FEATURE_CONTROLS to FEATURE_PROPS
+ add accessor for the standard spa_param_info (info->params)
+ hide the low-level params API that nobody uses
2020-05-25 18:54:41 +03:00
George Kiagiadakis
b8d1f40111
iterator: add a generic GPtrArray iterator implementation
2020-05-25 18:54:41 +03:00
George Kiagiadakis
1f2e2b7fc4
debug: add mechanism to debug spa pods
...
-> wp_trace_boxed (WP_TYPE_SPA_POD, pod, "some message");
2020-05-25 18:54:41 +03:00
Julian Bouzas
93ce770052
config-policy: handle the endpoint node target property when finding a target
2020-05-21 09:47:56 -04:00
Julian Bouzas
5af66bb547
modules: copy node target property in adapter and simple-node-endpoint
2020-05-21 09:47:56 -04:00
Julian Bouzas
bf4116f7d2
config-endpoint: create extra si-monitor-endpoint if enable-monitor is true
2020-05-21 09:47:56 -04:00
Julian Bouzas
ab1d8aafde
modules: add new si-monitor-endpoint module
2020-05-21 09:47:56 -04:00
Julian Bouzas
ee4e40ba1e
modules: add 'monitor' context when getting ports in adapter and simple-node-endpoint
2020-05-21 09:47:56 -04:00
Julian Bouzas
d5f167b7db
modules: fix small direction issue when getting the ports in adapter and simple-node-endpoint
2020-05-21 09:47:56 -04:00
Julian Bouzas
2660e13c4a
config: enable monitor ports on audio sinks
2020-05-21 09:47:56 -04:00
George Kiagiadakis
b807b666a0
debug: don't crash if an object is NULL in wp_*_object() and point it out in the log
...
by using G_TYPE_NONE (== 1), we can pass this in the log handler
to point out the fact that we expected something but it's null
As a bonus, a null object always gets printed in red because that's
the first color in object_colors
2020-05-20 18:27:09 +03:00
George Kiagiadakis
a54ff34863
m-client-permissions: port to WpPlugin
2020-05-20 18:26:36 +03:00
George Kiagiadakis
7428d20c94
proxy: add a wp_proxy_get_property() method to get a single pw property
2020-05-20 18:08:35 +03:00
George Kiagiadakis
b0d17413dc
modules: remove obsolete module-pipewire file
2020-05-20 17:29:39 +03:00
Julian Bouzas
3fa1334113
docs: update configuration.md
2020-05-20 13:14:53 +03:00
George Kiagiadakis
29886ccf74
docs: improve documentation
2020-05-19 17:54:10 +03:00
Julian Bouzas
1f4d88b915
configuration: fix memleak when reloading
2020-05-19 10:18:51 -04:00
Julian Bouzas
c6f24fac8a
main: disconnect core before exiting
...
Disconnecting core finishes all pending tasks, which is needed in order to avoid
possible leaks if some tasks are still pending when exiting.
2020-05-19 10:18:51 -04:00
Julian Bouzas
d9ffc1c318
core: finish all pending tasks when core proxy is destroyed
2020-05-19 10:18:51 -04:00
Julian Bouzas
bd0218c3ee
tests: base-test-fixure: make sure core is done before destroying it
2020-05-19 10:18:51 -04:00
Julian Bouzas
522d32224e
modules: config-policy: rename link-activated signal to link-created
2020-05-19 10:18:51 -04:00
Julian Bouzas
bb82b0832e
tests: config-policy: make sure the link is activated before stopping
2020-05-19 10:18:51 -04:00
Julian Bouzas
e1686eb169
dbus-device-reservation: fix memleak when completing release
2020-05-19 10:18:51 -04:00
Julian Bouzas
6a73179d57
si-standard-link: fix memleak when creating links
2020-05-19 10:18:51 -04:00
Julian Bouzas
1acdb2a89b
si-adapter: use a different g_autoptr for port_format
2020-05-19 10:18:51 -04:00
Julian Bouzas
b2431132ca
si-convert: fix memleak when getting the node properties
2020-05-19 10:18:51 -04:00