Commit graph

41 commits

Author SHA1 Message Date
Mihai Fufezan
b03b1c2f27 nix & meson: add hyprland-protocols through pkgconfig (#14) 2023-01-08 14:00:36 +01:00
vaxerski
e2cfaf3eee minor nix fixes 2022-12-03 23:42:56 +00:00
vaxerski
80775707ea Implement hyprland-share-picker 2022-12-03 21:27:49 +00:00
Nick Cao
0a8bfa1460 scdoc: mark as build-time dependency 2022-11-21 10:48:20 +01:00
Simon Ser
520d83ff56 build: bump version to 0.6.0 2022-06-09 11:25:25 +02:00
columbarius
3591fd2a6c meson: bump version and replace deprecated functions 2022-05-06 21:51:58 +02:00
columbarius
9d620273e5 screencast: create gbm device
This is done by using the first device returned by getDRMDevices2
containing a render node (DRM_NODE_RENDER).
2022-04-10 13:38:01 +02:00
columbarius
699e6ecf77 build: define _GNU_SOURCE for PipeWire 0.3.49
PipeWire 0.3.49 added locale aware string functions to the spa library,
which are only available defining _GNU_SOURCE [1]. This will be fixed in
the next PipeWire release [2]

[1] 5f4d031db0
[2] https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1206/
2022-04-04 13:08:47 +02:00
Quantum
74307ceabf Add support for 10-bit colour formats
This makes PipeWire 0.3.41 the minimum required version.
2021-12-20 10:09:16 +01:00
columbarius
7b3a17bae0 meson: bump required pipewire version to 0.3.34 2021-11-06 16:51:36 +01:00
Simon Ser
7c0f352560 build: bump version to 0.5.0 2021-11-05 16:25:28 +01:00
Simon Ser
65cb6d5630 build: bump version to 0.4.0
Forgot to do it. Again.
2021-06-01 17:34:08 +02:00
columbarius
22af25749e config: use inih instead if iniparser 2021-05-03 15:19:20 +02:00
Simon Ser
9f7e59c80a Bump to v0.3.0 2021-04-18 17:17:13 +02:00
Simon Ser
af7cdec82d build: use has_headers in find_library()
This allows to make sure the library's header files are available.
2021-04-18 15:02:44 +02:00
Simon Ser
47f9e1ccea build: remove dirs from iniparser find_library() call
The docs say:

> By default the library is searched for in the system library directory (e.g.
> /usr/lib).

So it should already do the right thing.
2021-04-18 15:02:44 +02:00
Simon Ser
d1328e2f4b build: remove intermediate static library
We don't really need to build an intermediate static library, and
it's causing pain wrt. include directories and dependencies.
2021-04-18 15:02:44 +02:00
Simon Ser
f3bd5195e4 Add man page 2021-03-15 18:09:32 +01:00
Zsolt Donca
ab8ff54f4c Control how many frames are captured per second
The goal is to control the rate of capture while in screencast, as it
can represent a performance issue and can cause input lag and the
feeling of having a laggy mouse.

This commit addresses the issue reported in #66.

The code measures the time elapsed to make a single screen capture, and
calculates how much to wait for the next capture to achieve the targeted
frame rate. To delay the capturing of the next frame, the code
introduces timers into the event loop based on the event loop in
https://github.com/emersion/mako

Added a command-line argument and an entry in the config file as well
for the max FPS. The default value is 0, meaning no rate control.

Added code to measure the average FPS every 5 seconds and print it with
DEBUG level.
2021-03-08 16:59:17 +01:00
Simon Ser
4489ea4bb6 Fix whitespace issues in meson.build 2021-03-04 20:17:35 +01:00
columbarius
07154bb1e3
Add support for config file
Closes: https://github.com/emersion/xdg-desktop-portal-wlr/issues/60
2021-03-03 10:29:56 +01:00
Simon Ser
e103e120e2 Bump to v0.2.0 2021-02-15 10:22:29 +01:00
Jan Beich
4dbeaf3a06 build: add basu as sd-bus provider
Based on https://github.com/emersion/mako/commit/805663cc76e0
2021-01-09 12:21:13 +01:00
Jan Beich
7b7d927cae build: introduce sd-bus-provider option
Based on https://github.com/emersion/mako/commit/67f2ed1862a9
2021-01-09 12:21:13 +01:00
columbarius
39b82ff471 Bump minimum pipewire version 2020-09-19 10:22:44 +02:00
Simon Ser
b82d3fcc01
build: bump version to 0.1.0 2020-05-05 16:18:37 +02:00
Dan Shick
229a34a9fe Globally define _POSIX_C_SOURCE in meson.build
Fix musl issue with time.h
2020-04-23 09:53:34 +02:00
danshick
55f873dac4
Screencast session support (#22)
* Initial session support WIP
Remove libdrm dependency

Remove display from context, add dbus properties

Use random names for shm and pw_stream, init the stream only for new cast instances

Separate cast initialized flag from refcount, cleanup names and comments

* Refactor and stability improvements

Properly report xdp screencast implementation version
2020-04-16 10:21:55 +02:00
Aleksei Bavshin
ea98281d0a
Add D-Bus and systemd service files 2020-04-10 10:48:41 +02:00
Dan Shick
ccc8a31568 Remove pipewire workarounds after upstream fix 2020-04-01 13:38:38 -04:00
obayemi
dfa0ac7040
build: add missing libdrm dependency 2020-03-23 16:49:36 +01:00
Dan Shick
bba347be4c Add pipewire 0.3 support. Workaround pipewire bugs. 2020-03-16 22:43:45 +01:00
Dan Shick
45699637d1 Fix CI with libpipewire02, libdrm. Remove png.h unused import. Cleanup style. 2020-03-13 21:01:32 +01:00
Dan Shick
c0da39f022 Add proper event loop. Remove last threads. Update CI with pipewire. 2020-03-13 21:01:32 +01:00
Dan Shick
eb229b708e Remove thread for pipewire and all locking. Add support for elogind in meson. 2020-03-13 21:01:32 +01:00
Dan Shick
b0c50ff911 Add proper logging 2020-03-13 21:01:32 +01:00
Dan Shick
2a31d2d922 Add thread for wlr screensharing 2020-03-13 21:01:32 +01:00
Simon Ser
d7babf8641
build: disable some annoying warnings 2020-03-13 17:53:50 +01:00
Simon Ser
a9e904a0c8
Add session boilerplate 2019-12-09 12:55:12 +01:00
emersion
2f2fe91ff4
Add D-Bus boilerplate for Screenshot 2018-12-13 18:03:44 +01:00
emersion
7618fdc67d
First commit 2018-12-12 22:29:57 +01:00