Commit graph

985 commits

Author SHA1 Message Date
Wim Taymans
e68624fe7b client-stream: improve scheduling 2018-07-02 12:07:46 +02:00
Wim Taymans
6e92dbbe23 media-session: always check if session is busy
Also check if the session is busy if we explicitly provided the
target session id to join.
2018-06-27 11:11:35 +02:00
Wim Taymans
d9e3eb49cc audio-dsp: cleanups to format conversion 2018-06-26 16:55:19 +02:00
Wim Taymans
b46a0bc047 client-stream: prefer client buffer params 2018-06-26 16:54:48 +02:00
Wim Taymans
414378283c media-session: allow enabled sessions
Only enable sessions when they can be configured fully
2018-06-26 12:25:50 +02:00
Wim Taymans
35e0399d97 media-session: use session sample_rate and buffer_size as defaults 2018-06-25 14:33:27 +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
1eae3f1a2c media-session: round buffer-size down to power of 2
use rate of the session to calculate the buffer size and round down
to power of 2
2018-06-22 17:31:54 +02:00
Wim Taymans
73602ad98a media-session: improve category 2018-06-22 17:31:36 +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
ca61fd1405 media-session: prefer non-busy session for exclusive access
When we look for a good session for exclusive, prefer the non-busy
session.
2018-06-18 12:25: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
dbc3b4c1a4 media-session: improve plugged time
Use the node plugged time for the session or else use the time when the
session was created.
2018-06-18 11:12:42 +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
46ad3155b5 module: implement properties 2018-06-01 11:23:02 +02:00
Wim Taymans
bf2a6bb1d7 client-node: small cleanups 2018-06-01 11:19:22 +02:00
Wim Taymans
2e0e68e46e prefer 48KHz and 32 bit samples when we can 2018-05-24 16:14:53 +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
c61d579d99 small cleanups 2018-05-17 17:26:09 +02:00
Wim Taymans
bdeedad1d6 auto-link: remove obsolete module 2018-05-17 17:21:07 +02:00
Wim Taymans
e02b3181da audio-session - >media-session
Also implement video in the media session
Small cleanups
Improve exclusive mode
2018-05-14 13:07:01 +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
2c6ff2dad2 audio-session: detect sample rate 2018-05-11 10:01:13 +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
eb96ed45d7 move audio-dsp to audio-session
Make a new module audio-session that manages clients and what audio
sessions they use.
Move the audio-dsp to the audio-session
2018-05-08 10:45:50 +02:00
Wim Taymans
b160d81d2f stream: fix driver mode 2018-05-02 11:42:04 +02:00
Wim Taymans
d5e658e8f9 audio-dsp: add support for s32 format as well 2018-04-27 17:30:45 +02:00
Wim Taymans
09cec04380 audio-dsp: implement capture 2018-04-26 17:23:27 +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
e9839bade6 autolink: link to specified node unconditionally 2018-04-25 15:50:17 +02:00
Wim Taymans
bad8dac56e autolink: fix else branch 2018-04-25 15:49:59 +02:00
Wim Taymans
23dbf76e85 spa-node: first activate, then register 2018-04-24 17:07:01 +02:00
Wim Taymans
d7f1be0376 monitor: add time when device was plugged 2018-04-24 17:06:37 +02:00
Wim Taymans
f8222c765e autolink: prefer latest plugged device 2018-04-24 17:05:48 +02:00
Wim Taymans
d2c545be8d audio-dsp: handle node remove
Handle dynamic samplerate and channels
Improve node names
Keep track of removed nodes
2018-04-24 17:03:56 +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