Commit graph

1403 commits

Author SHA1 Message Date
Wim Taymans
bad8dac56e autolink: fix else branch 2018-04-25 15:49:59 +02:00
Wim Taymans
ced868c208 graph: improve debug 2018-04-25 15:49:08 +02:00
Wim Taymans
f9bda23e56 a2dp-sink: remove sources only once 2018-04-24 17:21:23 +02:00
Wim Taymans
b122f86e11 stream: always listen to the remote events
So that we can give a stream error on disconnect.
2018-04-24 17:11:21 +02:00
Wim Taymans
c4414bc9bc node: register ports in the registering event
That way we send registry events in order but only signal global_add
when the node is completely registered.
2018-04-24 17:10:17 +02:00
Wim Taymans
5e89e9421c link: only assume ports registered when registering the link 2018-04-24 17:09:34 +02:00
Wim Taymans
c24044108a link: always pause ports on deactivate 2018-04-24 17:08:57 +02:00
Wim Taymans
592cdfe90d global: add registering signal
Add a new signal that can be used to register child objects
2018-04-24 17:07:56 +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
08484b92f5 bluez5: handle remove of devices
Fix a2dp-sink for new scheduling
2018-04-24 17:02:19 +02:00
Wim Taymans
4c9c939527 alsa-monitor: keep track of cards and devices
Keep better track of cards and devices so that we can remove them
without having to open (the removed device).
2018-04-24 17:01:04 +02:00
Wim Taymans
0eb73f0f06 loop: add back the destroy loop
We need to keep the sources around until all sources are dispatched. If
not: source A and B are active after poll, A is dispatched first and
removes B, when B is then dispatched, the memory is gone. We don't
free the source but simply mark the fd invalid and move it do a
destroy list. After all sources are dispatched we destroy.
This is safe because removing a source is either done from the poll
context (with invoke) or when holding the right locks.
2018-04-20 16:28:47 +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
0dc036ac84 client-stream: improvements 2018-04-19 22:02:11 +02:00
Wim Taymans
ebd13a2a74 loop: blocking wait
Release the locks before waiting.
2018-04-19 22:01:18 +02:00
Wim Taymans
64d1307684 alsa: do the wakeup differently
Directly write from the process thread, reduces potential latency.
2018-04-19 22:00:42 +02:00
Wim Taymans
57cbc5e503 various cleanups 2018-04-19 20:15:30 +02:00
Wim Taymans
550b544aa0 test: also test resampler 2018-04-19 20:12:51 +02:00
Wim Taymans
06dd7095fc audioconvert: various fixes 2018-04-19 20:12:24 +02:00
Wim Taymans
3b8ffdfb4e io: make status as flags
This way we can return status of both input and output
2018-04-19 20:10:47 +02:00
Wim Taymans
e125f9a9a7 alsa: add format layout 2018-04-19 20:10:07 +02:00
Wim Taymans
30d8df7d25 add layout to format 2018-04-19 20:09:10 +02:00
Wim Taymans
1f73143d55 connection: improve some return values 2018-04-19 20:04:25 +02:00
Wim Taymans
ae905530ba monitor: safely remove pending requests 2018-04-19 20:02:06 +02:00
Wim Taymans
63ce244c79 add client-stream
A client stream is a more specialized way to send 1 stream to pipewire.
On the client side and receiver side it can do conversion and the
buffer size of the client can be choosen arbitrarily.
2018-04-13 20:06:37 +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
e869d5bcb0 splitter: add channel splitter
Splits a buffer with multiple non-interleaved channels to multiple
buffers, each with 1 channel.
2018-04-13 20:00:30 +02:00
Wim Taymans
eea05cc139 improve format 2018-04-13 19:58:55 +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
10fff4b2f8 node: add better node autolink
Add node media, category and role properties and use those to select
the target node.
Tag the DSP node with the right media.class
2018-04-12 09:55:03 +02:00
Wim Taymans
bd27b32c39 stream: install converter based on format 2018-04-12 09:50:12 +02:00
Wim Taymans
e33c76f728 stream: map buffers when using converter 2018-04-12 09:48:49 +02:00
Wim Taymans
96c87c3f7f stream: only install converter io once 2018-04-12 09:47:43 +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
8b74a3c0d2 small cleanups 2018-04-12 09:42:19 +02:00
Wim Taymans
c9fb320987 remote: improve mapped memory tracking 2018-04-11 10:55:12 +02:00
Wim Taymans
008df86c8f small cleanups 2018-04-11 10:54:47 +02:00
Wim Taymans
d88b88444d resample: use speex resampler for now 2018-04-10 16:54:15 +02:00
Wim Taymans
b3b47d3fe9 more work on audioconvert
Implement audioconvert as a complex element of fmtconver,
channelmix and resample.
Make copying resample just to test.
Plug the converter into pw_stream.
2018-04-10 15:54:29 +02:00
Wim Taymans
de36330917 handle: make method to get size 2018-04-09 10:06:17 +02:00
Wim Taymans
11f42d6262 port: add filter to pw_port_for_each_filtered_param 2018-04-09 09:33:09 +02:00
Wim Taymans
53e03019da buffer: more work on buffer allocation
Separate buffer sizes in the info. Make it possible to not set
data pointers for when we use memfd for the memory.
Improve format conversion.
Work on in-place conversion in test-convert2
2018-04-09 09:30:56 +02:00
Wim Taymans
142ef38df9 stream: more work on converter 2018-04-06 18:39:40 +02:00