George Kiagiadakis
e48cb30828
Fix compiler warnings that appear with the warning flags enabled
...
Fixes #20
2020-12-20 22:16:37 +02:00
Julian Bouzas
321545a32c
modules: refactor dbus reservation
...
The Dbus device reservation has been moved into a separate module, and has also
been refactored to allow reserving a device name before an actual device is
created. Devices now are created and destroyed by the monitor depending on
whether PipeWire owns the device or not. This also simplifies a lot the device
activation module to always enable devices when they are created, and never
worry about checking whether a device is acquired by PipeWire or not.
2020-10-22 14:33:59 -04:00
Julian Bouzas
7d35191091
m-config-endpoint: refactor and rename to endpoint-creation
...
Allows implementing device specific endpoint creation logic, which is currently
needed for bluetooth endpoints as they need to be created differenly.
2020-10-05 11:35:24 -04:00
Julian Bouzas
236f6f8fc5
m-si-adapter: use the adapter's name as stream name
2020-10-05 11:35:24 -04:00
Julian Bouzas
b2438f2cef
m-si-adapter: set the configured flag when configuration was successful
2020-10-05 11:35:24 -04:00
George Kiagiadakis
b59ff48156
si-convert: improve node properties for convert nodes
...
* do not copy the full alsa node properties set
* use a node description that makes the nodes look better in JACK
* use . instead of / as a separator for the node.name, like elsewhere
* add audio.convert spa lib association in the tests that use si-convert;
previously it used to work because library.name was present in the
properties copied from the adapter (and it so happens that the adapter
lives in the audioconvert spa plugin as well ...)
2020-06-29 13:05:44 +03:00
George Kiagiadakis
707518937a
tests/config-policy: add "node.autoconnect" on nodes to pass the test
2020-06-16 19:15:09 +03:00
Julian Bouzas
cd3401bcb5
dbus-device-reservation: add owner-appeared/owner-vanished signals, and remove acquired callback
2020-06-07 16:28:44 -04:00
Julian Bouzas
d3cb1bd84d
modules: rename config-static-nodes to config-static-objects
2020-06-02 12:24:47 -04:00
Julian Bouzas
c97eccea16
tests: dbus-device-reservation: free the string properties
2020-06-01 20:05:03 -04:00
Julian Bouzas
5323ee14a5
dbus-device-reservation: emit forced 'release' signal when name is lost and pending task is NULL
2020-06-01 20:05:03 -04:00
Julian Bouzas
d11c67fe98
dbus-device-reservation: change the forced param type from the 'release' signal to boolean
2020-06-01 20:05:03 -04:00
George Kiagiadakis
64347e67e2
tests: si-standard-link: test that endpoint-link properties are set
2020-06-01 19:03:39 +03:00
Julian Bouzas
da63c05e76
m-config-static-nodes: remove unneeded 'conected' callback and create static nodes when the plugin is activated
2020-05-29 08:43:36 -04:00
Julian Bouzas
9667cccb5a
modules: move monitor device activation logic into a new device-activation module
2020-05-26 11:52:44 -04:00
Julian Bouzas
469c35edc8
m-monitor: remove monitor prefix from dbus device reservation API
2020-05-26 11:29:18 -04:00
George Kiagiadakis
8a94937b2a
proxy: refactor how PARAM_Props/PropInfo are handled
...
+ rename FEATURE_CONTROLS to FEATURE_PROPS
+ add accessor for the standard spa_param_info (info->params)
+ hide the low-level params API that nobody uses
2020-05-25 18:54:41 +03:00
Julian Bouzas
522d32224e
modules: config-policy: rename link-activated signal to link-created
2020-05-19 10:18:51 -04:00
Julian Bouzas
bb82b0832e
tests: config-policy: make sure the link is activated before stopping
2020-05-19 10:18:51 -04:00
George Kiagiadakis
3c8d7da879
Merge remote-tracking branch 'origin/master' into next
2020-05-18 10:25:03 +03:00
George Kiagiadakis
5eecc5b68a
object-manager: remove deprecated API
2020-05-14 16:24:34 +03:00
Julian Bouzas
27ff8d5ef2
modules: port config-static-nodes to use WpPlugin
2020-05-13 11:21:45 -04:00
Julian Bouzas
faa9719f53
modules: port config-policy to use WpPlugin
2020-05-13 11:21:45 -04:00
George Kiagiadakis
e9c51653af
modules: port config-endpoint to use WpPlugin
2020-05-12 18:18:24 +03:00
Julian Bouzas
6044b23aed
modules: refactor config-policy to use the new session item API
2020-05-12 10:03:29 -04:00
Julian Bouzas
4b7bc92e4b
modules: remove pipewire module and move algorithms to module-si-adapter
2020-05-12 09:47:35 -04:00
George Kiagiadakis
66a0bf6093
lib: implement a wp_init() function
2020-05-11 15:45:09 +03:00
Julian Bouzas
288f1f091b
modules: refactor config-endpoint to use the new session item API
2020-05-11 12:03:43 +03:00
George Kiagiadakis
e8e6c1d8bc
algorithms: allow specifying a preferred number of channels in the format choosing algorithm
2020-05-11 11:40:55 +03:00
Eric Engestrom
80dc7723fc
test/dbus-device-reservation: fix include path
...
The extra `../` only works if the build directory is an immediate child of the
source directory. In all the other configurations this breaks the build.
Dropping the extra `../` makes use of the `-I${SOURCE_DIR}` provided by meson.
Signed-off-by: Eric Engestrom <eric@engestrom.ch>
2020-05-08 15:16:50 +02:00
George Kiagiadakis
f24fc53d5a
tests/common: add common function for ensuring an object manager is installed
...
It can be a bit tricky because the "installed" signal may be fired
from inside the context of wp_core_install_object_manager(),
in which case the main loop should not be executed (or it will never quit)
2020-05-07 16:16:45 +03:00
George Kiagiadakis
9db4a54591
session-item: handle destroyed endpoint links
...
We can now call wp_proxy_request_destroy() on endpoint links and
the WpImplEndpointLink together with the session item that created
it will be cleaned up
2020-05-07 16:02:23 +03:00
George Kiagiadakis
6501307d27
tests: add si-standard-link unit test
2020-05-05 18:04:50 +03:00
George Kiagiadakis
23ae8c0d51
tests/si-softdsp-endpoint: add tests for streams
2020-05-04 18:04:53 +03:00
George Kiagiadakis
82b598edbf
tests/si-*: use new WpObjectManager API
2020-05-04 16:29:36 +03:00
George Kiagiadakis
bd9ae98c9b
tests/si-softdsp-endpoint: fix the tests to reflect the latest changes
2020-05-04 16:04:37 +03:00
Julian Bouzas
fc864eb2b3
tests: add export test for si-audio-softdsp-endpoint
2020-05-03 19:54:31 +03:00
Julian Bouzas
e810d32719
tests: add basic test for si-audio-softdsp-endpoint
2020-05-03 19:54:31 +03:00
George Kiagiadakis
444814d753
tests: common: add common callbacks based on the si-simple-node-endpoint test
2020-04-23 17:54:49 +03:00
George Kiagiadakis
1c74a83a5c
tests: si-simple-node-endpoint: add export test
2020-04-23 17:25:57 +03:00
George Kiagiadakis
c1c91ce7d0
tests: add basic test for si-simple-node-endpoint
2020-04-23 15:49:32 +03:00
George Kiagiadakis
fe12e8ab6f
tests: enable WIREPLUMBER_DEBUG and set WIREPLUMBER_MODULE_DIR by default
...
+ better logs by default
+ allow loading modules in tests
2020-04-22 18:39:11 +03:00
George Kiagiadakis
1d157f016a
tests: move common fixture code to WpBaseTestFixture
2020-04-22 18:39:03 +03:00
George Kiagiadakis
4eaa99a698
tests: collect common helpers in the 'common' directory
2020-04-22 17:13:33 +03:00
Julian Bouzas
cfbcb5eca3
proxy: use WpSpaPod instead of struct spa_pod in public API
2020-04-21 16:11:05 -04:00
George Kiagiadakis
9ca342f89f
debug: update all library code to use the new debug system
...
+ enable the new log writer on the executables
+ enable structured logging in the tests
2020-04-14 18:31:17 +03:00
Julian Bouzas
daa8091666
modules: add monitor dbus device reservation API with unit tests
2020-03-20 14:01:20 -04:00
Julian Bouzas
8adde3df75
tests: don't load unneeded audioconvert plugin in config-policy tests
2020-03-10 12:50:27 -04:00
Julian Bouzas
64f131cbdd
tests: implement begin_fade vmethod on WpFakeEndpoint
2020-02-27 08:39:15 -05:00
Julian Bouzas
620f95b628
core: add source nullable parameter in _idle_add and _timeout_add APIs
2020-02-27 08:39:10 -05:00