Jonas Holmberg
b1610d37fe
modules: Add module-rt
...
Add a module to set thread priorities without using rtkit.
2021-05-19 17:39:17 +02:00
Peter Hutterer
4e70799922
treewide: drop strzcmp implementations in favor of spa_streq
2021-05-18 22:10:27 +10:00
Peter Hutterer
522f87d5ea
treewide: replace strcmp() != 0 with !spa_streq
...
This change is only done in source files for now, header files will be done
separately.
2021-05-18 22:10:27 +10:00
Peter Hutterer
95a84e797a
treewide: replace !strcmp() with spa_streq()
...
This change is only done in source files for now, header files will be done
separately.
2021-05-18 22:10:27 +10:00
Peter Hutterer
7697ed0757
treewide: replace strcmp() == 0 with spa_streq()
...
This change is only done in source files for now, header files will be done
separately.
2021-05-18 22:10:27 +10:00
Wim Taymans
d9240bb766
adapter: name monitor ports of applications as "monitor"
...
See !668
2021-05-17 15:37:31 +02:00
Wim Taymans
78aae9cfdc
Revert "adapter: set prefix for all monitor ports to "monitor""
...
This reverts commit 38a40949ec .
This is not quite right, virtual devices now have monitor ports
instead of capture ports.
2021-05-17 15:32:33 +02:00
Dark
38a40949ec
adapter: set prefix for all monitor ports to "monitor"
2021-05-15 02:25:25 -04:00
Wim Taymans
170294d7ac
pipewire-pulse: add zeroconf module
2021-05-14 11:39:44 +02:00
Wim Taymans
5c152bab23
zeroconf: improve stream properties
2021-05-14 11:19:02 +02:00
Wim Taymans
a428228ebf
pulse-tunnel: handle holes in record stream
...
Holes in the stream return a NULL ptr. Write silence to the
ringbuffer in that case.
2021-05-14 09:51:51 +02:00
Wim Taymans
9b48c6f3ea
filter-chain: make sure res is always set
2021-05-14 09:48:13 +02:00
Wim Taymans
0ff1d1e4cb
zeroconf-discover: use pw_properties_serialize_dict
2021-05-14 09:09:48 +02:00
Wim Taymans
6744934734
zeroconf: add avahi zerconf discover module
...
Discovers remote sinks and sources and load the tunnel module to
make a local sink and source for them.
2021-05-14 09:09:48 +02:00
Wim Taymans
59842b3bd6
make and use pw_properties_serialize_dict()
...
Remove the multiple other variants and make a better one. Flags are for
future options for escaping and formatting.
2021-05-14 09:08:46 +02:00
Wim Taymans
09cba1e4de
module-pulse-tunnel: use SPA_UNLIKELY instead of PA_UNLIKELY
2021-05-13 14:53:39 +02:00
Wim Taymans
a6c0e35b13
filter-chain: reset graph in suspend
...
To make sure we don't end up with samples from before the suspend.
2021-05-12 20:48:00 +02:00
Wim Taymans
e94a977dcd
filter-chain: Support null inputs/outputs
...
Handle null inputs by ignoring the port
Handle null output by clearing the buffer.
Make sure we only have one input and output linked.
2021-05-12 20:17:15 +02:00
Wim Taymans
2017de6da8
filter-chain: add copy function
2021-05-12 20:16:53 +02:00
Wim Taymans
fb6db4a1f9
pulse-server: clean up default format a little
2021-05-12 18:06:48 +02:00
Wim Taymans
ab9023f752
pulse-server: improve module argument parsing
...
ticks also delimit strings.
Unescape values.
Fixes #1173
2021-05-12 17:44:57 +02:00
Wim Taymans
3ae2b9e189
pulse-server: implement module-tunnel-sink/source
...
See #865
2021-05-12 17:00:45 +02:00
Wim Taymans
938e193987
pulse-tunnel: support node.target
...
Pass the node.target as the target on the remote.
Make a nicer stream name on the remote.
2021-05-12 16:49:19 +02:00
Wim Taymans
44f326013b
module-pulse-tunner: add module to tunnel to PulseAudio
...
Add a module that can make a source or sink that tunnels audio
to or from a (remote) PulseAudio server.
2021-05-12 15:56:59 +02:00
Evgeniy Khramtsov
685ff1dc25
utils: provide strdupa() if not in libc
...
FreeBSD does not have strdupa(), provide it locally then.
Macro by: Gleb Popov <arrowd@FreeBSD.org>
2021-05-11 21:06:28 +03:00
Sanchayan Maity
d8f98df6ed
pulse-server: Implement module-pipe-sink
2021-05-11 13:31:41 +05:30
Wim Taymans
c50c8d2be9
modules: fix some leaks in error paths
...
As found by coverity
2021-05-11 09:55:14 +02:00
Wim Taymans
bfbd6d74ef
filter-chain: add biquads to filter-chain
...
Add some biquad filters to the builtin filters.
Add an example 6 band equalizer sink filter chain.
2021-05-10 18:11:20 +02:00
Wim Taymans
1bfde16a89
filter-chain: update properties on the right stream
...
The filter properties are on the input stream.
2021-05-10 11:29:43 +02:00
Wim Taymans
64f694c02f
filter-chain: add ladspa header
2021-05-10 11:05:06 +02:00
Wim Taymans
d69673816f
filter-chain: use more convenient param Props field
...
Is more convenient for custom properties without an id.
2021-05-10 11:01:13 +02:00
Wim Taymans
2414d3501c
pulse-server: add ladspa sink and source
...
To make an rnnoise filtered source:
pactl load-module module-ladspa-source source_name=rnnoise_mic label=noise_suppressor_mono plugin=/usr/lib64/ladspa/ladspa/librnnoise_ladspa.so
To make an equalizer sink:
pactl load-module module-ladspa-sink sink_name=eq_out label=mbeq plugin=/usr/lib64/ladspa/mbeq_1197.so
2021-05-10 11:01:13 +02:00
Wim Taymans
b2053b9d49
filter-chain: support absolute plugin path
2021-05-10 11:01:13 +02:00
Wim Taymans
00e85a252c
filter-chain: add builtin plugins
...
Add a simple mixer builtin plugin.
Free memory on module unload.
2021-05-10 11:01:13 +02:00
Wim Taymans
3c7222d84b
filter-chain: fix setting control values
...
Add support for getting the control ports from a node. Use this to
configure the control port values.
2021-05-10 11:01:13 +02:00
Wim Taymans
aec4358d72
filter-chain: copy media name
2021-05-10 11:01:13 +02:00
Wim Taymans
a595f88cf1
filter-chain: add example
...
run with pipewire -c filter-chain/demonic.conf
2021-05-10 11:01:13 +02:00
Wim Taymans
f9a29c5424
filter-chain: use node name and port name for control
...
Address controls with node_name:port_name to access all properties
in the graph.
2021-05-10 11:01:13 +02:00
Wim Taymans
4d1fa14774
filter-chain: use the right index for notify ports
2021-05-10 11:01:13 +02:00
Wim Taymans
417a5779e7
filter-chain: use a port structure to hold port info
2021-05-10 11:01:13 +02:00
Wim Taymans
ca9225b5aa
filter-chain: use the right description when linking
2021-05-10 11:01:13 +02:00
Wim Taymans
641e685d5b
filter-chain: add more debug
2021-05-10 11:01:13 +02:00
Wim Taymans
8ec0f1eb4b
filter-chain: parse and handle links
2021-05-10 11:01:13 +02:00
Wim Taymans
4d680a816f
filter-chain: use dependencies to build scheduling plan
2021-05-10 11:01:13 +02:00
Wim Taymans
2714ba47ac
filter-chain: control is just an object
2021-05-10 11:01:13 +02:00
Wim Taymans
1088f875d4
filter-chain: add some more debug
2021-05-10 11:01:13 +02:00
Wim Taymans
5df221cf9a
filter-chain: implement inputs and outputs
...
When inputs/outputs are specified, find the node:port and link them.
Fall back to the first/last node for input/output if no node is given.
Fall back to all input/output ports when no ports are given.
2021-05-10 11:01:12 +02:00
Wim Taymans
aa0fdaf454
module-filter-chain: rename
...
This does not have to be ladspa specific so rename it.
2021-05-10 11:01:12 +02:00
Wim Taymans
eaeb9e9b5d
module-ladspa-filter: expose controls
2021-05-10 11:01:12 +02:00
Wim Taymans
3f5ebdedca
module-ladspa-filter: change to graph syntax
...
Expand the syntax to allow a graph of nodes and links later.
2021-05-10 11:01:12 +02:00