George Kiagiadakis
4adf6105ba
endpoint: implement FEATURE_STREAMS
...
This feature enables the caching of WpEndpointStream objects
inside WpEndpoint, making information about streams readily
accessible to the user of an endpoint
2020-03-31 16:11:08 +03:00
George Kiagiadakis
c078a97d77
proxy: add 'bound' signal
2020-03-31 16:11:08 +03:00
George Kiagiadakis
c06317ac3b
object-manager: add _get_n_objects() method
2020-03-31 16:11:08 +03:00
George Kiagiadakis
69ea11ca61
endpoint: improve impl
2020-03-31 16:11:08 +03:00
George Kiagiadakis
25d8e5e375
object-manager: look into the proxy object when checking constraints on a global
...
This allows having constraints on the pw properties and the GObject
properties of the proxy, instead of just on the global properties.
This is only useful for constraints on impl proxies, since the globals
coming from the registry don't have a proxy object associated at the
time they are added in the object managers
2020-03-31 16:11:08 +03:00
George Kiagiadakis
012b2c7383
endpoint-stream: improve impl
2020-03-31 16:11:08 +03:00
George Kiagiadakis
fe82ce9f0d
properties: add wp_properties_ensure_unique_owner() method
2020-03-31 16:11:08 +03:00
George Kiagiadakis
1f1c690b42
properties: remove _copy_keys and add update/add methods similar to the ones in pw_properties
2020-03-31 16:11:08 +03:00
George Kiagiadakis
d7ef39d2d1
properties: rename _copy_all() to _update() to match the pw_properties API
...
... and use pw_properties_update() underneath
2020-03-31 16:11:08 +03:00
George Kiagiadakis
306f75d321
session-item: implement and use _get_associated_proxy() API
2020-03-31 16:11:08 +03:00
George Kiagiadakis
1a45e6504f
object-manager: fix crash when global is removed before it was added in the globals list
2020-03-31 16:11:08 +03:00
George Kiagiadakis
c8f83c99dc
session-item: export streams
2020-03-31 16:11:08 +03:00
George Kiagiadakis
79a39e98c9
transition: call execute_step() with _STEP_ERROR in error conditions
...
This allows the implementation to rollback changes, cancel jobs, etc
2020-03-31 16:11:08 +03:00
George Kiagiadakis
b7566793b7
session-item: make WpSiTransition more generic to reuse it in _default_export()
2020-03-31 16:11:08 +03:00
George Kiagiadakis
1cc2837562
lib: add proxy & impl class for PW_TYPE_INTERFACE_EndpointStream
2020-03-31 16:11:08 +03:00
George Kiagiadakis
405e8ba0d5
session-item / endpoint: implement exporting a WpSiEndpoint
...
* introduces API to export session items
* introduces small changes in the WpSiEndpoint & WpSiStream
interfaces to make it nicer to work with
* ports WpImplEndpoint to use PW_TYPE_INTERFACE_Endpoint
to export. Depends on:
https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/246
(was merged after 0.3.2)
2020-03-29 15:18:20 +03:00
George Kiagiadakis
763156e9f8
session-item: add an _activate_finish() method
2020-03-29 15:02:59 +03:00
George Kiagiadakis
dec8699728
session-item: implement default activation sequence with no steps
...
This allows activating a dummy item for unit testing
2020-03-29 15:02:59 +03:00
George Kiagiadakis
865b6ba535
modules: softdsp-endpoint: disable exporting with WpImplEndpoint
2020-03-29 15:02:59 +03:00
George Kiagiadakis
7b20baa671
modules: drop module-session
2020-03-29 15:02:59 +03:00
George Kiagiadakis
37d3c56d42
session-item: remove get_config_spec, in favor of using WpSiFactory
2020-03-29 15:02:59 +03:00
George Kiagiadakis
0c455a0c11
si-adapter: port to use WpSiFactory
2020-03-29 15:02:59 +03:00
George Kiagiadakis
fc4fa4ca8a
lib: implement WpSiFactory, a factory for session items
2020-03-29 15:02:59 +03:00
George Kiagiadakis
51f7897aa1
modules: implement the "adapter" session item, as a reference
2020-03-29 15:02:59 +03:00
George Kiagiadakis
374c3dc9e2
lib: initial version of the WpSessionItem interfaces
2020-03-29 15:02:59 +03:00
George Kiagiadakis
32dd485649
lib: implement WpSessionItem base class
2020-03-29 15:02:59 +03:00
George Kiagiadakis
5f169d190f
lib: implement a new WpTransition class
...
This is an asynchronous operation class, like GTask,
but it is made to execute several operations underneath,
using a state machine, instead of just a single operation.
2020-03-29 15:02:59 +03:00
Julian Bouzas
c2dfec2184
monitor: add dbus-reservation flag
2020-03-20 14:01:22 -04:00
Julian Bouzas
8887cce5b4
modules: add monitor reservation data API
2020-03-20 14:01:22 -04:00
Julian Bouzas
daa8091666
modules: add monitor dbus device reservation API with unit tests
2020-03-20 14:01:20 -04:00
Julian Bouzas
9c44900e68
config-policy: fix endpoint refcount issues
2020-03-17 12:06:21 -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
91eb754b96
softdsp-endpoint: simplify and remove object_safe_new_finish function
2020-03-03 13:27:18 -05:00
Julian Bouzas
268f97e7bc
docs: add test examples for pulseaudio, jack and video clients
2020-03-03 13:27:18 -05:00
Julian Bouzas
d9abbf811f
config: make default configuration for desktop and create a separate one for automotive
2020-03-03 13:27:18 -05:00
Julian Bouzas
8646a3b003
modules: add WpVideoEndpoint sub-class to handle video
2020-03-03 13:27:15 -05:00
Julian Bouzas
60bdea1ed6
modules: add jack-device module
2020-03-03 11:14:13 -05:00
Julian Bouzas
e4d895902c
config-static-nodes: skip devices without WP_PROXY_FEATURE_INFO
2020-02-28 10:59:42 -05:00
Julian Bouzas
d3df321e3d
config-endpoint-context: skip nodes with null media-class
2020-02-28 10:48:43 -05:00
George Kiagiadakis
ca8d100b3f
meson: temporarily add check to conditionally enable the fade functionality
...
and in case it's missing, also #define some things to make compilation work,
since this is only available in a pipewire branch right now
2020-02-28 13:25:35 +02:00
Julian Bouzas
a861e47643
config-policy: fade in/out when streams are linked/unlinked
2020-02-27 08:39:15 -05:00
Julian Bouzas
64f131cbdd
tests: implement begin_fade vmethod on WpFakeEndpoint
2020-02-27 08:39:15 -05:00
Julian Bouzas
8c674b9f69
base-endpoint: add wp_base_endpoint_begin_fade API
2020-02-27 08:39:15 -05:00
Julian Bouzas
b1d03cd637
stream: add wp_audio_stream_begin_fade API
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
Julian Bouzas
5abdc2fb9e
core: add wp_core_timeout_add API
2020-02-27 08:37:15 -05:00
Julian Bouzas
eaea2156cb
stream: create an audio-fade-source control node if there is a control port
2020-02-27 08:37:15 -05:00
Julian Bouzas
16cdac6dd6
convert/adapter: enable control port if input direction
2020-02-27 08:37:15 -05:00
Julian Bouzas
2439cab55f
convert: use factory name SPA macro
2020-02-27 08:37:15 -05:00
Julian Bouzas
8aa695770c
tests: config-policy: run the main loop in the same thread
2020-02-26 15:51:58 -05:00