Commit graph

1212 commits

Author SHA1 Message Date
Wim Taymans
e0eeedc369 core: don't send remove_id in hello
The hello method should also destroy the resources for a client but not
send a remove_id for them.
2019-05-10 12:09:26 +02:00
Wim Taymans
5d2f0f5182 remote: only remove the proxy id when it existed 2019-05-06 17:48:23 +02:00
Wim Taymans
7670ee7eec core: destroy all resources on hello
Destroy all resources (except the core) for a client when it
does a hello. This typically needs to be done after passing the
connection fd from one client to another.
2019-05-06 17:05:05 +02:00
Wim Taymans
2b5c6fd676 list: add _consume method
Add safer way to destroy a list of objects.
2019-05-06 17:04:16 +02:00
Wim Taymans
fa0b4f9321 client: properties with "pipewire." prefix are read-only
Properties that start with "pipewire." can only be set once. This
prevents a client from overwriting the ucred or any of the other
protected properties once they are set by the core or a module.
2019-05-06 15:41:26 +02:00
Wim Taymans
3f5b3b7cb1 pipewiresrc: actually use the fd when set 2019-05-06 12:07:25 +02:00
Wim Taymans
e4be9837c4 v4l2: add Camera media.role 2019-04-30 15:54:29 +02:00
Wim Taymans
9f7c9022cf format: map all mjpeg formats to video/mjpeg
Fixes #139
2019-04-10 17:03:14 +02:00
Wim Taymans
9f2cfe1cd6 rtkit: improve DISABLE_RTKIT
DISABLE_RTKIT should not even try to get the dbus connection or
anything.
2019-04-10 16:45:44 +02:00
Nicolas Dufresne
6e7db20bf5 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>
2019-04-10 16:45:38 +02:00
Matthias Fend
bdc81f6dc0 daemon: use correct type for getopt_long() return value
Depending on the compiler configuration 'char' may be an unsigned type
which will not work as expected.

Signed-off-by: Matthias Fend <matthias.fend@wolfvision.net>
2019-04-02 23:26:40 +02:00
Philipp Zabel
181a6a2cea v4l2: do not keep non-capture devices open
If VIDIOC_QUERYCAP fails, or V4L2_CAP_VIDEO_CAPTURE is not set,
spa_v4l2_open should close the port file descriptor again.
2019-04-02 23:25:34 +02:00
ncraun-vivint
737851df6c Quote "$@" in autogen.sh
An unquoted $@ will break for arguments with spaces in their names. Unquoted $@ will work until it doesn't, and then it can be tricky to track down exactly what went wrong. Using "$@" will save someone some headache in the future.
2019-02-13 11:18:31 +01:00
Wim Taymans
f6391be214 add SPA_EXPORT where needed 2019-02-06 11:59:05 +01:00
Wim Taymans
3424c05298 example: use core methods to register types 2019-02-06 11:43:47 +01:00
Wim Taymans
703309f6cd spa: don't use constructor attribute to register factories 2019-02-06 11:38:12 +01:00
Wim Taymans
e4cac644d2 fix some compiler warnings with clang 2019-02-06 11:35:36 +01:00
Wim Taymans
317f3b6be7 type: add function to map types
Add a helper function to map the types. This should be used instead
of calling directly into the type mapper when CFI is used.
2019-02-06 11:10:44 +01:00
Wim Taymans
dd3eb55aee utils: add SPA_EXPORT 2019-02-06 09:21:16 +01:00
Jan Grulich
371da358d1 Avoid invalid conversion error with C++ compilators 2019-01-02 10:44:12 +01:00
Wim Taymans
f8b156ac14 thread-loop: fix leak of event
Destroy the event when the loop is destroyed
2018-12-20 10:34:12 +01:00
Wim Taymans
c511b530ed thread-loop: improve error checking 2018-12-20 10:33:59 +01:00
Wim Taymans
bcec14decb Release 0.2.5 2018-12-20 10:06:16 +01:00
Wim Taymans
5c6bd8e5c7 free() can handle NULL just fine so skip the check
Fixes #117
2018-12-20 09:32:28 +01:00
Wim Taymans
5390079b4a video-src: set valid cursor id 2018-12-18 16:01:12 +01:00
Wim Taymans
7f52246caf Add some more error checking
Fixes #116
2018-12-18 15:37:08 +01:00
Wim Taymans
053e01177d loop: use simple hook emission
Add new simple hook emision without a cursor. The one with the cursor
is not thread safe and is not needed for the loop.

Fixes #110
2018-12-14 10:07:55 +01:00
Wim Taymans
73aac68908 flatpak: only update permissions on sandboxed clients 2018-12-12 15:47:01 +01:00
Wim Taymans
39078f2abc meta: use spa_point and spa_rectangle
Change Cursor and Bitmap to what the work branch uses
2018-11-30 15:49:58 +01:00
Wim Taymans
8205486554 video-play: handle arbitrary cursor sizes
video-play: only allocate the texture when we know the size and
format of the cursor bitmap.
video-src: make cursor size defined with constants.
2018-11-30 12:09:31 +01:00
Wim Taymans
218fd081df meta: define invalid cursor metadata 2018-11-30 12:08:53 +01:00
Wim Taymans
cd53eca92b meta: add cursor metadata and examples
Add a moving and flashing circle cursor to video-src
Render the cursor in video-play
2018-11-30 11:07:45 +01:00
maxice8
67a0b33dc8 module-rtkit: define RLIMIT_RTTIME in case it isn't defined.
musl libc doesn't define RLIMIT_RTTIME
2018-11-26 12:22:38 +00:00
maxice8
5dcaa450ff meson: don't add systemd_dep to dependencies if systemd option is false. 2018-11-26 12:22:24 +00:00
maxice8
57ba8108f1 meson: Fix configure when systemd option is set to false
Otherwise it fails with systemd variable not found.
2018-11-26 12:22:13 +00:00
Wim Taymans
14ebb85e74 Release 0.2.4 2018-11-22 11:21:50 +01:00
Wim Taymans
49afacd66f v4l2: fix crash when unplugging
Only remove the v4l2 fd once on disconnect
Make sure we don't use the clock anymore when a link is destroyed.
2018-11-22 10:54:57 +01:00
Wim Taymans
16b6a51b78 examples: add video crop example
Add support for video crop metadata in video-play and draw only the
cropped areas.
Add support for video crop in video-src and make it generate cropping
regions that grow and shrink dynamically.
2018-11-22 10:18:50 +01:00
Wim Taymans
1ea84b2869 spa: explicitly cast the offset to signed int
As reported by Marcello Blancasio, convert the offset to a signed int
to avoid conversion without sign extension. Fixes unmap of stream
memory.

Fixes #103
2018-11-12 10:50:21 +01:00
Wim Taymans
6f918561c9 flatpak: also check for client property changes
If a client changes the "pipewire.access" property to "flatpak",
start handling the client as a flatpak client and do portal
checks. This is useful when the portal makes a connection for the
client and needs to for portal checks.
2018-11-06 13:28:36 +01:00
Wim Taymans
1f5fec5983 improve update_properties
Make _update_properties return the number of changed properties and
only emit info when something changed.
2018-11-06 12:35:59 +01:00
Wim Taymans
d5c894cfd8 properties: don't add NULL values
NULL values should remove the key.
2018-11-06 12:21:44 +01:00
Arun Raghavan
10ce1a02cf gitignore: Add vim files 2018-10-31 07:47:02 +00:00
Arun Raghavan
4af917e953 gitignore: Add build dir and cscope files 2018-10-31 07:47:02 +00:00
Thibault Saunier
0b2eec9f16 Set GStreamer plugins path in uninstalled env 2018-10-31 07:46:36 +00:00
Thibault Saunier
795b352cba meson: Use feature for GStreamer and make it auto
Bumping version dependency of meson

Fix minor new warning in meson
2018-10-31 07:46:36 +00:00
Mathieu Duponchelle
8693e416bc examples: document how to run 2018-10-29 13:26:46 +00:00
Thibault Saunier
68c2866f7d Fix build when systemd is found but not libsystemd
Getting the following otherwise:

```
[13/28] Compiling C object 'src/modules/src@modules@@pipewire-module-protocol-native@sha/module-protocol-native.c.o'.
FAILED: src/modules/src@modules@@pipewire-module-protocol-native@sha/module-protocol-native.c.o
ccache cc -Isrc/modules/src@modules@@pipewire-module-protocol-native@sha -Isrc/modules -I../src/modules -I. -I../ -Ispa/include -I../spa/include -Isrc -I../src -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -std=gnu99 -O2 -g -fPIC -pthread -DHAVE_CONFIG_H -D_GNU_SOURCE  -MD -MQ 'src/modules/src@modules@@pipewire-module-protocol-native@sha/module-protocol-native.c.o' -MF 'src/modules/src@modules@@pipewire-module-protocol-native@sha/module-protocol-native.c.o.d' -o 'src/modules/src@modules@@pipewire-module-protocol-native@sha/module-protocol-native.c.o' -c ../src/modules/module-protocol-native.c
../src/modules/module-protocol-native.c:36:10: fatal error: systemd/sd-daemon.h: No such file or directory
 #include <systemd/sd-daemon.h>
          ^~~~~~~~~~~~~~~~~~~~~
```
2018-10-29 13:26:17 +00:00
Wim Taymans
e29229b6e0 protocol-native: return errno when server failed
this gives a better error code
2018-10-18 11:15:27 +02:00
Wim Taymans
6266cd0f48 protocol-native: -1 is for invalid fd, not 1 2018-10-18 11:14:52 +02:00