Commit graph

1343 commits

Author SHA1 Message Date
Wim Taymans
ea66ac4075 alsa: update write offset after each write 2018-07-31 17:40:32 +02:00
Wim Taymans
57ef49b154 client-node: fix port implementation
Make the port forward the port methods to the node.
Fix io area when not using adapter
2018-07-31 14:28:15 +02:00
Wim Taymans
ca898a00db work on separating port mixers
Make it possible to assign an arbitary node as the port mixer.
Also remove dynamically added ports.
Improve negotiation and allocation on the mixer ports
Add some more SSE optimisations
Move float mixer from the audio dsp to the port
Remove pw_node_get_free_port() and do things more explicitly.
Handle mixer ports in client-node
2018-07-31 12:23:35 +02:00
Wim Taymans
f55cb422cb hook: add priv fields for future expansion 2018-07-20 10:34:27 +02:00
Wim Taymans
892b57c55d stream: add capture queued time calculation
Take the size of a newly captured buffer as the difference between
previous and current tick and use this to calculate the queued size.
2018-07-19 16:55:00 +02:00
Wim Taymans
b67fb6fa5b io: add latency io area 2018-07-19 15:17:21 +02:00
Wim Taymans
0d148654c0 stream: add more timing info
Keep track of queued data in the stream
Pass delay field around to make it possible to know about the raw
software read/write pointer and the hardware one.
Start stream position at 0
2018-07-19 13:30:27 +02:00
Wim Taymans
d3c203b744 spa: use clock info
Use the port clock io area to get timing info and use this as
the time in the graph when we wake up.
2018-07-17 17:37:55 +02:00
Wim Taymans
2b1b356455 audio-dsp: add some SSE2 2018-07-17 09:52:27 +02:00
Wim Taymans
fba00fb791 clock: remove clock interface
Remove the clock interface, we need to get timing information with an io
area to get the required precision and performance.
2018-07-17 09:50:51 +02:00
Wim Taymans
83bb8dc599 remote: also make thread realtime for clients 2018-07-13 11:56:09 +02:00
Wim Taymans
e5807cd467 small cleanups 2018-07-13 11:43:06 +02:00
Wim Taymans
cc542935ea client-node: add more generic set_io method
Replace the set_position method with set_io that allows us to share
other types of state with the client.
2018-07-12 15:33:07 +02:00
Wim Taymans
5a3eee9cac command: remove clock-update 2018-07-12 13:22:50 +02:00
Wim Taymans
6976175d65 module: remove obsolete code 2018-07-12 12:41:09 +02:00
Wim Taymans
54c45252fd client-stream: don't run the driver
The driver will take the initiative to run the graph
2018-07-11 20:09:32 +02:00
Wim Taymans
fdc3d5c0f7 export-sink: be less verbose
Only report region once and only accept 1 region
2018-07-09 12:14:01 +02:00
Wim Taymans
f49ab32874 meta: add video damage region metadata
Add damage region meta
Implement damage region in video-src and export-sink
2018-07-09 12:07:30 +02:00
Wim Taymans
c98fbfe0a9 meta: make safer find_meta_data function 2018-07-09 12:04:23 +02:00
Wim Taymans
33427b4cd3 small cleanups 2018-07-08 15:23:56 +02:00
Wim Taymans
3f45ccd6a5 gst: update to current API 2018-07-08 15:23:28 +02:00
Wim Taymans
e0676fcef8 array: update size on delete 2018-07-07 11:29:45 +02:00
Wim Taymans
2ac2822d4f link: always activate the link
Always activate the link, don't rely on the node to activate us.
2018-07-07 10:46:49 +02:00
Wim Taymans
1cdb7e0214 thread-loop: add some debug 2018-07-04 15:31:44 +02:00
Wim Taymans
ef307d37bc node: add node session property 2018-07-04 15:30:41 +02:00
Wim Taymans
bc2b965591 audio-dsp: use the quantum to fill underrun with silence 2018-07-04 10:34:11 +02:00
Wim Taymans
055518b40d stream: add parameter support
Rework parameter handling
Hook up volume parameters
Small cleanups
2018-07-03 21:59:34 +02:00
Wim Taymans
70b04da723 media-session: express quantum relative to rate 2018-07-03 21:55:08 +02:00
Wim Taymans
9417cdd9e6 client-stream: Also link controls
Improve registration of the node, set the media.class
2018-07-03 21:47:53 +02:00
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
fe03ec8bde array: add some more helpers 2018-07-03 21:35:47 +02:00
Wim Taymans
8f97e0dd31 audioconvert: add volume control 2018-07-03 21:34:22 +02:00
Wim Taymans
e5c2896fca pod: add padding to float pod 2018-07-03 21:28:48 +02:00
Wim Taymans
6494a5aac0 link: improve state change
Don't assume running state when we already have a format
2018-07-02 13:14:01 +02:00
Wim Taymans
c315c95e55 link: improve negotiation
Separate negotiation and activation steps of the link.
Keep track of the pending amount of links to negotiate before activating
a node.
2018-07-02 12:14:50 +02:00
Wim Taymans
0122e15611 node: improve scheduling 2018-07-02 12:14:23 +02:00
Wim Taymans
6b10b0784f node: improve states
Only change state when different
2018-07-02 12:11:05 +02:00
Wim Taymans
f5cf90ccd1 media-session: improve debug 2018-07-02 12:08:03 +02:00
Wim Taymans
e68624fe7b client-stream: improve scheduling 2018-07-02 12:07:46 +02:00
Wim Taymans
710f0f59cf limit buffers to 16 until we can send more fds in one message 2018-07-02 12:04:38 +02:00
Wim Taymans
a7ec4e4688 stream: add MIN_QUEUED constant 2018-06-27 15:38:41 +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
2fe392dd30 alsa: limit silence to threshold and available size 2018-06-27 11:11:00 +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
a13b5cfdc3 increase number of buffers 2018-06-26 16:54:18 +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
2d75d96d67 meson: fix pulseaudio check 2018-06-26 12:22:03 +02:00
Wim Taymans
a738b73567 port: we can accept a new input after mixing it 2018-06-25 17:11:07 +02:00