Commit graph

4090 commits

Author SHA1 Message Date
Wim Taymans
a2bf4ce96e protocol: add security label to a client
Don't pass the ucred to the client construct, just set the properties
in the protocol.
Use the client properties to get ucred.
Add the security label to the client properties (from SO_PEERSEC)
2019-05-10 13:28:18 +02:00
Wim Taymans
3854f8557a protocol: add security label to a client
Don't pass the ucred to the client construct, just set the properties
in the protocol.
Use the client properties to get ucred.
Add the security label to the client properties (from SO_PEERSEC)
2019-05-10 13:12:22 +02:00
Wim Taymans
4e70cddf1d core: don't remove client resource in hello
Keep the client resource of a client around and make sure we don't
destroy it in hello.
2019-05-10 12:36:28 +02:00
Wim Taymans
e0eeedc369 core: don't send remove_id in hello
The hello method should also destroy the resources for a client but not
send a remove_id for them.
2019-05-10 12:09:26 +02:00
Wim Taymans
a804b71267 core: destroy all resources on hello
Destroy all resources (except the core) for a client when it
does a hello. This typically needs to be done after passing the
connection fd from one client to another.
2019-05-10 11:56:30 +02:00
Wim Taymans
a70fd80c2d fmtconvert: fix format enumeration
Rework the format enumeration so that it also return the other
rate/channels, even when using a canonical format.
2019-05-10 11:39:51 +02:00
Wim Taymans
1a7fcaf9c6 Fix cleanup 2019-05-10 11:15:48 +02:00
Wim Taymans
41ab051b68 fmtconvert: fix format enumeration
Even if the other pad is already negotiated, we can convert all
formats to F32.
2019-05-09 09:35:03 +02:00
Wim Taymans
ecde090a1f pod: remove type check, it causes errors 2019-05-09 09:34:23 +02:00
Wim Taymans
35c2aca706 remote: only remove the proxy id when it existed 2019-05-07 17:53:57 +02:00
Wim Taymans
9a842e4643 pipewiresrc: actually use the fd when set 2019-05-07 14:53:53 +02:00
Wim Taymans
5d2f0f5182 remote: only remove the proxy id when it existed 2019-05-06 17:48:23 +02:00
Wim Taymans
7670ee7eec core: destroy all resources on hello
Destroy all resources (except the core) for a client when it
does a hello. This typically needs to be done after passing the
connection fd from one client to another.
2019-05-06 17:05:05 +02:00
Wim Taymans
2b5c6fd676 list: add _consume method
Add safer way to destroy a list of objects.
2019-05-06 17:04:16 +02:00
Wim Taymans
fa0b4f9321 client: properties with "pipewire." prefix are read-only
Properties that start with "pipewire." can only be set once. This
prevents a client from overwriting the ucred or any of the other
protected properties once they are set by the core or a module.
2019-05-06 15:41:26 +02:00
Wim Taymans
3f5b3b7cb1 pipewiresrc: actually use the fd when set 2019-05-06 12:07:25 +02:00
Wim Taymans
e4be9837c4 v4l2: add Camera media.role 2019-04-30 15:54:29 +02:00
Wim Taymans
b01858931c v4l2: add camera media.role 2019-04-30 15:42:17 +02:00
Wim Taymans
636c02d38b audioconvert: fix native variable rate resampler 2019-04-30 15:14:05 +02:00
Wim Taymans
5ac383e7f7 alsa: improve capture slave resync
When we underrun, send out a buffer of 0 samples and catch up next
time.
Detect discont in the master and resync.
2019-04-29 10:00:42 +02:00
Wim Taymans
b43844e7c6 alsa: improve capture resync
Make sure we capture enough data even when the ringbuffer wraps
around.
Use the clock nsec to get timing, we don't need to get the new time.
Improve sync in capture.
2019-04-26 15:48:21 +02:00
Wim Taymans
317fd9fac5 alsa: handle quantum changes 2019-04-25 16:15:52 +02:00
Wim Taymans
9ec3e3ab6d private: set min quantum to 32
Going as low as 32 is possible now with the better clock rate
estimation.
2019-04-25 13:04:44 +02:00
Wim Taymans
6ce9b5acf7 jack: fix get_cycle_times 2019-04-25 13:03:19 +02:00
Wim Taymans
be5e79831c introspect: remove unused RUNNING state for a link 2019-04-25 12:56:17 +02:00
Wim Taymans
9bfffc009d core: only follow active nodes 2019-04-25 12:55:31 +02:00
Wim Taymans
cd779a1c93 splitter: disable passthrough in more cases
Also disable passthrough when we first negotiate output format/buffers
and passthrough is not possible because the output buffer does not
have the dynamic data flag set..
2019-04-25 12:54:03 +02:00
Wim Taymans
d8f39a7c02 alsa: improve clock slaving for source 2019-04-25 12:53:23 +02:00
Wim Taymans
f8513029a1 node: cleanup, rename slave list 2019-04-24 16:56:18 +02:00
Wim Taymans
9b1da77bfc node: remove obsolete enabled state
We will create/destroy nodes instead of enabled/disable
2019-04-24 15:39:29 +02:00
Wim Taymans
24f6fc2a34 alsa: handle master/slave changes 2019-04-24 15:38:06 +02:00
Wim Taymans
f2cdba1929 a2dp: handle slaving 2019-04-24 12:41:16 +02:00
Wim Taymans
bc85837e26 alsa: small cleanup 2019-04-24 12:40:58 +02:00
Wim Taymans
dcddd5080b submodule update 2019-04-23 17:42:55 +02:00
Wim Taymans
6cde4e76d3 jack: use server timestamp when we can 2019-04-23 17:42:17 +02:00
Wim Taymans
3b513fa7ae floatmix: remove some unused code 2019-04-23 17:37:46 +02:00
Wim Taymans
8dabd52807 audio-dsp: use audioconvert to get a resampler 2019-04-23 17:37:22 +02:00
Wim Taymans
2912d2506f audioconvert: improve resampler
Also emit port info the the merger monitor ports.
Proxy params and buffers to the right monitor ports.
fmtconvert does not always have dsp ports
Increase resampler output buffer sizes so that we can up and downsample.
Fix little off by one in native resampler.
Fix passthrough in speex resampler.
2019-04-23 17:34:27 +02:00
Wim Taymans
b7cc9ea102 alsa: improve rate control
Try to match the delay with the target delay. Use the rate to
adjust the timeout period for master or the resampler rate for slaves.
2019-04-23 17:31:29 +02:00
Wim Taymans
df4cb30c7a ringbuffer: use spa_memcpy so we can debug it better 2019-04-23 17:30:38 +02:00
Wim Taymans
71cab0c385 context: Improve not implemented methods
Let the not implemented methods return an operation instead of NULL
to make clients happy.
2019-04-17 15:44:40 +02:00
Wim Taymans
01604e4495 submodule update 2019-04-17 15:25:31 +02:00
Wim Taymans
f99480c66e stream: we can use minreq directly 2019-04-17 15:25:05 +02:00
Wim Taymans
093a068d34 stream: deactivate a stream when unlinked 2019-04-17 15:24:47 +02:00
Wim Taymans
bb3da2fcc1 remote-node: reuse activation logic in pw_node
Set the received eventfd as the node eventfd and let existing
logic take care of scheduling the node.
2019-04-17 15:23:11 +02:00
Wim Taymans
715594c6ef alsa: rework source a little in the case of slave
When we are slaved, read as much data as we have available and return
this from process.
2019-04-11 16:44:07 +02:00
Wim Taymans
8b1e5fedc9 core: clear driver on unassigned nodes 2019-04-11 16:40:16 +02:00
Wim Taymans
45e2219149 update submodule 2019-04-11 16:39:08 +02:00
Wim Taymans
affc641c71 node: set master flag
Set the master flag when a node is selected as master.
Recalc graph when a node is destroyed
2019-04-11 16:38:24 +02:00
Wim Taymans
87bee58f49 add SPA_EXPORT 2019-04-11 16:36:52 +02:00