George Kiagiadakis
a7dcd3b76f
src: port daemon to the new APIs
2020-11-15 20:26:15 +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
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
George Kiagiadakis
df258c3887
module-metadata: s/settings/plugin/
2020-08-31 16:21:07 +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
71decc1734
main: allow entire blocks to be in comments without side-effects
2020-07-29 19:25:07 +03: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
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
66f2e535cf
config: add .node config files to create audiotestsrc / videotestsrc
...
and add the non-disabled filenames in .gitignore so that I can maintain
symlinks to enable them without commiting them
2020-06-16 16:06:20 +03:00
George Kiagiadakis
cf799dba16
config: remove automotive configuration
...
This is out-of-date and we don't need it in fact... the default
configuration can serve as a good starting point for any custom embedded
use case.
2020-06-16 15:47:09 +03:00
George Kiagiadakis
e81dc5782a
config: add endpoint config files to increase priority on USB audio devices
...
if there is a usb device plugged, we can assume it's meant to be used
instead of the built-in audio
2020-06-16 15:44:39 +03:00
George Kiagiadakis
b3e53daf26
config: add .endpoint config file for audiotestsrc
2020-06-16 13:32:39 +03:00
George Kiagiadakis
82197118f7
config: increase bluez & jack endpoint priorities
...
jack has the highest prio because if it's present, we assume the
user wants to use jack to route everything
bluez has higher prio than alsa because if it's present, we assume
the user wants to use the bluetooth device
2020-06-16 13:13:05 +03:00
George Kiagiadakis
f2d8d220eb
config: rename files to have gaps in their load priorities
2020-06-16 13:08:58 +03:00
George Kiagiadakis
5069ce5eb9
wireplumber.conf: disable bluez monitor by default
...
- because it conflicts with pulseaudio and we actually still want
pipewire to be able to run along pulseaudio on default setups
- and because it doesn't work well yet
2020-06-16 12:10:01 +03:00
George Kiagiadakis
be6d00d370
wireplumber.conf: ignore comments inside blocks or at line ends
...
replace them with spaces so that the GVariant parser ignores them
2020-06-16 12:06:26 +03:00
George Kiagiadakis
926ee5ce9f
src, modules: set PW_KEY_APP_NAME on all cores
2020-06-15 17:56:05 +03:00
Julian Bouzas
53289b9906
m-monitor: allow the monitor module to create multiple devices
2020-06-11 13:50:02 -04:00
Julian Bouzas
74eee35e6f
src: config: add bluez5 endpoint files
2020-06-08 14:06:12 -04:00
Julian Bouzas
e68cd7b700
src: config: enable bluetooth monitor
2020-06-08 11:15:06 -04:00
George Kiagiadakis
4130cf17ca
config: restructure wireplumber.conf and add comments for documentation
2020-06-03 21:13:03 +03:00
George Kiagiadakis
ded2d5e221
config: add .endpoint files to match jack nodes and prioritize them over alsa
...
if jack is running, that probably means that we want the jack
endpoints to be the default playback/capture path
2020-06-03 20:35:31 +03:00
Julian Bouzas
3c36f20d23
src: config: add jack.device file and removed jack device module
2020-06-02 12:24:47 -04:00
Julian Bouzas
d3cb1bd84d
modules: rename config-static-nodes to config-static-objects
2020-06-02 12:24:47 -04:00
Julian Bouzas
128b67e265
src: config: update default configuration to handle nodes created by the jack device
2020-06-01 20:05:03 -04:00
Julian Bouzas
908a7ffbc3
src: config: add midi.node to create the MIDI node at startup
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
daa8b8f5c0
modules: add node-suspension module
...
This module suspends a node if idle for at least 3 seconds
2020-05-26 11:29:18 -04:00
Julian Bouzas
ab1d8aafde
modules: add new si-monitor-endpoint module
2020-05-21 09:47:56 -04:00
Julian Bouzas
2660e13c4a
config: enable monitor ports on audio sinks
2020-05-21 09:47:56 -04:00
Julian Bouzas
c6f24fac8a
main: disconnect core before exiting
...
Disconnecting core finishes all pending tasks, which is needed in order to avoid
possible leaks if some tasks are still pending when exiting.
2020-05-19 10:18:51 -04:00
George Kiagiadakis
27064d78f8
modules: initial version of module-session-settings
2020-05-16 12:54:36 +03:00
Julian Bouzas
f78ca66922
config-policy: remove keep property and never unlink endpoints
2020-05-15 08:28:58 -04:00
George Kiagiadakis
5eecc5b68a
object-manager: remove deprecated API
2020-05-14 16:24:34 +03:00
George Kiagiadakis
1aefda4128
daemon: activate plugins in an idle callback to avoid side-effects
...
the on_sessions_exported callback runs from within the context
of export_tmp_globals in object-manager.c and when plugins register
more object managers, it modifies the object managers list that
export_tmp_globals is iterating over, making things behave really weird
2020-05-13 18:18:52 +03:00
George Kiagiadakis
7149745beb
daemon: activate all available plugins after the sessions are ready
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
Julian Bouzas
6317599477
src: config: add audio sink streams configuration
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
2e781ce607
src: config: load all session item modules
2020-05-11 12:03:43 +03:00
Julian Bouzas
616034174d
src: main: add create-session command to create sessions when wireplumber starts
2020-05-11 12:03:43 +03:00
Julian Bouzas
af5da7a372
src: config: update default wireplumber configuration to work with new config-endpoint module
2020-05-11 12:03:43 +03:00
Julian Bouzas
beb0056dfc
conf: remove loading of unexistent module-session
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