Wim Taymans
774e11bc10
keys: rename device.id to device.bus-id
2019-08-16 21:52:32 +02:00
Wim Taymans
9807e7fdab
pulse: sync
2019-08-16 15:23:35 +02:00
Wim Taymans
84ec90da2d
proxy: add refcount to keep the proxy alive in demarshal
...
We need to keep the proxy alive during demarshal because the callbacks
might decide to destroy the proxy.
2019-08-16 15:19:19 +02:00
Wim Taymans
58fd46ebd1
remote: remove our listener when the core_proxy is destroyed
2019-08-16 15:18:49 +02:00
Wim Taymans
23fe46b698
stream: implement drain
...
Set the drained flag.
If the server calls us and we're out of buffers and the drained
flag is set, emit the drained signal.
Deactivate the node on disconnect.
Make sure we have no more pending process callbacks in the invoke
queue before when we pause.
2019-08-16 15:14:23 +02:00
Wim Taymans
7ad111de47
connection: return INVALID for invalid fds
2019-08-16 15:12:30 +02:00
Wim Taymans
2f28e59c63
protocol: use Fd pod for fd indexes for easier debugging
2019-08-16 15:11:04 +02:00
Wim Taymans
8da7222c7e
protocol-native: avoid NULL pointer access
2019-08-16 15:09:16 +02:00
Wim Taymans
aa2e2f192b
client-node: dont' send peer_added with our own node
...
.. because it's just ignored in the client anyway.
2019-08-16 15:08:21 +02:00
Wim Taymans
47f0f1f9a3
loop: flush items in invoke from thread
...
When we do invoke from the loop thread, first process the pending
invoke items before handling ours. This can be used to sync the
invoke queue before cleanup.
2019-08-16 15:04:27 +02:00
Wim Taymans
954c96632c
channelmix: try to handle 1 channel as MONO/FC
2019-08-16 15:03:16 +02:00
Wim Taymans
6f16d6ff8e
example: remove some unused fields
2019-08-16 15:02:48 +02:00
Wim Taymans
dff1cfe13e
fix example
2019-08-15 19:07:03 +02:00
Wim Taymans
78765e8d82
v4l2: set port ref to implementation
2019-08-15 18:40:22 +02:00
Wim Taymans
37b57caf11
loop: pass loop as first argument in function
2019-08-15 18:38:32 +02:00
Wim Taymans
0af87d2685
client-node: keep port buffers in special location
...
Keep the output port buffers in a special mix info. They should
stay there even when the mix is removed and should only be cleared
explicitly with a NULL Format or 0 use_buffers.
2019-08-15 11:49:32 +02:00
Wim Taymans
96ba0fbdeb
client-node: only clear buffers when format cleared
...
.. like we don on the client.
2019-08-14 17:07:22 +02:00
Wim Taymans
87ae7a8011
channelmix: apply channel volumes correctly
2019-08-14 14:56:16 +02:00
Wim Taymans
449d98910b
proxy: remove unncessary link in remote
2019-08-14 12:09:49 +02:00
Wim Taymans
e3d19993e9
stream: EIO on format and buffers when disconnecting
2019-08-14 11:59:00 +02:00
Wim Taymans
35f617157f
proxy: improve proxy cleanup
...
When we destroy a proxy, mark it as zombie until the server removes
the id. This way we can still keep the id locked with a valid entry
and remove it later.
2019-08-14 11:52:59 +02:00
Wim Taymans
d86e462dca
client-node: clean up buffers and other memory
2019-08-14 11:45:28 +02:00
Wim Taymans
c879b85884
export-sink: add more buffer space
2019-08-14 11:44:37 +02:00
Wim Taymans
6a8fe43a0c
improve debug
2019-08-14 11:44:16 +02:00
Wim Taymans
23812807ad
pulse: update module
2019-08-13 18:48:05 +02:00
Wim Taymans
f6fca48459
client-node: always remove the previous io memory
2019-08-13 18:43:22 +02:00
Wim Taymans
fa792a91a0
fmtconvert: always prefer just 1 buffer
2019-08-13 18:42:40 +02:00
Wim Taymans
697976f416
audioconvert: only emit node_info once in add_listener
2019-08-13 18:42:21 +02:00
Wim Taymans
ab069d45be
stream: improve debug
2019-08-13 18:41:55 +02:00
Wim Taymans
e827d65659
stream: make the control info const
2019-08-13 18:41:22 +02:00
Wim Taymans
990357d724
node: fix method index
2019-08-13 15:34:04 +02:00
Wim Taymans
b90c5b925a
examples: add example of memfd upload
...
Add an example of a client that allocates the buffer memory and
uploads the fds to the server.
2019-08-12 16:54:05 +02:00
Wim Taymans
935de18aa5
port: return async result from use_buffers if any
2019-08-12 16:50:10 +02:00
Wim Taymans
3e674f1646
stream: find right media_class from format
2019-08-12 15:14:39 +02:00
Wim Taymans
c6a7b3eedb
channelmix: implement per channel volume
...
Implement per channel volume on channelmix. Extend control on stream to
take an array of values when possible.
Remove name argument from pw_node_new and pw_device_new. We can pass
this as a property instead.
Improve properties on nodes to more closely match what pulseaudio does.
Don't let the monitor do too much with the udev properties but let the
session manager set the description and icon-names.
Remove some change_mask flags for things that don't change in
introspect. Use the flags to mark changes in -cli and -monitor.
2019-08-12 15:14:39 +02:00
Wim Taymans
1c27f48992
params: add PortConfig debug info
2019-08-12 15:14:39 +02:00
Wim Taymans
b8b2e494bd
audioconvert: improve proxy of internal params
2019-08-12 15:14:39 +02:00
Wim Taymans
4449cf61ad
audioadapter: filter filtering
2019-08-12 15:14:39 +02:00
Wim Taymans
65909b7964
props: add property to pass array of volumes
2019-08-12 15:14:39 +02:00
Wim Taymans
a1ec7f5fa7
pod: add helper function to copy array values
2019-08-12 15:14:39 +02:00
Matt Porter
b71f2dd716
meson.build: fix meson version warning
...
Features are used from 0.44 but min version is specified as 0.42.
Bump min version to 0.44.
Signed-off-by: Matt Porter <mporter@konsulko.com>
2019-08-09 23:20:55 +02:00
Wim Taymans
a42c517682
improve debug
2019-08-08 11:03:13 +02:00
Wim Taymans
3ee9cbd57d
fix errno values
2019-08-07 13:33:14 +02:00
Wim Taymans
7cbdaeb3b6
remove obsolete dbus protocol
2019-08-07 13:09:02 +02:00
Wim Taymans
6f8268df40
audioconvert: remove speex resampler
...
It's slower and less accurate then the native one.
2019-08-07 13:06:14 +02:00
Wim Taymans
447d1f94bf
jack: update
2019-08-07 12:59:46 +02:00
Wim Taymans
06446e0d64
port: simplify buffer allocation
...
Use just one function to do buffer allocation on a port.
Remove some unused variables.
2019-08-07 12:56:57 +02:00
Wim Taymans
a319ec55ea
remove some unused code
2019-08-07 12:56:04 +02:00
Wim Taymans
ee66893133
mem: use right flags when mapping
2019-08-07 12:51:36 +02:00
Wim Taymans
ba118e26a3
link: improve buffer negotiation
...
Don't free the buffers when the mix is released, this will happen
when nothing is using them anymore with port_use_buffers later.
Mark a mixer as having buffers when the output port has buffers.
Don't set buffers on a mixer port that already has buffers.
2019-08-06 17:07:21 +02:00