Julian Bouzas
5e02c75574
wpctl: add set-profile option
2020-10-22 11:28:43 +00:00
George Kiagiadakis
268b7dd0a9
transition: stop and return error if cancelled by the GCancellable
2020-10-22 13:27:29 +03:00
Julian Bouzas
ffd43f397b
device: set parent type to GObject in WpSpaDevice structure
2020-10-15 12:04:05 -04:00
Julian Bouzas
397a141150
m-endpoint-creation: add bluez5 endpoint creation for bluetooth devices
2020-10-05 11:35:24 -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
6a5a259fc7
modules: add bluez5 endpoint session item
2020-10-05 11:35:24 -04:00
Julian Bouzas
af196f4f5b
modules: add fake stream session item
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
Julian Bouzas
c603409c60
m-config-policy: set the stream name to the media role propery by default
2020-10-05 11:35:24 -04:00
George Kiagiadakis
26800b80d6
gitlab-ci: really build with pipewire master
...
Apparently git cannot directly clone at an arbitrary commit,
it must be a branch or a tag
2020-09-01 11:12:30 +03:00
George Kiagiadakis
294ba3bda5
gitlab-ci: bump pipewire dependency to latest master
...
because otherwise the metadata unit test fails
2020-08-31 16:27:28 +03:00
George Kiagiadakis
fb8d4b1b1f
metadata: remove WP_METADATA_FEATURES_STANDARD and fix copyright years
2020-08-31 16:22:11 +03:00
George Kiagiadakis
df258c3887
module-metadata: s/settings/plugin/
2020-08-31 16:21:07 +03:00
George Kiagiadakis
40d2a186b6
tests: implement a WpMetadata unit test
2020-08-31 16:16:07 +03:00
George Kiagiadakis
3f160b552c
metadata: improve implementation
...
* Implement the proxy properly with info caching, methods, etc
* Get rid of useless variables and includes
2020-08-31 16:14:47 +03:00
George Kiagiadakis
e68f8d4ae2
tests: fix permissions check failure with latest pipewire
2020-08-31 13:53:04 +03:00
George Kiagiadakis
3e65325519
metadata: fix more coding style issues
2020-07-31 17:46:09 +03:00
George Kiagiadakis
3ae506d223
modules: rename metadata module to just 'module-metadata'
2020-07-31 16:34:01 +03:00
raghu447
65b4562fa0
Implement PW_TYPE_INTERFACE_Metadata
2020-07-30 21:30:14 +05:30
George Kiagiadakis
a73e46e246
Makefile: set the default debug level to INFO, if not specified, for make run
2020-07-29 19:25:07 +03:00
George Kiagiadakis
71decc1734
main: allow entire blocks to be in comments without side-effects
2020-07-29 19:25:07 +03:00
Julian Bouzas
0913257d2e
m-device-activation: assume last profile as the one with highest priority
2020-07-23 09:12:52 +00:00
Julian Bouzas
6550718823
m-device-activation: fix typo when parsing device profiles
2020-07-23 09:12:52 +00:00
David Runge
fbe1e5177b
Allow system cpptoml
...
meson.build:
When the 'wrap_mode' option is set to 'nodownload' use a system version
of cpptoml. This does not require using git and having a network
connection during build, which is important for Linux packaging
infrastructure.
subprojects/cpptoml.wrap:
Pin revision to last release tag (v0.1.1).
lib/wptoml/*.cpp:
Remove 'include/' prefix from all cpptoml related includes, at is not
required.
Closes #17
2020-07-22 20:25:58 +02:00
George Kiagiadakis
4eb853ca7a
docs: mention that the test SPA plugins are required for unit tests
...
Related to #18
2020-07-20 12:20:53 +03:00
Julian Bouzas
86b80f4603
dbus-device-reservation: show error message when property request fails
2020-07-10 10:36:24 -04:00
Julian Bouzas
b0cab6c4e4
dbus-device-reservation: return if call_finish fails when requesting a property
2020-07-08 13:44:01 -04:00
George Kiagiadakis
280c0edfa6
config: improve {audio,video}testsrc.node config files
...
* add library.name to not require adding `add-spa-lib` in pipewire.conf
or wireplumber.conf for this to work
* add a commented local=true; it can be useful to run those nodes
locally for testing, sometimes
2020-07-02 17:07:25 +03:00
George Kiagiadakis
996699762c
NEWS: release 0.3.0
2020-06-29 19:36:49 +03:00
George Kiagiadakis
e7d6ed4573
si-convert: watch links to the convert node instead of the node's state
...
there are underlying issues with the state management of the graph,
so it's not a very good idea to rely on it to activate / deactivate
our convert node depending on the links that exist
instead, track the links ourselves and create/destroy the corresponding
links to the target node accordingly; it's a more robust approach
it was also not entirely correct that we would previously configure
the convert node to be a driver (node.driver=true); maybe this caused
the underlying issues in the first place... we don't need it now
anyway, so it's gone
2020-06-29 18:58:34 +03:00
George Kiagiadakis
648b84c1c4
m-node-suspension: suspend only audio & video device nodes
...
Just like media-session does
JACK nodes should be left untouched
2020-06-29 15:52:09 +03:00
George Kiagiadakis
a3870581fb
spa-device / m-monitor: fix pw_proxy leaks reported by pw_core
...
1. device export proxies must be destroyed manually since they are
not associated with the WpRegistry
2. the monitors should not disconnect before all WpSpaDevice objects
are destroyed; remove the manual disconnect call and let GObject
ref counting do its job (the core will disconnect when its last ref
count is dropped after the last monitor plugin is destroyed)
2020-06-29 13:05:44 +03: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
3bd1a199ed
m-monitor: improve node names for JACK
...
JACK uses : as a separator to distinguish the port name
from the node name, so it ends up doing wrong separations
if we have : in the node name
2020-06-29 13:05:44 +03:00
George Kiagiadakis
030fb7ba46
main: fix size of buffer in call to g_input_stream_read()
...
if there was a remainder in the buffer from a previous iteration,
make sure not to fill too much data and go past the end of the buffer
2020-06-29 13:05:44 +03:00
George Kiagiadakis
785d049f7a
main: fix call to g_input_stream_read after reaching the end of the buffer
...
after consuming the whole buffer, cur & linestart need to
be reset to point back to the beginning of the local buffer
2020-06-29 13:05:44 +03:00
George Kiagiadakis
ac295b10e3
m-config-endpoint: deactivate gracefully even if not activated
...
This may happen if the plugins were loaded but not activated
due to some parse error in wireplumber.conf
2020-06-29 13:05:44 +03:00
George Kiagiadakis
826e5e3c46
si-convert: use the clock rate defined in pipewire.conf
2020-06-29 13:05:44 +03:00
George Kiagiadakis
046040a323
meson: bump version to 0.2.96
2020-06-29 13:05:44 +03:00
George Kiagiadakis
75aac84f40
NEWS: release 0.2.96
2020-06-19 12:51:27 +03:00
George Kiagiadakis
83c7655267
docs: update configuration.md
2020-06-19 12:09:09 +03:00
George Kiagiadakis
374977f954
m-monitor: reduce string copies and leaks in module_init
2020-06-19 10:30:12 +03:00
George Kiagiadakis
fa6c1a74cb
docs: fix broken link
2020-06-19 10:29:07 +03:00
George Kiagiadakis
30affd6b55
m-config-endpoint: also remove monitors when a node disappears
...
previously, we would only remove the endpoint associated with
the node, but not the monitor endpoint...
to implement that, we now store the node's associated session items
in the node's qdata instead of a local hash table, so that we
can store an arbitrary ammount of session items per node
2020-06-18 19:29:35 +03:00
George Kiagiadakis
697226f306
session-bin: call parent's reset() in reset()
...
otherwise the parent never un-exports or de-activates itself
and we leak a bunch of stuff
2020-06-18 19:28:03 +03:00
George Kiagiadakis
879c7d2ab9
si-softdsp-endpoint: use the transition's source_object instead of data in callbacks
...
there is no need to add self in the transition's data,
it's already in source_object
2020-06-18 19:26:30 +03:00
George Kiagiadakis
3966e046ae
docs: add manual test instructions
2020-06-18 19:21:21 +03:00
George Kiagiadakis
fb3d5bea5c
si-monitor-endpoint: add "endpoint.monitor" property on monitor endpoints
2020-06-17 14:54:20 +03:00
George Kiagiadakis
a1a718f8a1
config-endpoint: create monitors after exporting
...
This fixes a failure to activate the monitors if we are using
si-adapter directly instead of si-audio-softdsp-endpoint
2020-06-17 14:47:54 +03:00