Commit graph

1239 commits

Author SHA1 Message Date
Wim Taymans
fb7a51c6e7 client-node: fix mem_offset of io areas 2018-03-14 16:00:04 +01:00
Wim Taymans
6d569b132f control: safely iterate the list, unlink modifies the list 2018-03-14 15:56:24 +01:00
Wim Taymans
1b2e73de0c node: export method to update ports 2018-03-14 15:55:35 +01:00
Wim Taymans
2660b5c4f5 export-source: add float format 2018-03-14 15:54:57 +01:00
Wim Taymans
2ed627f3b1 list: remove stray ; 2018-03-14 15:15:13 +01:00
Wim Taymans
6cb35bf23e link: remove unused field 2018-03-14 15:14:30 +01:00
Wim Taymans
d655d9e0bf export-sink: don't block for render
Pass the buffer to the render function in the main thread but don't
block the data thread
2018-03-14 14:54:36 +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
638916e065 loop: remove the destroy_list
Don't use a destroy_list anymore, it's not safe anyway. Instead require
that sources be removed with (a blocking) invoke. Make sure we don't
dispatch sources that were removed from the loop.
2018-03-14 14:51:36 +01:00
Wim Taymans
992f20f805 protocol-native: debug connection after remap 2018-03-01 18:31:56 +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
David Svensson Fors
6365ea18d9 module-node-factory: remove destroyed node from node list 2018-03-01 17:43:19 +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
059571cec0 remote: clear mem id
Clear the memid so that find_mem can't find old memory anymore.
2018-03-01 13:08:45 +01:00
Wim Taymans
e9685c794f remote: handle buffer errors 2018-03-01 12:39:33 +01:00
Wim Taymans
7bc9230a79 client-node: proxy -> node 2018-03-01 12:13:00 +01:00
Wim Taymans
a48761503c remote: ignore duplicate mem
Ignore if we receive the same memid multiple times
2018-03-01 11:45:42 +01:00
Wim Taymans
53ee07c901 link: generate unique mix ids
Generate a per link id for the mixer input of the ports.
2018-03-01 09:30:42 +01:00
Wim Taymans
8e2ceb773e Improve some debug 2018-03-01 09:01:52 +01:00
Wim Taymans
b445d1b12e Add some NEWS 2018-02-27 14:00:19 +01:00
Wim Taymans
62f113dbba Release 0.1.9 2018-02-27 13:34:22 +01:00
Wim Taymans
ebac77f4e4 conf: add some commented out modules
The link-factory allows the client to create links between ports.
The audio-dsp module creates dsp ports (float32, mono) for each
audio sink and source.
2018-02-27 12:53:05 +01:00
Wim Taymans
1ecf982504 link: improve allocation
Always move the allocated buffers to the output port and reuse them
from there if possible.
2018-02-27 12:51:25 +01:00
Wim Taymans
241a7bc7d9 mem: add some debug 2018-02-27 12:50:47 +01:00
Wim Taymans
b91a2a4207 link-factory: don't leak properties 2018-02-27 12:49:22 +01:00
Wim Taymans
28779b8e25 port: move mix_node to private.h
This will make it easier to override the implementation later
2018-02-26 17:20:27 +01:00
Wim Taymans
13fcaf74e6 link: improve allocation
Make a structure to track allocation of buffers on ports.
Handle more allocation failures.
Update port status immediately when clearing format
2018-02-26 17:05:30 +01:00
Wim Taymans
b8eccc3648 port: free resources 2018-02-26 16:49:38 +01:00
Wim Taymans
760e046dcf client-node: handle port set_io 2018-02-26 16:16:53 +01:00
Wim Taymans
bc669f5def audio-dsp: small cleanups
Fix some compilation errors
implement port cleanup
2018-02-26 16:09:47 +01:00
Wim Taymans
50db8b6126 stream: improve memory handling
Implement set_io
2018-02-26 16:04:32 +01:00
Wim Taymans
944d205e8e protocol-native: print connection info after remap
Print the connection messages after mapping the ids or else we
can't really make sense of the ids.
2018-02-26 12:36:16 +01:00
Wim Taymans
e2f01c5838 protocol-native: disconnect remote
Disconnect the node and all the streams instead of just changing the
state.
2018-02-26 12:29:02 +01:00
Wim Taymans
6f61ac9357 fix some signed vs unsigned comparisons 2018-02-20 18:19:11 +01:00
Wim Taymans
5f92c152e3 remove module-jack
It's better to make a replacement client library
2018-02-20 18:17:01 +01:00
Wim Taymans
20e0d8b4ea dsp: use format in the port.dsp property 2018-02-20 15:49:10 +01:00
Wim Taymans
d3cc45c611 alsa: make some log as debug 2018-02-20 15:48:47 +01:00
Wim Taymans
8ff7a5fa29 node: set state before calling into methods 2018-02-20 12:50:44 +01:00
Wim Taymans
2fe7197930 node: add option to pause-on-idle
v4l2 is slower to start when we pause in idle. Disable this
behaviour with an option on the node.
2018-02-20 12:28:19 +01:00
Wim Taymans
920d098ea7 video-src: pause timeout when not streaming 2018-02-20 11:41:48 +01:00
Wim Taymans
b1492aa130 thread-loop: ensure the right clock is used
Use the right clock for the cond variable.
2018-02-20 11:18:49 +01:00
Karin Hedlund
43a384c51e thread-loop: add timed wait 2018-02-20 10:54:10 +01:00
Wim Taymans
58667d6ced params: make method on node and port to enum params
Do not pass the params of the node in the node_info, instead,
make a method to enumerate the params. This makes it possible for
clients to only enumerate what they need and when they need it.
Improve introspection of a port, add the name and properties.
Add an enum_param method on the port that can be used to enumerate
port formats.
Change -monitor and -cli and add support for enum_params on the node
and port.
2018-02-20 10:31:55 +01:00
Wim Taymans
a9a95a4205 audio-dsp: start counting from 1, to match jack ports 2018-02-20 10:01:10 +01:00
Wim Taymans
528d0a1c7d alsa: put device name in separate property 2018-02-20 09:59:52 +01:00
Wim Taymans
0e5a1b6327 props: use macro for property alternatives 2018-02-20 09:36:05 +01:00
Wim Taymans
f039238288 audio-dsp: implement buffer size param 2018-02-16 18:15:37 +01:00
Wim Taymans
9cb2891741 cli: implement destroy 2018-02-16 18:15:06 +01:00
Wim Taymans
c613ae4b40 v4l2: unset format, then close
v4l2 does not want to close unless the format is cleared
2018-02-16 18:14:24 +01:00
Wim Taymans
0a57c86c25 link: clear port buffers when not in use and not owner
When we are the owner of the buffers, we want to keep them until
we suspend.
2018-02-16 17:56:25 +01:00