Commit Graph

40 Commits

Author SHA1 Message Date
George Kiagiadakis
a63f2bb99b lib/wp: merge both WpRemote & WpRemotePipewire in WpCore
In practice we always create a remote and connect to pipewire.
Any other scenario is invalid, therefore, it is not justified
to be confused with so many classes for such small functionality.
This simplifies a lot the modules code.

Also, this commit exposes the pw_core and pw_remote objects
out of WpCore. This is in practice useful when dealing with low-level
pw and spa factories, which are used in the monitors. Let's not
add API wrappers for everything... Bindings will never use this
functionality anyway, since it depends on low level pipewire C API.
2019-09-07 17:55:46 +03:00
George Kiagiadakis
bf9cecd129 Merge branch 'master' into proxy-refactoring 2019-09-07 11:22:50 +03:00
Julian Bouzas
fd8414aad1 bluez: handle all bluetooth profiles 2019-09-02 09:56:42 -04:00
George Kiagiadakis
ac7086d156 modules: port to new WpProxy API 2019-08-29 21:21:33 +03:00
Julian Bouzas
ad8491df44 modules: destroy all alsa/bluez nodes when an alsa/bluez device is removed 2019-08-28 14:19:22 -04:00
Julian Bouzas
23cc1edc28 alsa-udev: cleaned module and set media class to Alsa/<direction> 2019-08-28 11:10:11 -04:00
Julian Bouzas
dcbf823a5a endpoint: add direction property and remove it from subclasses 2019-08-27 10:05:59 -04:00
Julian Bouzas
9a6e520721 bluez: create bluetooth endpoints 2019-08-26 11:31:38 -04:00
George Kiagiadakis
d4f882d731 Update for the pw_global "parent" concept removal 2019-08-19 15:24:00 +03:00
Julian Bouzas
fbf8de84fa modules: replace dsp class with stream, adapter and convert classes 2019-08-15 14:35:59 -04:00
Julian Bouzas
8d58243fa6 module-pw-alsa-udev: start the alsa monitor and create the alsa nodes 2019-08-13 14:26:38 -04:00
Julian Bouzas
96d940e94e softdsp-endpoint: always set name and check for alsa api when giving proper alsa name 2019-08-13 14:24:31 -04:00
Julian Bouzas
755f0bd862 modules: handle error if the endpoint proxies could not be created 2019-07-25 12:24:47 +03:00
George Kiagiadakis
7618b8b082 alsa-udev/softdsp-endpoint: make the stream names & count configurable 2019-07-09 13:20:39 -04:00
Julian Bouzas
5429d57cb1 endpoint-link: make contruction async 2019-06-28 12:33:00 -04:00
Julian Bouzas
e73553088b proxy: remove unneeded destroy signal 2019-06-27 07:23:20 -04:00
Julian Bouzas
7aded3a8c9 modules: unregister endpoints on global_removed instead of proxy destroyed 2019-06-26 12:37:19 -04:00
George Kiagiadakis
d6f6c3d677 softdsp-endpoint: give a proper name to the endpoint based on alsa properties 2019-06-26 12:51:22 +03:00
Julian Bouzas
be6256fb0a modules: make endpoint creation async 2019-06-24 11:17:43 -04:00
Julian Bouzas
d2b8337045 modules: use the registry from WpRemotePipewire 2019-06-20 12:59:34 -04:00
George Kiagiadakis
f2ac3cc6d9 modules: do not leak references to the endpoints at their construction time 2019-06-20 13:09:38 +03:00
Julian Bouzas
601749d721 audio-softdsp-endpoint: set module instead of core in the module data 2019-06-19 09:13:02 -04:00
Julian Bouzas
fc7ebc2c31 proxy: add global_id property 2019-06-19 09:07:00 -04:00
Julian Bouzas
a471a2df13 proxy: remove unneeded core reference 2019-06-18 10:18:21 -04:00
Julian Bouzas
42bdf3ee6d modules: unregister the endpoints when their proxy is destroyed 2019-06-18 10:10:20 -04:00
Julian Bouzas
3feddf5579 modules: fix proxy ref-count 2019-06-18 08:34:54 -04:00
George Kiagiadakis
0b3433d732 modules: fix some ref counting and memory {de-,}allocation issues 2019-06-18 10:02:01 +03: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
8877e0438d alsa-udev: fix minor bug 2019-06-17 14:26:24 -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
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
36bc1795ca Relicense to MIT 2019-05-31 12:13:12 +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
bf60614032 improve debug statements a bit 2019-05-26 12:36:20 +03:00
George Kiagiadakis
d91a7666b4 module-pw-alsa-udev: remove useless switch case statements 2019-05-26 12:03:10 +03:00
George Kiagiadakis
93c62ec392 module-pw-alsa-udev: register the endpoints 2019-05-26 12:01:40 +03:00
Julian Bouzas
21e9f0d98b alsa-udev: add listener to created audio softdsp endpoints when alsa nodes are created 2019-05-24 13:38:26 -04: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