Commit graph

1617 commits

Author SHA1 Message Date
Wim Taymans
41d38e56df media-session: keep track of dsp proxy
Keep the dsp_proxy around because we need it to clean up the
session.
2018-10-05 10:28:20 +02:00
Wim Taymans
4764d69e26 merger/splitter: only dynamic ports are dsp ports 2018-10-05 10:26:30 +02:00
Wim Taymans
b2e84e85c6 media-session: query stream format
Query the stream format. We will use this later to decide what to link
to and how to convert.
2018-10-04 16:41:00 +02:00
Wim Taymans
f81588f439 client-stream: there is always and adapter 2018-10-04 16:36:09 +02:00
Wim Taymans
8f1ebe0c7e client-stream: enum_params works to the client node 2018-10-04 16:32:42 +02:00
Wim Taymans
8de1d03feb audioconvert: use splitter/merger
Remove the split/merge functionality from fmtconvert.
Make audioconvert use the splitter/merger.
Let client-stream decide what mode to configure audioconvert in.
2018-10-04 16:03:14 +02:00
Wim Taymans
d8827e2109 client-stream: add started variable 2018-10-04 15:53:49 +02:00
Wim Taymans
eb934dacef properties: better default size 2018-10-04 15:27:00 +02:00
Wim Taymans
31f4ceb137 properties: return if property changed
make property_set functions return 1 if there was a change.
Only emit property change notifications when something actually
changed.
Try to only copy property value when needed.
2018-10-04 15:18:31 +02:00
Wim Taymans
0e2885b599 client-node: make the client parent 2018-10-03 20:09:47 +02:00
Wim Taymans
294bba65a1 node: update state on suspend 2018-10-03 20:08:00 +02:00
Wim Taymans
ea739df26f remote: notify error
Don't fail on errors but emit a signal
2018-10-03 19:30:06 +02:00
Wim Taymans
f3dfe61aa0 link: add link state and error to info
Notify when state changes
2018-10-03 19:29:11 +02:00
Wim Taymans
0358e8b480 client-stream: there is always an adapter 2018-10-03 19:27:46 +02:00
Wim Taymans
f46a83dcb7 resource: pass the resource id in the error 2018-10-03 19:24:53 +02:00
Wim Taymans
4401e479c6 small cleanups 2018-10-02 17:37:38 +02:00
Wim Taymans
1ef1563591 node: add PortsChanged event
Add the PortChanged event and make it rescan the node ports.
2018-10-02 17:35:54 +02:00
Wim Taymans
8efabe051e remove obsolete modules
remove obsolete media-session and suspend-on-idle. This functionality
is to be handled by an external session manager
2018-10-02 17:34:31 +02:00
Wim Taymans
3d36755c4f audio-dsp: use type-info to get channel names 2018-10-02 10:17:12 +02:00
Wim Taymans
eb765b26b3 command: add exec command
Add exec command and use it to start the session manager by default
2018-10-02 09:17:07 +02:00
Wim Taymans
575e177a48 client-stream: run the driver graph 2018-10-02 07:11:45 +02:00
Wim Taymans
32e4d676b4 media-session: clear manager after cleanup 2018-10-02 05:45:50 +02:00
Wim Taymans
0f69a7b767 node: remove and add node from graph in idle/running
Add the node and all links to the graph when going to running and
remove them again when idle.
2018-10-02 05:10:55 +02:00
Wim Taymans
cd1c7b74af remote: improve cleanup
don't free the proxy when the node is destroyed, the proxy has
user data that we need to clean up the ports. Instead let the
remote take care of destroying the proxy later.
2018-10-01 17:59:25 +02:00
Wim Taymans
c1eeb89e18 stream: fix debug of control messages 2018-10-01 11:15:51 +02:00
Wim Taymans
392b217f81 client-stream: make adapter port variable
We need this to add control ports later
2018-10-01 11:15:12 +02:00
Wim Taymans
ec88101004 v4l2: move log to instance 2018-10-01 10:55:35 +02:00
Wim Taymans
18408dad81 port: handle control only ports
Mark ports with only control io as control ports and skip negotiation
of buffers and format for them.
2018-09-28 17:55:01 +02:00
Wim Taymans
909abdb6bf port: remove some checks, the mixer is always set 2018-09-28 17:52:47 +02:00
Wim Taymans
1ca399d4a6 link: pass id to _set_io 2018-09-28 17:50:22 +02:00
Wim Taymans
089fc2e8c1 link: also unlink controls 2018-09-28 17:49:57 +02:00
Wim Taymans
857352e4a4 stream: advertise that we can do buffers 2018-09-28 17:48:14 +02:00
Wim Taymans
8f7328173b utils: add another flag helper macro 2018-09-28 17:47:37 +02:00
Wim Taymans
940c8645d3 remove property flags
Remove the property flags, we will add info about properties
with the param interface.
2018-09-28 17:44:14 +02:00
Wim Taymans
2ebc65728c link: also try to link controls 2018-09-28 11:25:22 +02:00
Wim Taymans
6b0c28e717 client-node: don't try to add invalid memid 2018-09-28 05:49:38 +02:00
Wim Taymans
b8fb7aeaad media-session: handle disconnect better 2018-09-26 13:22:21 +02:00
Wim Taymans
4e2855f6fb node: move root directly to driver graph 2018-09-26 13:12:45 +02:00
Wim Taymans
d4fa4e63e8 remove unused type map
Add reset methods for array and map
Signal disconnect before destroying the proxies in remote.
2018-09-26 13:11:23 +02:00
Wim Taymans
04f8da9110 improve debug 2018-09-26 11:44:50 +02:00
Wim Taymans
650f9eb9a7 media-session: make device links passive again 2018-09-26 10:52:33 +02:00
Wim Taymans
f4672cbe99 link: improve state handling 2018-09-26 10:52:11 +02:00
Wim Taymans
7a0a150337 logger: add support for logging to file 2018-09-26 10:48:01 +02:00
Wim Taymans
9b2a051daf link: add feedback links
Check if a link is a feedback loop. For feedback loops we want to
schedule the consumer before the provider.
2018-09-25 17:10:06 +02:00
Wim Taymans
0701428aec link: only idle node if all links are idle 2018-09-25 17:09:22 +02:00
Wim Taymans
74ebff6b7d add some more debug log 2018-09-25 17:08:59 +02:00
Wim Taymans
39240fb9c0 use _list_consume to destroy objects 2018-09-25 13:05:13 +02:00
Wim Taymans
ec1d7b8df7 alsa: deal with less frequent hw pointer updates 2018-09-24 13:37:10 +02:00
Wim Taymans
881ee6caea node: remove process signals
Remove the process and finish signals, we are not supposed to
call these from rt threads. Instead use the link trigger to signal
the end of the graph.
2018-09-24 12:48:37 +02:00
Wim Taymans
1b933e5b32 loop: use simple hook emission
Add new simple hook emision without a cursor. The one with the cursor
is not thread safe and is not needed for the loop.
2018-09-24 11:35:46 +02:00