Wim Taymans
1b4a0e8d5d
client-node: also implement io on the node itself
2018-07-03 21:45:07 +02:00
Wim Taymans
79a3b594f9
client-node: set parent id and owner
...
Make sure we set the right parent id and owner for the client node
and client-stream
Move the remote id in the proxy object and use it in the stream to
get the node id.
2018-07-03 21:43:21 +02:00
Wim Taymans
e68624fe7b
client-stream: improve scheduling
2018-07-02 12:07:46 +02:00
Wim Taymans
b46a0bc047
client-stream: prefer client buffer params
2018-06-26 16:54:48 +02:00
Wim Taymans
bb7be076bb
client-stream: swap local and remote io area
2018-06-25 14:33:00 +02:00
Wim Taymans
c01112d6c2
node: move position calculation to the node
2018-06-22 17:38:36 +02:00
Wim Taymans
757e2ccc79
client-stream: trigger client-node manually
...
Don't let the graph scheduler trigger the client-node, instead do it
ourselves when the need a buffer for the next quantum.
2018-06-22 17:37:21 +02:00
Wim Taymans
ce2e605255
client-stream: fix format and buffers for capture
2018-06-22 17:36:26 +02:00
Wim Taymans
bbd5c941d2
client-stream: send node_id to client
...
Send the node_id of the client-stream node to the client.
2018-06-18 13:19:54 +02:00
Wim Taymans
a198943b1a
client-stream: fix capture case
...
Setup the processing order differently for capture, we first want
to schedule the converters and then the client-node.
2018-06-18 12:24:20 +02:00
Wim Taymans
4ac21aea53
stream: remove conversion
...
Improve audioconvert to also split the output.
Remove the format conversion from the stream and move into the
server client-stream.
2018-06-15 11:31:42 +02:00
Wim Taymans
acfd07c504
client-stream: allocate the right number of buffers
2018-06-15 11:30:20 +02:00
Wim Taymans
ba0a68aab3
client-stream: improve debug
2018-06-15 11:29:38 +02:00
Wim Taymans
e5629b23f3
client-node: pass position around
...
Pass the position from server to clients
Implement current time in stream.c using the position info
2018-06-07 11:01:20 +02:00
Wim Taymans
3d25e254ef
client-node: implement node property update
...
Make it possible to update the node properties
Make it possible to update the remote properties
2018-06-07 10:23:41 +02:00
Wim Taymans
bf2a6bb1d7
client-node: small cleanups
2018-06-01 11:19:22 +02:00
Wim Taymans
f5f1a435cc
client-node: improve time and position reporting
2018-05-24 16:10:22 +02:00
Wim Taymans
ef9fcd1093
node: keep better track of driver node
...
When a session disappears, try to move nodes to another session.
2018-05-17 17:40:08 +02:00
Wim Taymans
1bff5afe05
client-stream: reset format on adapter
2018-05-17 17:38:13 +02:00
Wim Taymans
6450c64542
clean up listeners
2018-05-17 17:30:30 +02:00
Wim Taymans
bed26040ef
node: add driver position struct
...
Pass driver info to client
use current buffersize and samplerate in client
update the buffer size dynamically based on session
2018-05-11 10:15:59 +02:00
Wim Taymans
6d79ce2589
small cleanups
2018-05-10 11:28:02 +02:00
Wim Taymans
d93dd5ec93
graph: remove io from graph port, it's not needed
2018-05-08 12:21:57 +02:00
Wim Taymans
27c53a31bc
stream: add exclusive flag
...
With the exclusive flag we don't go through the audio-dsp.
2018-05-08 10:47:18 +02:00
Wim Taymans
b160d81d2f
stream: fix driver mode
2018-05-02 11:42:04 +02:00
Wim Taymans
a6cb6b740c
client-node: make it possible to skip signal
...
Add an option to not signal the remote implementation when we still
have enough data.
2018-04-26 09:49:29 +02:00
Wim Taymans
f784da5505
pipewire: add info to interface load
...
Make it possible to pass info to interface load
Enable color logs
2018-04-26 09:48:19 +02:00
Wim Taymans
9376ba6098
client-stream: improve case without adapter
...
Handle the case where we don't have/need an adapter.
Add the adapter and client-node to the graph
2018-04-25 15:56:39 +02:00
Wim Taymans
d165b3b842
pipewire: improve memory cleanup
...
Add method to unload a spa interface.
Various other memory cleanups
2018-04-20 16:27:19 +02:00
Wim Taymans
0dc036ac84
client-stream: improvements
2018-04-19 22:02:11 +02:00
Wim Taymans
57cbc5e503
various cleanups
2018-04-19 20:15:30 +02:00
Wim Taymans
63ce244c79
add client-stream
...
A client stream is a more specialized way to send 1 stream to pipewire.
On the client side and receiver side it can do conversion and the
buffer size of the client can be choosen arbitrarily.
2018-04-13 20:06:37 +02:00
Wim Taymans
efa35c2911
node: add option to not register a node
2018-04-13 20:05:46 +02:00
Wim Taymans
fa07400c2e
port_mix: place io area in separate field
...
We would like to remove it from the spa_graph_port...
2018-04-13 20:04:22 +02:00
Wim Taymans
adf8bc7804
client-node: fix buffer data offset
2018-04-13 20:03:14 +02:00
Wim Taymans
04f3044f1c
client-node: implement add/remove port
2018-04-13 20:02:35 +02:00
Wim Taymans
f4f2e4bf68
small cleanups
2018-04-13 19:57:34 +02:00
Wim Taymans
03b914405d
client-node: remove transport area
...
We don't need the area anymore
2018-04-12 10:12:40 +02:00
Wim Taymans
b07c4932cd
stream: remove client_reuse
...
We can't have client-reuse with the client-node interface.
2018-04-12 09:45:07 +02:00
Wim Taymans
008df86c8f
small cleanups
2018-04-11 10:54:47 +02:00
Wim Taymans
ba518c0d9b
small fixes
2018-04-05 15:37:34 +02:00
Wim Taymans
97547d726f
client-node: track io areas per mixer
2018-04-03 16:29:36 +02:00
Wim Taymans
a7341ce583
node: fix support for remote driver nodes
2018-04-03 16:29:36 +02:00
Wim Taymans
811ea2b1c9
client-node: manage io areas
...
Manage the memory of io areas
2018-04-03 16:29:36 +02:00
Wim Taymans
33a322b96e
graph: new scheduling model
...
Make explicit links between elements that are used to activate the
next element in the graph.
Make subgraphs a special regular node. Make a link from the
subgraph children to the parent so that the subgraph completes when
all the children completed.
Implement a single process function in plugins
Remove many messages in the client node
2018-04-03 16:29:36 +02:00
Wim Taymans
9b0a880afb
simplify things with just 1 process function
...
Make just one process function in spa node. With the io area states
we can do more complicated io patterns.
2018-04-03 16:29:36 +02:00
Wim Taymans
933635f63f
WIP: work on per driver graphs
...
Make a graph per driver node and let nodes that link to this join this
graph
Work on an idea for an even simpler scheduling mechanism.
2018-04-03 16:29:36 +02:00
Wim Taymans
05b3c666d9
improve debug
2018-04-03 16:29:36 +02:00
Wim Taymans
f599120433
mix: keep track of mix id
2018-04-03 16:29:36 +02:00
Wim Taymans
a50ea4c929
client-node: we need io on the mixer nodes
2018-04-03 16:29:36 +02:00