Wim Taymans
8b048279f1
pulse-server: handle error during create
...
Use the create-tag in the error when the stream fails. This way the
client can know when something failed during create.
See #430
2020-12-01 09:37:40 +01:00
Wim Taymans
b8300c663b
improve some errors
...
Silence some -ENOENT warnings, they can happen when the object we
are introspecting is destroyed
2020-11-29 16:22:50 +01:00
Wim Taymans
3b20e0f9e7
pulse-server: fix lookup of module
2020-11-26 09:49:16 +01:00
Wim Taymans
0fe77d39ce
pulse-server: fallback to name if no description is set
2020-11-26 09:27:19 +01:00
Wim Taymans
cc7f91db19
pulse-server: actually wait for sync to complete
...
Wait for sync to complete before we start emiting new objects.
Add some more debug
2020-11-24 11:28:29 +01:00
Wim Taymans
2cd59fdf8b
pulse-server: don't send invalid format and channels
2020-11-24 10:18:17 +01:00
Wim Taymans
0c66b5677b
pulse-server: init volume/channelmap correctly in stream-restore
2020-11-24 09:54:42 +01:00
Wim Taymans
2d71d02f40
pulse-server: only debug packets, not data messages
...
See #405
2020-11-24 09:10:32 +01:00
Haochen Tong
648dfc0250
pulse-server: end the statement with semicolon
2020-11-23 23:27:53 +01:00
Wim Taymans
d56e759166
pulse-server: don't send NULL profile name in port info
2020-11-23 17:11:43 +01:00
Elliott Sales de Andrade
6224068586
Fix some possible leaks.
2020-11-23 15:36:08 +00:00
Wim Taymans
f95f278067
pulse-server: use channelmap
...
Convert to an from pulse enum to id in the message layer so that we
can always just deal with native spa types.
Use the channelmap in stream-restore
Parse the channelmap from properties.
2020-11-23 15:37:18 +01:00
Wim Taymans
2b8cc5b587
pulse-server: implement stream restore extension
...
Makes the system sounds volume settings work
See #377
2020-11-23 10:46:02 +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
d5680a119f
pulse-server: Fix REQUEST missing bytes
...
Also count the amount of underrun bytes as missing so that we request
them from the client.
Provide one fragment of minreq when we underrun instead of the full
buffer size.
Fixes #395
2020-11-20 14:57:18 +01:00
Wim Taymans
12d831fc39
pulse-server: request dbus name
...
Request the org.pulseaudio.Server dbus name. This makes gnome-shell
reconnect automatically.
2020-11-20 11:52:57 +01:00
Wim Taymans
4d085816ef
pulse-server: improve debug
2020-11-19 17:45:19 +01:00
Wim Taymans
505ae98b0f
pulse-server: fix sink-input mute
2020-11-19 11:56:51 +01:00
Wim Taymans
908dc6b10f
pulse-server: don't add queued samples
...
It makes things worse
2020-11-18 20:21:14 +01:00
Wim Taymans
3eca7557f8
pulse-server: fix timestamp in latency query
...
We are supposed to place the current timeofday as the timestamp
in the reply.
2020-11-18 20:15:20 +01:00
Wim Taymans
4cc466ad64
pulse-server: filter out redundant subscribe messages
2020-11-18 15:00:38 +01:00
Wim Taymans
c50b5bb072
pulse-server: implement flush for record stream
2020-11-17 17:39:30 +01:00
Wim Taymans
cd25a1e5e7
pulse-server: PLAY_SAMPLE does not need a valid sink id or name
2020-11-17 17:14:28 +01:00
Wim Taymans
813af52072
pulse-server: play the sample on the right sink
2020-11-17 12:59:09 +01:00
Wim Taymans
ff1b49eb81
pulse-server: add skeleton extension for stream-restore
...
Makes the system-volume slider show up again in pavucontrol
and gnome-control-setting. Does not work yet, though.
2020-11-17 12:33:09 +01:00
Wim Taymans
11a57c9302
pulse-server: add debug level to message_dump
2020-11-17 12:33:09 +01:00
Wim Taymans
f818da96fc
pulse-server: use define for monitor flags
2020-11-17 12:33:09 +01:00
Wim Taymans
242cddd371
pulse-server: add support for proplist value conversion
2020-11-17 12:33:09 +01:00
Wim Taymans
5849bd7c60
pulse-server: try to flush immediately
...
When we queued new data and were not flushing already, try to flush
the data immediately.
2020-11-16 17:05:11 +01:00
Wim Taymans
0fada77433
pulse-server: delay flushing messages
...
Delay flush of messages to better match pulseaudio. We can later
also filter duplicates and redundant events.
2020-11-16 16:59:55 +01:00
Wim Taymans
55bd34c9e7
pulse-server: always ask for tlength samples after flush
2020-11-16 15:47:13 +01:00
Wim Taymans
dcda6c259f
pulse-server: send drain only once
2020-11-16 15:42:04 +01:00
Wim Taymans
af41e3423d
pulse-server: handle recv of 0 bytes
...
0 bytes from recv means EOS and we can disconnect the client instead
of looping forever.
2020-11-16 15:36:51 +01:00
Wim Taymans
9f9be7d7f2
pulse-server: clean up killed and errored streams
...
Make a stream in error or unconnected as done and run the cleanup
loop to destroy them. Fixes leaks caused by pavucontrol.
2020-11-16 13:31:15 +01:00
Wim Taymans
78ab2c3cad
pulse-server: pass right object to TAG_PROPLIST
2020-11-16 11:10:41 +01:00
Wim Taymans
0ff7321a65
pulse-server: send right id in PLAY_SAMPLE reply
...
Also handle errors.
2020-11-15 21:02:49 +01:00
Wim Taymans
80e063c6bc
pulse-server: add duration to sample
2020-11-14 13:36:26 +01:00
Wim Taymans
8f1eed6ab1
pulse-server: implement sample introspection
2020-11-14 13:31:07 +01:00
Wim Taymans
827d3ff271
pulse-server: set refcount on sample
2020-11-14 13:30:35 +01:00
Wim Taymans
13a1049abf
pulse-server: also handle @DEFAULT_*@ in GET_*_INFO
2020-11-13 20:20:33 +01:00
Wim Taymans
b7b7c3817e
pulse-server: use cleanup event
...
Signal event to trigger cleanup from places where we are not allowed
to destroy objects, like from their signals.
2020-11-13 19:33:12 +01:00
Wim Taymans
b447167339
pulse-server: actually play the sample from the cache
2020-11-13 18:19:56 +01:00
Wim Taymans
1d8bef1133
pulse-server: fix check type, then check info
...
If the object is not of the right type, the info might not be of
the right type and we should not deref it.
2020-11-13 17:38:23 +01:00
Wim Taymans
8b9d398df6
pulse-server: implement sample cache
2020-11-13 13:28:46 +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
10207456f0
media-session: don't start pulse-bridge automatically
...
Don't start the pulse-bridge automatically because we don't
know what socket to listen on.
Also, listen by default on a safe socket, not used by pulseaudio.
2020-11-12 16:50:24 +01:00
Wim Taymans
024b9dc0ca
pulse-server: remove unused code
...
We already checked the systemd sockets above and never call is_stale
for them.
2020-11-12 15:58:42 +01:00
Wim Taymans
044876b51c
pulse-server: improve error message
2020-11-12 15:44:05 +01:00
Wim Taymans
4eb3cc37ea
pulse-server: add socket activation
2020-11-12 15:35:35 +01:00
Wim Taymans
5bfc3b90ef
pulse-server: improve error log
2020-11-12 15:13:33 +01:00