Wim Taymans
f92775719a
log: make timestamps configurable
2019-11-19 15:38:09 +01:00
George Kiagiadakis
53f93c2bde
logger: print timestamps on logged messages
...
Timestamps have usec precision and the seconds are limited
to 9 digits. Usually what matters in these messages is to spot
delays between printouts and not really what is the absolute
time of the system.
2019-11-19 14:23:49 +00:00
Wim Taymans
ac24743b2e
the epoll shim should only be used by the system library.
...
All other places should use the system library to get the right
fds.
2019-11-19 15:16:18 +01:00
Gleb Popov
2720df0175
Do not call memfd_create on FreeBSD.
2019-11-19 13:41:40 +01:00
Gleb Popov
47f7caac06
Don't include byteswap.h on FreeBSD.
2019-11-19 13:41:40 +01:00
Gleb Popov
999fa525f5
Implement _gettid() for FreeBSD and do not call pthread_setschedparam() with SCHED_RESET_ON_FORK argument.
2019-11-19 13:41:40 +01:00
Gleb Popov
6ea24a7db5
Don't call getsockopt with SO_PEERCRED and SO_PEERSEC parameters on FreeBSD.
2019-11-19 13:41:40 +01:00
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