Wim Taymans
2d4ecaf85d
introspect: use right client property
2018-12-04 13:38:58 +01:00
Wim Taymans
1efd5f185c
proplist: implement merge mode
2018-12-04 13:38:46 +01:00
Wim Taymans
84a7bf671c
stream: connect to source and sink
...
Stream: also connect to the right source, try to convert the name to
index when lookup fails, just like what pulseaudio does.
Implement more proplist functions, add some more info to the stream.
stream: handle NULL format
Improve introspection of the sink_input and source_output name, this
should be the media.name when possible.
2018-12-04 11:50:23 +01:00
Wim Taymans
ad723e3793
context: log more info on errors
2018-12-03 15:12:27 +01:00
Wim Taymans
2864e7ec75
introspect: improve introspection
...
Update introspection structures when we get the info from pipewire.
2018-11-29 17:30:24 +01:00
Wim Taymans
d02a8375c3
introspect: implement more introspect
2018-11-28 13:38:37 +01:00
Wim Taymans
08d6071693
context: list audio devices as cards
...
Find the sink/source a stream is linked to
2018-11-28 11:13:21 +01:00
Wim Taymans
e8dfd22a6b
stream: update for delay sign change
2018-11-09 15:25:39 +01:00
Wim Taymans
88a786fdad
stream: use TIMESPEC_TO_USEC
2018-11-07 09:57:22 +01:00
Wim Taymans
a70b02064c
stream: fix for target_id
2018-11-02 12:31:43 +01:00
Wim Taymans
ed2f054e76
volume: fix for old api
2018-10-30 09:50:44 +00:00
Wim Taymans
2a1328533f
stream: use pw_stream_update_properties
2018-10-23 16:50:17 +02:00
Wim Taymans
a14e16806f
mainloop-glib: destroy the source
2018-10-19 17:15:19 +02:00
Wim Taymans
e4c94bf12d
proplist: fix compilation
2018-10-19 17:00:25 +02:00
Wim Taymans
01aa9a5960
introspect: implement enough to make gnome-control-center work
...
We can see sources and sink and change the volume/mute of streams
2018-10-19 16:57:03 +02:00
Wim Taymans
faccc8d506
implement more methods
...
Implement extensions with dummies
Implement some more introspection, enough to make pavucontrol start
Implement volume changes on sink_input
2018-10-19 13:30:20 +02:00
Wim Taymans
5498d9c726
glib-mainloop: implement glib mainloop support
2018-10-19 13:27:58 +02:00
Wim Taymans
b742d7533e
stream: only queue buffer when filled
...
We need to completely fill the buffer before we queue the buffer. If we
don't do this, we might have reported a larger writable size than
what we actually can do and that makes clients fail.
This is not entirely completely correct because a client can expect to
have its buffer sent as soon as it completes the write. We should really
just queue the data in a separate queue when we run out of buffers.
2018-10-16 09:58:14 +02:00
Wim Taymans
f74a0fb9bd
stream: implement _set_name
2018-10-16 09:56:12 +02:00
Wim Taymans
a00c00baed
stream: maxlength / size is the number of buffers we want
...
tlength is what the server buffers and is of no importance for deciding
the number of buffers.
2018-10-09 17:31:06 +02:00
Wim Taymans
9d2cf17516
bitset: init and clear bitset correctly
2018-10-09 17:30:37 +02:00
Wim Taymans
a91dea00d0
stream: implement cork and flush
...
Implement cork with _set_active and flush with the new _flush
method.
2018-10-09 16:39:19 +02:00
Wim Taymans
0870fc8673
stream: use latency of minreq/2
...
Because we don't buffer tlength on the server side, we need to use
half of the minreq as headroom in the server.
2018-10-09 16:37:49 +02:00
Wim Taymans
1509b51966
stream: handle channelmap in _new_extended
2018-10-09 16:37:23 +02:00
Wim Taymans
a82a5dc26a
context: make some errors less verbose, like libpulse
2018-10-09 16:36:45 +02:00
Wim Taymans
6a4da8a6b3
context: improve properties
2018-10-03 20:14:34 +02:00
Wim Taymans
520a9831e7
stream: fix connect by name
...
Look up the node id for the given device name and use that to connect.
2018-09-21 16:46:51 +02:00
Wim Taymans
6df567e6d4
stream: assume default channels when invalid
2018-09-19 17:30:59 +02:00
Wim Taymans
d41cde1bb8
stream: add channel mappings
2018-09-17 09:51:39 +02:00
Wim Taymans
814a9592f3
stream: update for API changes
2018-09-05 16:48:13 +02:00
Wim Taymans
5fb984a647
update for type changes
2018-08-29 09:54:54 +02:00
Wim Taymans
4c7fd98479
stream: update for api changes
2018-08-27 09:06:57 +02:00
Wim Taymans
be2dee53bc
update to new types
2018-08-24 11:00:33 +02:00
Wim Taymans
ffa3b03982
stream: update for rate changes
2018-08-15 21:46:50 +02:00
Wim Taymans
1ea54ac9c5
pulse: improve remote sync
...
Add an explicit method to make the operation to a roundtrip to sync
pending actions.
Implement drain.
2018-08-02 10:31:29 +02:00
Wim Taymans
e64413fee1
stream: move some debug to trace
2018-07-31 21:38:01 +02:00
Wim Taymans
f73d640cb8
stream: fix read and write index for capture
2018-07-31 21:37:41 +02:00
Wim Taymans
6eb6e31beb
stream: improve timing
...
Use the new stream time information to get more accurate read and
write pointers.
2018-07-19 13:35:46 +02:00
Wim Taymans
ffde111099
stream: update for rate
2018-07-17 17:40:33 +02:00
Wim Taymans
27d34dde88
introspect: improve introspection
...
stream: set roles
2018-07-04 18:43:45 +02:00
Wim Taymans
71d87c589d
stream: fix introspection of linked device
2018-07-04 15:33:20 +02:00
Wim Taymans
3cfbdc750a
introspect: don't store mute state
2018-07-03 22:09:53 +02:00
Wim Taymans
b98c98cc8d
context: rework how we introspect
...
Use the properties of the global to mark the global type, use this
to filter the objects.
Hook up the volume control
2018-07-03 22:03:25 +02:00
Wim Taymans
11ee416bb0
stream: work on pending buffers
2018-06-26 16:57:49 +02:00
Wim Taymans
e29a35f0ca
stream: don't dequeue in peek
2018-06-26 15:04:33 +02:00
Wim Taymans
c3a1807eff
stream: improve latency requirements
2018-06-26 15:04:08 +02:00
Wim Taymans
a30722c442
pulse: various fixes and improvements
2018-06-22 17:41:12 +02:00
Wim Taymans
2254a124af
implement more api
2018-06-07 11:16:09 +02:00
Wim Taymans
b90101bf5b
channelmap: fix parse
2018-06-07 11:04:52 +02:00
Wim Taymans
fe932db2c6
Various improvements
...
context: fix memory free
subscribe: implement dummy methods
introspect: implement more
stream: keep track of dequeued buffers ourselves because we need to
be able to cancel and keep track of writable size.
2018-06-05 20:10:31 +02:00