George Kiagiadakis
b74dfdee71
si-convert: cleanup config verification
2020-05-04 18:04:33 +03:00
George Kiagiadakis
015d61ccb4
si-softdsp-endpoint: fix issues with the activation transition
2020-05-04 14:20:44 +03:00
George Kiagiadakis
ba81c1e6fe
si-softdsp-endpoint: do not create si-convert streams internally
...
streams should be provided externally,
the user may choose to create any kind of stream
2020-05-04 14:19:39 +03:00
George Kiagiadakis
874d39d99c
si-softdsp-endpoint: use the adapter's stream if it's the only one
2020-05-04 14:14:24 +03:00
George Kiagiadakis
90c6962a2a
si-convert: construct the node internally and cleanup steps + configuration options
2020-05-04 13:20:06 +03:00
George Kiagiadakis
9df3bb715c
modules/si-*: cleanup included headers
2020-05-04 11:24:14 +03:00
George Kiagiadakis
3cecc18807
adapter: remove spa_pod_fixate fallback
...
This won't work with WpSpaPod, obviously...
2020-05-04 10:36:24 +03:00
George Kiagiadakis
e265d8e5a0
adapter: implement WpSiPortInfo and use node FEATURE_PORTS instead of ports_om
2020-05-04 10:12:35 +03:00
George Kiagiadakis
1ac66d4f62
adapter: fix indentation
2020-05-04 09:45:22 +03:00
George Kiagiadakis
9612d35ca4
si-interfaces: drop the multi-endpoint interface
...
It's not well-defined; we'll come back to that later
2020-05-04 09:35:22 +03:00
George Kiagiadakis
c95ee22702
Revert "modules: si-adapter: set/unser WP_SI_FLAG_CONFIGURED when adapter is configured/reset"
...
This reverts commit 4e8ae293f5 .
2020-05-03 20:10:31 +03:00
Julian Bouzas
791e9170aa
si-interfaces: transfer full when returning from _get_stream_parent_endpoint
2020-05-03 19:54:31 +03:00
Julian Bouzas
4e8ae293f5
modules: si-adapter: set/unser WP_SI_FLAG_CONFIGURED when adapter is configured/reset
2020-05-03 19:54:31 +03:00
Julian Bouzas
19c91596c8
algorithms: make sure channels is always less or equal to SPA_AUDIO_MAX_CHANNELS
...
Needed when using audiotestsrc with an adapter
2020-05-03 19:54:31 +03:00
Julian Bouzas
63482108df
modules: add si-softdsp-audio-endpoint module
2020-05-03 19:54:31 +03:00
Julian Bouzas
2d186ed681
modules: add si-convert module
2020-05-03 19:54:31 +03:00
George Kiagiadakis
bccb160bc2
port some more deprecated object-manager calls
2020-05-03 19:49:21 +03:00
George Kiagiadakis
1c74a83a5c
tests: si-simple-node-endpoint: add export test
2020-04-23 17:25:57 +03:00
George Kiagiadakis
d61b7904f9
modules: fix small issues in the session items
2020-04-23 15:22:32 +03:00
George Kiagiadakis
74df1c425e
modules: implement si-simple-node-endpoint
...
This is a simpler endpoint implementation that does not require
any node setup. It should be good to use with test nodes (fakesrc/fakesink),
V4L2 nodes, and maybe others in the future.
2020-04-22 13:53:14 +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
1dccdcf415
object-manager: replace GPtrArray API with WpIterator
...
+ add the useful _find_proxy() method
2020-04-21 13:21:03 +03:00
George Kiagiadakis
49b63b6045
session-item: refactor export to use a process similar to activate
...
+ expose the export transition in the session item class
+ make the export-related flags immutable
+ add an export error flag
+ update and improve documentation
2020-04-16 17:38:31 +03:00
George Kiagiadakis
441a778b2e
session-item: introduce a rollback() virtual method
...
+ replace calling execute_step(..., STEP_ERROR) with rollback
+ implement deactivate internally using rollback
This unifies deactivation steps, which are common between deactivate()
and calling execute_step() with WP_TRANSITION_STEP_ERROR at the
end of a failed activation transition.
2020-04-16 13:18:21 +03:00
George Kiagiadakis
6b51e5842c
tests: add session-item unit test
2020-04-16 11:55:23 +03:00
George Kiagiadakis
0e855d854a
modules: implement si-standard-link, the default WpSiLink implementation
2020-04-11 11:05:09 +03:00
George Kiagiadakis
f713cbee11
session-item: decouple reset from deactivate and export from activate
...
* It should be possible to activate/deactivate while an item
is exported (if the item supports it, but that's a subclass matter)
* It should be possible to deactivate without resetting configuration
2020-04-09 19:24:42 +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
306f75d321
session-item: implement and use _get_associated_proxy() API
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
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
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
0c455a0c11
si-adapter: port to use WpSiFactory
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
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
91eb754b96
softdsp-endpoint: simplify and remove object_safe_new_finish function
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
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
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