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
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
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
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
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
57cbc5e503
various cleanups
2018-04-19 20:15:30 +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
Wim Taymans
c547baf952
client-node: remove the area
...
Remove the share node area, we don't need it
2018-04-03 16:29:36 +02:00
Wim Taymans
a3033ee2b7
client-node: improve debug
2018-04-03 16:29:36 +02:00
Wim Taymans
1f077c7e0a
client-node: fix mem_offset of io areas
2018-04-03 16:29:36 +02:00
Wim Taymans
b9880dbd5f
Add some more debug
2018-04-03 16:29:36 +02:00
Wim Taymans
2ea9addcf2
port: delegate initialization of mix ports to port
2018-04-03 16:29:36 +02:00
Wim Taymans
319098b4c8
client-node: implement set_io on mixer and regular node
2018-04-03 16:29:36 +02:00
Wim Taymans
28a094a65b
client-node: free io_area
2018-04-03 16:29:36 +02:00
Wim Taymans
4f680c224b
make per mix port io and buffers
...
Move the io areas to a separate memory block.
Make per link io areas for the ports
Send per mix port io area and buffers
2018-04-03 16:29:36 +02:00
Wim Taymans
fb7a51c6e7
client-node: fix mem_offset of io areas
2018-03-14 16:00:04 +01:00
Wim Taymans
1b2e73de0c
node: export method to update ports
2018-03-14 15:55:35 +01:00
Wim Taymans
153bf51ef1
client-node: safely remove source
...
Remove the source from the data_loop with invoke to make sure it
really is removed before we destroy the node.
Based on patch by David Svensson Fors <davidsf at axis.com>
2018-03-14 14:52:22 +01:00
Wim Taymans
ea182ba194
client-node: reference memory with id
...
Reference the memory with id because it could be relocated.
2018-03-01 18:30:39 +01:00
Wim Taymans
135a0a18d8
client-node: track memory for client
...
Keep track of the memory we sent to the client to only send memory
once and choose better memid values.
2018-03-01 14:46:49 +01:00
Wim Taymans
7bc9230a79
client-node: proxy -> node
2018-03-01 12:13:00 +01:00
Wim Taymans
760e046dcf
client-node: handle port set_io
2018-02-26 16:16:53 +01:00
Wim Taymans
b86f141273
add more debug info
2018-02-15 11:41:07 +01:00
Wim Taymans
70687e466d
client-node: update port properties
...
Handle port properties
Set the client name
2018-02-09 18:10:51 +01:00
Wim Taymans
053f251be8
client-node: handle io reset
2018-02-07 17:54:43 +01:00
Wim Taymans
c1aa3b4625
client-node: move to per node memory
...
Remove the per-port memory and only use per-node memory. This will
make it possible to share memory between ports in the future.
Keep refs to memory on the buffers and free (close) the memory
when no longer used.
2017-12-01 17:24:03 +01:00
Wim Taymans
08814bd808
data: clean up fd and data management
...
Do not send the offset and size in the add_mem call, just send the
fd and the flags. The area that we need to map from this to find the
meta, chunk and data are sent in a separate call. This should make
it possible to truncate the memory to a larger size to dynamically
allocate more shared memory for a client.
Remove the Id data type, it's not needed.
Don't automatically map memory in remote.c
Pass the original memory type from server to client.
Handle DmaBuf mem in video-play now that the server passed it on.
2017-12-01 09:34:53 +01:00