Julian Bouzas
fc7ebc2c31
proxy: add global_id property
2019-06-19 09:07:00 -04:00
George Kiagiadakis
5d93cf338b
remote-endpoint: disconnect the control-value change callback when the proxy is destroyed
...
This avoids the theoretical crash that would happen if you change
the control value on an endpoint whose client-endpoint proxy has
already been destroyed
2019-06-18 19:42:19 +03:00
Julian Bouzas
3feddf5579
modules: fix proxy ref-count
2019-06-18 08:34:54 -04:00
George Kiagiadakis
ab73fd6eb0
endpoint: maintain a weak ref to the core since construction time
...
+ add a method to retrieve the core
+ change the register function to not require the core as a parameter
2019-06-18 09:23:40 +03:00
Julian Bouzas
1f2386c08d
module-pipewire and simple-endpoint: use the new Proxy API
2019-06-17 14:37:14 -04:00
George Kiagiadakis
7b9e8a030e
lib: add a new WpRemote base class and move the pw_remote glue into a new WpRemotePipewire
...
This is a cleaner way to interface with the remote pipewire daemon.
The WpRemote base class can be subclassed also for interfacing
with other daemons (hardware-specific managers, etc)
2019-06-17 20:28:06 +03:00
Julian Bouzas
2c76103c30
modules: use the new proxy API
2019-06-17 10:42:59 -04:00
George Kiagiadakis
8f544329b9
remote-endpoint: do not require a stream id on controls
...
the stream id is optional, a control may apply globally to all streams
2019-06-11 13:28:33 +03:00
George Kiagiadakis
80831c9320
Cleanup trailing whitespaces
2019-06-11 10:11:24 +03:00
Julian Bouzas
f1d1bff593
modules: add softdsp-endpoit and endpoint linking implementations
2019-06-10 11:51:18 -04:00
George Kiagiadakis
d4ddad18b3
m-pipewire/simple-endpoint: implement volume & mute controls
2019-06-05 17:20:57 +03:00
George Kiagiadakis
0bc48e27c1
remote-endpoint: print error string in set_param implementation
2019-06-05 17:19:38 +03:00
George Kiagiadakis
1d9eaea5c2
remote-endpoint: fix de-serialization of control id (Int instead of Id)
2019-06-05 17:18:55 +03:00
George Kiagiadakis
36bc1795ca
Relicense to MIT
2019-05-31 12:13:12 +03:00
George Kiagiadakis
c319d40411
remote-endpoint: serialize control & stream IDs as int
...
SPA_POD_Id is reserved for spa type IDs, not arbitrary implementation IDs
2019-05-28 12:24:59 +03:00
George Kiagiadakis
8874e453a5
remote-endpoint: adjust to pw_endpoint api changes
2019-05-28 11:38:28 +03:00
George Kiagiadakis
3aa7d6ce78
lib: remove the session-manager object and register endpoints as globals
2019-05-26 19:21:27 +03:00
George Kiagiadakis
f0d592c7f3
module-pipewire: export endpoints to pipewire
2019-05-25 23:24:55 +03:00
George Kiagiadakis
d2ccd2996b
Merge branch 'alsa-endpoints' of gitlab.freedesktop.org:julian/wireplumber
2019-05-25 23:17:20 +03:00
George Kiagiadakis
8e7f84d888
endpoint: add methods to register to the SM and use them in simple-endpoint
...
This changes the registration point to be the endpoint and not the
session manager, as it seems easier to implement (the implementation
will not need to keep a pointer to the session manager around)
2019-05-24 17:19:58 +03:00
Julian Bouzas
92dc9d5cdf
Fix no return statement warnings
2019-05-22 16:59:56 -04:00
George Kiagiadakis
e1ef9b1128
module-pipewire: implement client node detection and simple-endpoint creation
2019-05-22 16:49:21 +03:00
George Kiagiadakis
5f853d0e53
endpoint: refactor slightly the public API
...
* Make streams a GVariant array, for future-proofness
* Add API for controls (volume, mute, brightness, contrast, etc...)
* Remove API for profiles (it's not well-thought; may be re-added
in the future)
2019-05-21 18:27:07 +03:00
George Kiagiadakis
447c968846
Refactor everything!
...
After discussing things at the AGL May 2019 F2F meeting
and reflecting on the initial design of WirePlumber,
it became clear that it needed a fresh start.
2019-05-17 13:34:07 +03:00