Wim Taymans
09d373f094
0.3.16
2020-11-19 16:27:20 +01:00
Wim Taymans
55982c75db
pulse-server: make sure we always have 1 profile
...
Synthesize an off profile and make it the active profile if
we don't have any profiles.
See #393
2020-11-19 13:27:21 +01:00
Wim Taymans
fb44d3428c
jack: block some cases
...
Refuse to run when we run in the daemon, we can't really do a blocking
connect to the daemon from its main thread.
Also refuse to run when we detect an old pipewire libaray. Blocks the
case where some app linked against 0.2 wants to use the replacement
libjack.so.
2020-11-19 12:37:10 +01:00
Wim Taymans
6a244592a0
main: set PIPEWIRE_INTERNAL env
...
So that we can detect if we running in the daemon
2020-11-19 12:36:14 +01:00
Wim Taymans
d2c2edb7ce
protocol-native: rework resume of busy client
...
If a client becomes unbusy again, signal a resume event so that the
messages are processed in the next mainloop iteration. This gives the
current iteration time to perform cleanups if needed.
Remove the look hook and always do flushing with an IO_OUT event. Rework
some things so that we can flush right after processing input without
having to go through a loop iteration.
See #298
2020-11-19 11:57:36 +01:00
Wim Taymans
505ae98b0f
pulse-server: fix sink-input mute
2020-11-19 11:56:51 +01:00
Wim Taymans
7434986452
context: return -ENOENT for destroyed globals
...
Set the destroyed flag on globals and make sure they are not
available anymore during the signal emissions. One such instance
is where a global is destroyed, the resources are destroyed,
a waiting client is resumed, the clients asks to bind to the
global and causes an error.
See #298
2020-11-19 11:34:44 +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
38763da20f
pipewire: also set journal log level
2020-11-18 17:43:24 +01:00
Wim Taymans
04aa5472d3
journal: make it possible to set level from info
2020-11-18 17:42:47 +01:00
Wim Taymans
cb203e38c3
pulse-server: make sure active_profile_name is not NULL
...
Fixes #390
2020-11-18 17:19:17 +01:00
Wim Taymans
1908c88cfc
manager: notify of changed sink/source
...
When the Route param changes on the card, find the associated
device and mark it as modified. Fixes volume changes in gnome-shell
and pavucontrol.
See #377
See #298
2020-11-18 17:07:03 +01:00
Wim Taymans
f7162799f6
message: add module-stream-restore.id property
...
This should contain the key used to restore the stream volumes and
setting and is used by pavucontrol and gnome-volume-control to
ignore event streams. Fixes slider in pavucontrol and maybe also
the weird volumes in gnome-shell.
See #377
2020-11-18 15:51:40 +01:00
Wim Taymans
4cc466ad64
pulse-server: filter out redundant subscribe messages
2020-11-18 15:00:38 +01:00
Wim Taymans
935851a6a6
spa: add safe_reverse function
2020-11-18 15:00:01 +01:00
Wim Taymans
89cb39badd
pipewire-pulse: fix help string
2020-11-17 21:04:02 +01:00
Wim Taymans
7ac23c8b82
improve some docs about options
...
See #387
2020-11-17 21:00:17 +01:00
Wim Taymans
c50b5bb072
pulse-server: implement flush for record stream
2020-11-17 17:39:30 +01:00
Wim Taymans
8c0f27c016
audioadapter: emit xrun when source can't produce data
2020-11-17 17:18:14 +01:00
Wim Taymans
79fb95bf90
stream: implement Flush
...
Flush out pending samples in the resampler
Set the io area status to _OK so that buffers are recycled and
new buffers produced.
2020-11-17 17:15:26 +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
01b473e695
protocol-native: handle peersec errors better
...
Only warn if something is really wrong otherwise just log with
info and don't set the property.
Fixes #385
2020-11-17 13:22:04 +01:00
Wim Taymans
14f68565ad
protocol-native: refactor handle client errors
...
So that we don't spam the log with warnings
See #385
2020-11-17 13:09:49 +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
573e2afd5e
bluez5: fix compilation of fallback Hsphfpd backend
2020-11-16 20:27:55 +01:00
Frédéric Danis
6308c5d806
bluez5: backend-hsphfpd: Add mSBC support
...
mSBC can be enabled by passing "bluez5.msbc-support=true" parameter to
pipewire-media-session.
mSBC is automatically selected if remote device supports it.
2020-11-16 18:15:39 +01:00
Frédéric Danis
7d28b51713
bluez5: Add mSBC support to sco-source
...
This has been tested with a UART Bluetoth chipset, on a Raspberry Pi 3.
It may work with USB Bluetoot chipset/dongle.
2020-11-16 18:15:39 +01:00
Frédéric Danis
1759aa834f
bluez5: Add mSBC support to sco-sink
...
This has been tested with a UART Bluetoth chipset, on a Raspberry Pi 3.
It doesn't seem to work with USB Bluetooth chipset/dongle.
2020-11-16 18:15:39 +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
0e34c552e9
stream: reset counters to 0 when flushing
2020-11-16 15:19:27 +01:00
Wim Taymans
0d9cc9e36e
loop: always place the invoke item in the queue
...
Always place the invoke item in the queue and then either signal the
other thread or flush the queue when not already flushing.
2020-11-16 15:16:20 +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
6fa622d2d9
policy-node: only reconnect to given path_id
...
When the node is not found and we are not allowed to reconnect to
something else, error.
2020-11-16 13:28:35 +01:00
Wim Taymans
1d3e6b6772
pulse-server: map some properties
...
Fixes the icon names.
See #377
2020-11-16 11:29:07 +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
f42da492f9
warn about lock just once
2020-11-14 21:21:20 +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
Georges Basile Stavracas Neto
ee82bfe5fb
pulse-server: Correctly unref sample
...
Decrease the actual ref counter, instead of the pointer
value.
2020-11-13 21:29:22 -03:00