Commit graph

6884 commits

Author SHA1 Message Date
maxice8
3b117d9ecf module-rtkit: define RLIMIT_RTTIME in case it isn't defined.
musl libc doesn't define RLIMIT_RTTIME
2018-11-26 13:24:27 +01:00
maxice8
b911c36793 meson: don't add systemd_dep to dependencies if systemd option is false. 2018-11-26 13:24:23 +01:00
maxice8
0a8861bcbc meson: Fix configure when systemd option is set to false
Otherwise it fails with systemd variable not found.
2018-11-26 13:24:19 +01:00
Wim Taymans
7bc9c1ebfe node: remove info from node interface
Replace with info event emited when callbacks are set. This makes it
easier to implement dynamic changes.
2018-11-26 12:41:40 +01:00
Wim Taymans
57e94f7bc4 monitor: remove enum_items
Make the monitor and device emit the info and items when the callbacks
are set. This makes it easier to implement the monitor because there
is much less state to keep around and invalidate etc.
Rework the monitors
Add bluez5 device
2018-11-26 12:18:53 +01:00
Wim Taymans
10d277ce03 cli: introspect device 2018-11-23 19:29:36 +01:00
Wim Taymans
5b303b5883 protocol: add name to device 2018-11-23 19:29:04 +01:00
Wim Taymans
3ae39180ca improve monitors 2018-11-23 19:14:47 +01:00
Wim Taymans
e23c209a5f alsa: implement monitor and device 2018-11-23 17:41:39 +01:00
Wim Taymans
0a88805743 device: handle device remove, clean up nodes 2018-11-23 13:12:03 +01:00
Wim Taymans
e1bd12e599 device: add device object
Make a device object, let the v4l2 monitor create device objects
The device object is responsible for dynamically creating nodes.
2018-11-23 12:43:47 +01:00
Wim Taymans
79253c6d46 interfaces: remove unused stuff 2018-11-22 13:36:29 +01:00
Wim Taymans
db13f90732 monitor: lookup type names 2018-11-22 13:35:30 +01:00
Wim Taymans
25c81e8c34 media-session: only add DSP for raw audio nodes 2018-11-21 12:19:47 +01:00
Wim Taymans
a096e6d9c9 link: only start node when all links are ready 2018-11-16 16:45:40 +01:00
Wim Taymans
c9f7439b52 media-session: debug profile 2018-11-16 16:41:13 +01:00
Wim Taymans
3d3d86fd24 node: set clock id and position 2018-11-12 09:53:49 +01:00
Wim Taymans
e03289b4ac video-src: print node id 2018-11-12 09:52:59 +01:00
Wim Taymans
e69cf24f24 alsa: add dll to estimate clock drift
Make delay signed in the clock io so that we can simply add it to the
tick to get the hw position.
Add clock drift to clock info
2018-11-09 15:26:08 +01:00
Wim Taymans
7925aed863 video-src: use FLAG_MAP_BUFFERS 2018-11-08 11:43:35 +01:00
Wim Taymans
aade499aae fix TIMESPEC_TO_NSEC 2018-11-07 10:07:48 +01:00
Wim Taymans
088ee9f09e Improve TIMESPEC_TO_TIME
Add explicit TO_NSEC and TO_USEC versions to make it clearer and to
allow for some optimizations.
2018-11-07 09:56:24 +01:00
Wim Taymans
bf6843743a export-sink: implement set_io 2018-11-06 15:21:53 +01:00
Wim Taymans
85f2e93c54 Relicense as MIT/X11
Remove some obsolete files
2018-11-05 17:48:52 +01:00
Wim Taymans
e107d75248 protocol-native: improve permission checks 2018-11-05 15:27:13 +01:00
Wim Taymans
eb0a561f8c permissions: pass pw_permission struct around
Use a pw_permission struct to express permissions of object.
Improve client permissions, add/remove globals when permissions
are changed.
2018-11-05 15:02:08 +01:00
Wim Taymans
f994b7eb70 protocol-native: only add fd if client active 2018-11-05 14:58:13 +01:00
Wim Taymans
b905b70a76 stream: pass target id as uint32_t 2018-11-02 11:52:39 +01:00
Wim Taymans
8089d856c8 protocol: add more debug and check right permissions 2018-10-31 16:31:15 +00:00
Wim Taymans
7e8fac2272 type: restore type info for pipewire types 2018-10-31 16:05:58 +00:00
Wim Taymans
95c1b7d0a3 remote: add exported signal
Add a signal to notify when a proxy id has been expored. Use this in the
stream to signal the configure state.
2018-10-31 14:31:49 +00:00
Wim Taymans
f8b93d2a1b stream: only activate when asked 2018-10-31 14:31:20 +00:00
Wim Taymans
0bc6ba8559 node: allow for setting driver root
The driver root is the graph that should be run when a remote driver
starts the graph and can be different from the node itself when it's
part of a subgraph like in client-stream.
2018-10-31 10:57:26 +00:00
Wim Taymans
32afd8d228 video-src: the size is a range 2018-10-31 10:57:26 +00:00
Wim Taymans
aeb77e37f7 gst: don't dup, use DONT_CLOSE flag on fd_allocator 2018-10-31 09:36:19 +00:00
Nicolas Dufresne
02e3713cf1 rtkit: Allow disabling with DISABLE_RTKIT
Allow disabling real time thread, this is useful to run inside
valgrind without being killed.

Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
2018-10-31 07:49:35 +00:00
Jan Grulich
a813afd810 Fix build with c++ compilers 2018-10-31 07:48:28 +00:00
Wim Taymans
df4a5efb89 client-node: don't try to modify the clock
The clock position should match the buffer timestamps and we should
not try to change it. If a client wants to align stream it will
have to do this itself.
2018-10-30 16:32:25 +00:00
Wim Taymans
ee72023629 media-session: try to connect to the node directly
If we can't find a session for the target node, try to connect to the
node directly if it exists.
2018-10-30 16:30:16 +00:00
Wim Taymans
e1583146ff video-src: Add alternative style format pod example 2018-10-30 15:34:54 +00:00
Wim Taymans
83517e22ac media-session: set permissions on restricted access clients 2018-10-29 08:47:45 +00:00
Wim Taymans
9364253886 module-access: use check_access signal
Add restricted, blacklisted and flatpak access types.
2018-10-29 08:46:09 +00:00
Wim Taymans
1c450ce2c1 client: add check_access signal
Fire the check access signal right after creating a client to make it
possible to set permissions.
2018-10-29 08:44:56 +00:00
Wim Taymans
dfde479b20 protocol-native: put client properties in global 2018-10-29 08:43:53 +00:00
Wim Taymans
5088bcce60 module-access: make new access module
Rename the flatpak module to access module. The access module should
either let the client connect or mask the client busy while the
permissions are being configured. It is then up to the session manager
to collect the right permissions of the objects and configure those
in the client.

Let the media session monitor the clients and configure the permissions.
2018-10-27 17:33:21 +01:00
Wim Taymans
e026f55c97 protocol: add more methods on client
Add method to get and set permissions on a client
Add method to send error to client.
2018-10-27 17:31:03 +01:00
Wim Taymans
bbf718cc98 global: add revoke and grant methods
Add methods to grant or revoke access to a global for a client.
2018-10-27 17:26:17 +01:00
Wim Taymans
bd9b74f2d8 global: add list of resources in the global
Remove the list of resources from objects to the global
2018-10-27 17:24:15 +01:00
Wim Taymans
2accfc84d7 Add version to hello 2018-10-27 17:19:50 +01:00
Wim Taymans
537598726b protocol-native: first bind, then register
First let the client bind to the core, then register the client.
This way, the client is ready to receive methods on the core.
2018-10-27 17:10:01 +01:00