Commit graph

17 commits

Author SHA1 Message Date
Nicolai Syvertsen
7b773433f4 pipewire-pulse: add manager disconnect event
Drop client connections when pipewire goes away. pipewire-pulse daemon can remain running and pulseaudio clients will be able to connect again once pipewire is up and running.
2021-11-10 19:26:03 +00:00
Wim Taymans
7031471807 pulse-server: add property to make virtual nodes
Make a property to mark virtual nodes and use it to hide the client
id from the sink-input/source-output info in pulse-server.
2021-04-20 21:05:59 +02:00
Arun Raghavan
74140abada pulse-server: Factor out module code to compile independently
This starts breaking up the giant monolith that is the pulse-server.c
code into more manageable chunks by trying to split the module code into
individual compilation units.
2021-04-15 19:37:15 -04:00
Pauli Virtanen
132786c202 pulse-server: implement send_object_message
Use it for providing Bluez codec listing/switching interface.  It
currently works by just switching device profiles.
2021-03-20 23:30:38 +02:00
Björn Daase
5913eb098c treewide: fix issues found by codespell 2021-03-16 19:11:25 +00:00
Wim Taymans
82c452a93d pulse-server: expose sync method 2021-03-09 12:08:45 +01:00
Pauli Virtanen
ed9614077c pulse-server: implement node latency offset
Also add facility for storing user data on objects.
2021-02-18 11:33:45 +00:00
Pauli Virtanen
59452a0904 pulse-server: send server change events when default nodes change
Send server change events to subscribers, when default nodes change due
to some nodes being added/removed/changed, also if there is no metadata
change.  Make sure the event is consistent with the result from
find_device at the time.

Previously, these were not necessarily sent, or information from
find_device immediately after the event might not reflect the change
yet.
2021-01-23 07:17:19 +01:00
Wim Taymans
4f0f5fccc9 pulse-server: keep metadata for the routes
Pass all metadata objects to the pulse-server and keep track of
some. Keep route restore info in properties.
2020-11-23 10:44:12 +01:00
Wim Taymans
22cec7823e pulse-server: skip objects being created
Skip iterating over objects that still have pending updates.
Make sure we have all info and properties before we process
objects.

Fixes #376
2020-11-13 09:52:02 +01:00
Wim Taymans
18c57efb39 pulse-server: take type from info 2020-11-09 09:42:53 +01:00
Wim Taymans
b472abe65b pulse-server: improve GET_SERVER_INFO
We don't need to bind to the core object again, we can just use the
events on the manager core.
We don't actually have info when the Core is added so don't try to
use it to get defaults for the client.
Use the manager core info in server info.
2020-11-05 10:36:13 +01:00
Wim Taymans
c619d7851f pulse-server: add move and default sink/source
Clean up error handling, use errno everywhere and convert when needed.
2020-10-29 11:59:16 +01:00
Wim Taymans
124b1221a6 pulse-server: add more introspection
Emit new/change/remove events
Handle suspended state of peer
Handle direct_on_input record streams.
Place the tag in error messages
2020-10-27 14:57:15 +01:00
Wim Taymans
a372e4e90e pulse-server: add more introspection
Add default nodes support and subscription events when it changes.
Fix stream id.
Fix node lookup.
Fix node volume.
2020-10-26 13:28:45 +01:00
Wim Taymans
fdf3485902 pulse-server: add sink/source sink_input/source_output introspect 2020-10-25 19:51:42 +01:00
Wim Taymans
1cbad89862 pulse-server: add introspection of clients and modules
Add manager object to collect object info
Wait for object info until completing client connect
Implement clients and modules list and info.
2020-10-25 15:28:42 +01:00