Commit graph

3569 commits

Author SHA1 Message Date
Wim Taymans
fe85a3b817 pw-cat: refactor a bit
Try to keep the sndfile code in one place
2020-02-12 17:57:42 +01:00
Wim Taymans
e5bdb04b3a pass data around instead of resource
Avoids method calls to get the userdata from a resource
2020-02-12 16:32:55 +01:00
Wim Taymans
b79e63cded device: fix call to enum_params, we need to pass data 2020-02-12 16:29:22 +01:00
Wim Taymans
e72129b9ca device: fix data pointer for subscribe_params 2020-02-12 16:24:31 +01:00
Wim Taymans
495dc7c3af device: implement subscribe_params
Also add subscribe params for the device, like for Node and Port.
2020-02-12 16:07:10 +01:00
Wim Taymans
df65e0bcd3 pw-cat: fix remote name option 2020-02-12 13:39:47 +01:00
Wim Taymans
454e743d1a resample: make quality configurable 2020-02-12 13:31:03 +01:00
Wim Taymans
f726a77385 filter: expose pw_filter_get_name() 2020-02-12 08:57:09 +01:00
Wim Taymans
3f4be40f30 pulse: only define PA_LIKELY when not already defined
New pulse makes this define visible.
2020-02-12 08:55:24 +01:00
Georges Basile Stavracas Neto
4778b5911e pipewire/filter: Remove duplicated function declaration
pw_stream_get_name() is already declared at steam.h, and including
filter.h breaks the build with more strict build flags.
2020-02-11 17:43:45 -03:00
Wim Taymans
945da1e6f3 0.2.96 2020-02-11 16:06:27 +01:00
Wim Taymans
c82e38ad35 conf: limit buffers to 16
Old v0 clients can only handle up to 16 buffers. It's unfortunate that
we have to enforce this globally but otherwise it is possible that
a new client allocated more buffers which it then tries to share with
an old client and fail.
2020-02-11 16:03:38 +01:00
Wim Taymans
1a6848801f fix compiler warnings 2020-02-11 15:25:53 +01:00
Wim Taymans
9ce2c6157f client-node: fix v0 data offset
Set the right data offset for v0 clients.
2020-02-11 15:15:20 +01:00
George Kiagiadakis
db734a952d pkgconfig: require libspa on the libpipewire pkgconfig file
pipewire/pipewire.h directly includes spa headers, so libspa
is an implicit dependency that must always be required
2020-02-11 14:01:52 +00:00
Wim Taymans
d52df30c88 pipewireclock: use the monotonic time for now
Don't try to use the ticks for the clock but use the monotonic
timestamp instead.
2020-02-11 13:08:04 +01:00
Wim Taymans
b7f249c389 port: fix compilation 2020-02-11 12:14:23 +01:00
Wim Taymans
e68139079d volume: set the right info flags for params 2020-02-11 12:12:49 +01:00
Wim Taymans
cd77ceebbc impl-port: warn and not crash when spa-node has no properties
When a spa-node tells us it has updated properties but then gives
us a NULL pointer, emit a warning instead of crashing.
2020-02-11 12:06:59 +01:00
Wim Taymans
293932d4ec v0: improve compatibility
Implement RequestClockUpdate event and ClockUpdate message for
old clients.
2020-02-11 11:23:28 +01:00
Wim Taymans
c12f2276c4 stream: streams are always live for now. 2020-02-11 11:22:52 +01:00
Wim Taymans
6085c0eaee v4l2: use the buffer time as pts
Don't try to use the seq number as pts, just use the timestamp
returned from v4l2 if any so it can be matched against the clock.
2020-02-11 11:21:34 +01:00
Wim Taymans
09503f0987 meta: move seq number around for v2 compat
The v2 gstreamer elements use the pts for timestamps so make sure
it is still in the same place as before.
2020-02-11 11:20:40 +01:00
Wim Taymans
7edd3fb054 typemap: fill out more audio formats 2020-02-10 20:46:18 +01:00
Wim Taymans
eab6dda513 protocol-native: improve v0 compatibility 2020-02-10 18:15:24 +01:00
Wim Taymans
651013bfab Revert "buffers: set stride in buffer data chunks"
This reverts commit b3c4eecea7.

The provider of the buffers should really set the fields in the
chunk such as the offset, size and stride.
2020-02-10 16:55:02 +01:00
Wim Taymans
b3c4eecea7 buffers: set stride in buffer data chunks
v2 clients expect the stride to be set, even when the sender doesn't
set it.
2020-02-10 16:29:23 +01:00
Wim Taymans
56c15ca9e8 connection: improve version check
do the version check on the v2 update_types request or the v3
hello request.
2020-02-10 16:26:24 +01:00
Wim Taymans
d2e7f75071 resource: destroy old core_resource
If there is already a core_resource when we are going to make a new
one, remove the old one. This can happen when there is a version
switch.
2020-02-10 16:22:49 +01:00
Wim Taymans
905e5af058 jack: implement the jack_info_callback and function 2020-02-10 10:59:24 +01:00
Jan Koester
656c58fd98 jack: add error callback 2020-02-10 10:48:49 +01:00
Wim Taymans
03844d6c72 rtkit: add parameters for prio and rlimits
Make it possible to configure the prio and rlimits on the
rtkit module.
Set the defaults to the max.
2020-02-10 10:43:31 +01:00
Wim Taymans
40db445f3d rtkit: actually wake up the thread to set rt priority
Wake up the eventfd in the data thread to actually request the
realtime priority.
2020-02-08 22:47:18 +01:00
Wim Taymans
087448ff0f stream: set param id
The param id in the object is used to filter on the server so make
sure it is set in the object correctly.
2020-02-08 21:54:24 +01:00
Philipp Zabel
cb1071bce7 alsa-seq: fix seq_open error path
If snd_seq_open fails, do not call snd_seq_close(NULL).
2020-02-07 19:07:14 +01:00
Wim Taymans
ee67ab9c04 client-node: keep target links in list
Don't allocate the links in an array because they might be moved
when the array is resized. Instead just use calloc and add them
to a list.

Make sure we update the list used in the real-time thread from a
safe context.
2020-02-07 16:45:58 +01:00
Wim Taymans
936c290cc1 plugins: fix the licence of alsa and jack libraries
It's all MIT
2020-02-07 15:43:13 +01:00
Wim Taymans
a1bb1548e6 tests: msg is undefined when _get_next() return != 1 2020-02-07 15:40:28 +01:00
Wim Taymans
42b1e163d7 tests: make benchmarks less busy
Reduce iterations of the benchmark so that can finish on slower
devices.
2020-02-07 15:22:35 +01:00
Wim Taymans
9acf592e9c jack: remove leftover printf debug 2020-02-07 13:33:59 +01:00
Wim Taymans
ed1cf46c31 jack: add jack_get_video_image_size extension
Add a JACK PipeWire extension to get the video size of the DSP
pipeline and use this instead of the hardcoded values in the example.
2020-02-07 13:31:49 +01:00
Wim Taymans
14fbd4f520 jack: wait for transport
Wait for the transport to be configured before we exit from
client_open. We then have at least an activation or even a driver
set.
2020-02-07 13:30:24 +01:00
Wim Taymans
4d143c5751 command: fix load-module arguments
Reparse the arguments and pass all the remaining strings after the
module name as one arguments string.
2020-02-07 13:25:19 +01:00
Wim Taymans
a7e36ddd9d alsa: split up conf files 2020-02-07 13:24:42 +01:00
Wim Taymans
ae4e17e9a2 Remove old LICENSE files and README 2020-02-07 13:24:06 +01:00
Wim Taymans
4906a172e1 0.2.95 2020-02-07 09:39:14 +01:00
Wim Taymans
88c6db8a82 policy-node: give more priority to newer video output nodes
A slight workaround for old firefox that doesn't specify the target
node, nor the media role when doing screen sharing.
2020-02-06 17:42:52 +01:00
Wim Taymans
3aa8e301c5 protocol-native: implement v2 update_permissions
Convert the old permission update to new permission events.
2020-02-06 16:57:24 +01:00
Wim Taymans
7a395bccaf improve v2 compat mode
Always send the server types when we got the first client types and
don't rely on the message sequence number.
Add some more types in the typemap.
2020-02-06 16:56:19 +01:00
Wim Taymans
b2dfa83052 pw-cat: print channelmap in verbose mode 2020-02-06 16:50:59 +01:00