Gleb Popov
33df224254
Use pthread_set_name_np() instead of pthread_setname_np() on FreeBSD.
2019-11-19 13:41:40 +01:00
Gleb Popov
feb9a4b9e1
Don't call prctl() on FreeBSD.
2019-11-19 13:41:40 +01:00
Gleb Popov
0a21c61ed0
Don't define memfd_create() and USE_MEMFD on FreeBSD.
2019-11-19 13:41:40 +01:00
Gleb Popov
9ab4e39704
Add a stub implementation for sched_getcpu, as this function isn't present on
...
FreeBSD.
2019-11-19 13:41:40 +01:00
Gleb Popov
da7eefd60e
Implement get_count() from cpu.c for FreeBSD.
2019-11-19 13:41:40 +01:00
Gleb Popov
ef3ebbed46
Define empty struct ucred on FreeBSD.
2019-11-19 13:41:40 +01:00
Gleb Popov
aec64336fe
Do not try to include endian.h on FreeBSD.
2019-11-19 13:41:40 +01:00
Gleb Popov
fd937fa378
On FreeBSD, add dependency on epoll-shim library.
...
FreeBSD doesn't provide timerfd and eventfd functions. These are implemented in
3rd party library called epoll-shim. Link targets requiring these functions to
this library.
2019-11-19 13:41:40 +01:00
Wim Taymans
68e94a2e7e
system: use spa_system functions for fds
2019-11-19 13:41:40 +01:00
Wim Taymans
b14bb1f496
media-session: don't include use-case.h
...
We only use the use-case manager in alsa-endpoint
2019-11-19 11:29:50 +01:00
Arun Raghavan
f61498b863
session-manager: Fix use-case.h include ordering
...
Seems like the ALSA requires the general headers to be included before
use-case.h.
2019-11-19 07:45:43 +05:30
Wim Taymans
3c51f559ef
elsa-endpoint: include asoundlib first
2019-11-18 10:40:50 +01:00
Philipp Zabel
8c53e5305d
meson: remove spa option
...
PipeWire does not work without at least the basic SPA plugins.
Remove the option to disable SPA.
Fixes #198
Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
2019-11-12 08:14:13 +00:00
Wim Taymans
c63f0ed562
doc: add session-manager <-> pulseaudio mapping
2019-11-08 15:53:14 +01:00
Arun Raghavan
cbf495fa35
Add a code of coduct
...
This is the Contributor Covenant v1.4.1.
2019-11-08 13:57:36 +05:30
Arun Raghavan
4f70a19a82
gitignore: Add generated Makefile
2019-11-08 13:00:00 +05:30
Wim Taymans
f918fa874f
Update README.md
2019-11-07 15:46:04 +00:00
Wim Taymans
9f765897db
add missing files
2019-11-07 16:39:13 +01:00
Wim Taymans
4ad7ce3aa2
session-manager: split policy and monitor
...
Separate the session manager in a monitor and policy part.
The monitor manages the devices and endpoints.
The policy watches the nodes/ports/clients and applies the policy
of linking them.
Because both now have a separate connection, we can remove some
hacks in the protocol. When a remote was both the implementer and
user of an object we could get in a deadlock when the user was
blocked waiting and the implementator was blocked sending a reply.
We used to un-busy a client when it was expecting a reply from a
ping or sync for this reason.
Add and use some more keys for the endpoints and streams.
2019-11-07 16:03:00 +01:00
Wim Taymans
8bbfe876a7
Revert "WIP use endpoint in pulse"
...
This reverts commit 7a4a8d78b9 .
2019-11-07 11:45:16 +01:00
Wim Taymans
74b4790afe
core: handle error when creating memorypool
...
Start data loop later.
2019-11-07 11:43:09 +01:00
Wim Taymans
638ee33f44
remote: only load protocol when not already loaded
2019-11-07 11:41:14 +01:00
Wim Taymans
7a4a8d78b9
WIP use endpoint in pulse
2019-11-06 11:34:14 +01:00
Wim Taymans
9df6efcd8d
properties: copy_keys -> update_keys
...
Change copy_keys to update_keys and make it more powerful by taking
a spa_dict as the source.
Copy some more properties in the session.
2019-11-05 16:35:15 +01:00
Wim Taymans
60cd74fdb0
alsa: set MEDIA_CLASS in nodes
2019-11-05 16:34:12 +01:00
Wim Taymans
1f5aa26452
type: move implementations to a separate section
2019-11-05 16:31:40 +01:00
Wim Taymans
cd1ec41253
jack: use metadata when available
2019-11-05 10:03:35 +01:00
Arun Raghavan
4cf66c00c0
readme: Format in Markdown and add some more information
2019-11-04 16:33:51 +00:00
Wim Taymans
8409e8be49
endpoint: make endpoints of alsa devices
...
Make one endpoint for each device
Make a stream for each node
2019-11-04 17:30:33 +01:00
Wim Taymans
6397db9d68
protocol: init spa_dict properly
...
Or else the flags might be wrong.
2019-11-04 17:30:33 +01:00
Wim Taymans
085f1822b9
session-manager: fix protocol
...
Add separate types for interfaces and implementation
Fix some bugs in the protocol
Add some introspection support in cli
2019-11-04 17:30:33 +01:00
Wim Taymans
29254b688a
pulse: fix list_prev
2019-11-04 17:30:33 +01:00
George Kiagiadakis
15f3d28e11
daemon config & remote: load module-session-manager by default
...
Upstream-Status: Pending
2019-11-04 17:30:33 +01:00
George Kiagiadakis
d6dc0d0356
pipewire-cli: add support for printing endpoint info & params
...
Upstream-Status: Pending
2019-11-04 17:30:33 +01:00
George Kiagiadakis
1e14206c71
extensions: implement new session manager extension
...
This extension, implemented in module-session-manager, implements
a set of objects that are useful for session managers.
2019-11-04 17:30:33 +01:00
Arun Raghavan
44bf0baaa7
ci: Migrate from Travis to GitLab CI
...
This makes more sense now since we're using FDO GitLab for all the other
development infra.
2019-11-03 15:40:50 +00:00
George Kiagiadakis
54733718bd
ci: Add a Dockerfile
...
This is a simple image based on current Fedora with the required build
dependencies.
2019-11-03 15:40:50 +00:00
Wim Taymans
d79abd1502
install metadata header
2019-11-03 16:39:56 +01:00
Wim Taymans
6b565d2eab
format: add video modifier
2019-11-03 16:39:56 +01:00
Arun Raghavan
37a72b2531
Merge pipewire-pulseaudio subtree
2019-11-03 15:20:57 +01:00
Arun Raghavan
863a642e08
Merge pipewire-jack subtree
2019-11-03 15:20:56 +01:00
Arun Raghavan
57d2fbdbf2
Merge pipewire-alsa subtree
2019-11-03 15:20:56 +01:00
Arun Raghavan
59bdab94bc
Drop git submodule structure
...
The workflow is getting a little messy with these, so we're just going
to merge those repositories in.
2019-11-03 15:19:43 +01:00
Wim Taymans
57299ec491
Add missing files
2019-11-03 11:25:23 +01:00
Wim Taymans
612bfe9a64
jack: update
2019-11-03 10:41:26 +01:00
Wim Taymans
c67445c343
test: audioadapter
2019-11-03 10:39:48 +01:00
Wim Taymans
0a81a982f7
metadata: Add metadata API
...
Metadata allows apps to attach properties to objects that can be
read by other apps.
Not complete yet, properties should be removed when the object is
removed.
2019-11-03 10:31:14 +01:00
Wim Taymans
8ddf579cc0
protocol: add flags to protocol marshal
...
Allows us to to select marshallers for implementation and binding.
2019-11-03 10:21:57 +01:00
Wim Taymans
d1e331e268
pod: add POD_None
2019-11-03 10:13:30 +01:00
Wim Taymans
c842b5adf2
reserve: fix RequestRelease
...
Only fail when message is NULL
Actually send the message as well
2019-11-03 10:12:45 +01:00