Andri Yngvason
7b6372ef49
damage-refinery: Add copyright notice
2020-07-11 20:53:31 +00:00
Andri Yngvason
2b522ee596
Remove frame-capture abstraction
2020-07-11 20:53:31 +00:00
Andri Yngvason
b0ec79acf8
Move damage hints into buffer abstraction
2020-07-11 20:53:31 +00:00
Andri Yngvason
0615cd44c6
buffer: Add damage field
2020-07-11 20:53:31 +00:00
Andri Yngvason
0edaded063
Remove dead code
2020-07-11 20:53:30 +00:00
Andri Yngvason
3fc07f571d
screencopy: Use linux-dmabuf if available
2020-07-11 20:52:01 +00:00
Andri Yngvason
4a21939b43
buffer: Use create_immed
2020-07-11 20:52:01 +00:00
Andri Yngvason
4fa019d31f
buffer: Add DMA-BUFs
2020-07-11 20:52:01 +00:00
Andri Yngvason
480392e40c
buffer: Add buffer type to interface
2020-07-11 20:52:01 +00:00
Andri Yngvason
c515a29951
Create hash based damage checker
2020-07-11 20:52:01 +00:00
Andri Yngvason
6b1dc2e6c3
Add utilities for managing output transforms
2020-07-11 20:52:01 +00:00
Andri Yngvason
507b76dfbd
Create pixman renderer
2020-07-11 20:52:01 +00:00
Andri Yngvason
29f1669d55
buffer: Leave pixman out of buffers
2020-07-11 20:52:01 +00:00
Andri Yngvason
e65cae43c2
Extract pixel format conversion into own file
2020-07-11 20:52:01 +00:00
Andri Yngvason
a6e1ba25ea
Render using pixman
2020-07-11 20:52:00 +00:00
Andri Yngvason
4fb472f611
Create a buffer abstraction
2020-07-11 20:52:00 +00:00
Andri Yngvason
8eb6658162
Create a unit test for the damage checker
2020-05-10 12:21:10 +00:00
Andri Yngvason
bacae1b515
Add some unit test macros
2020-05-10 12:21:10 +00:00
Andri Yngvason
4f5933c07f
dmabuf: Limit rate to 30 FPS
2020-05-03 19:58:50 +00:00
Andri Yngvason
06a249897b
dmabuf: Show a debug message when frames are held for too long.
2020-04-26 14:14:06 +00:00
Andri Yngvason
36f0480038
time-util return uint64_t from gettime_ms()
2020-04-26 13:37:37 +00:00
Andri Yngvason
1e53e5e45e
timeutil: Add timespec conversion helpers
2020-04-26 13:32:08 +00:00
Andri Yngvason
9d6310cb14
dmabuf: Remove rate limiting
2020-04-26 10:39:58 +00:00
Andri Yngvason
2b6b863eb1
Add copyright notice to strlcpy.h
2020-04-12 13:09:57 +00:00
Andri Yngvason
f9deca5c9c
shm: Add copyright notice
...
Putting a proper license on this to appease package maintainers.
2020-04-12 13:08:42 +00:00
Andri Yngvason
238c196e6b
Capture a new frame immediately when a client requests a whole frame
2020-04-04 15:01:38 +00:00
Andri Yngvason
e00c492a05
Add dtrace probe infrastructure
2020-04-02 00:33:19 +00:00
Andri Yngvason
52c18ffe23
damage: Add asynchronous damage checking
2020-03-28 13:05:59 +00:00
Andri Yngvason
7f5431d922
Move rendering calls into frame-capture
2020-03-28 11:44:40 +00:00
Andri Yngvason
c91816f247
Implement damage buffer conversion
2020-03-28 10:59:21 +00:00
Andri Yngvason
b0a6b6bd2a
renderer: Swap FPOs rather than textures
2020-03-28 10:59:21 +00:00
Andri Yngvason
ae90348ece
renderer: Save previous rendered frame rather than previous imported frame
...
We can't keep dmabufs very long.
2020-03-26 21:43:35 +00:00
Andri Yngvason
b5f1ff0898
renderer: Render to texture
2020-03-26 18:49:37 +00:00
Andri Yngvason
7e709c23e9
renderer: Add damage renderer
2020-03-25 23:21:11 +00:00
Andri Yngvason
6536cbd56f
renderer: Add damage shaders
2020-03-25 23:21:11 +00:00
Andri Yngvason
557f0f365b
renderer: Set up texture bindings on render()
2020-03-25 21:27:57 +00:00
Andri Yngvason
13216fa507
renderer: Add u_tex1 to shaders
2020-03-25 20:26:15 +00:00
Andri Yngvason
49c584f80d
renderer: Move shader setup into render()
2020-03-24 22:57:02 +00:00
Andri Yngvason
4da96d0dc1
renderer: Split buffer import and rendering
2020-03-24 22:48:13 +00:00
Andri Yngvason
9d058c85ce
Renderer: Keep last texture
2020-03-24 22:07:49 +00:00
Andri Yngvason
b39e7535ee
renderer: Use FBO instead of pbuffer
...
This is in preperation for damage checking on the GPU
2020-03-24 19:17:23 +00:00
Andri Yngvason
26cef852b6
Replace libuv with aml
2020-03-21 16:46:10 +00:00
Andri Yngvason
8ff7128714
output: Add coordinate transformations
2020-03-07 14:13:59 +00:00
Andri Yngvason
9642e086d8
render: Set glViewport based on output transform
2020-03-05 22:05:14 +00:00
Andri Yngvason
e01f75bfbd
output: Add functions to get transformed geometry
2020-03-05 22:05:14 +00:00
Andri Yngvason
35ffc2dac7
output: Add transform
2020-03-05 22:05:14 +00:00
Andri Yngvason
a3d4189a0b
render: Add output transforms
2020-03-05 22:05:14 +00:00
Andri Yngvason
a327a2f6dd
render: Add 2D projections
2020-03-05 18:46:27 +00:00
Andri Yngvason
1bf618a098
render: Fetch uniform locations in one place
2020-03-05 18:20:54 +00:00
Andri Yngvason
6b3b448405
render: Move shader_program into shader struct
2020-03-05 18:14:50 +00:00
Andri Yngvason
e5512114f8
render: Only compile the shader that is being used
2020-02-11 21:55:05 +00:00
Andri Yngvason
e6b1ca8044
keyboard: Assign state to keys rather than symbols
...
The keys are pressed and released, not the symbols. This fixes tracking
of the state of a key through modifier changes. E.g. A capital 'A' may
be received from the client while the shift key is pressed, but if the
shift key is released before the 'a' key, the 'a' symbol is generated.
2020-01-25 13:19:08 +00:00
Andri Yngvason
ec7fee42c5
Create an integer set data structure
2020-01-25 13:17:24 +00:00
Andri Yngvason
a1ee09386a
pointer: Add output position to absolute coordinates
...
This fixes mouse issues when there are multiple outputs
2020-01-24 21:14:29 +00:00
Andri Yngvason
7eaece7c0a
Restructure input initialisation
2020-01-24 20:56:47 +00:00
Andri Yngvason
d0bee5c651
output: Add function to find display by name
2020-01-24 20:18:37 +00:00
Andri Yngvason
df936b9dac
Add xdg_output_v1 for more output info
2020-01-24 20:08:57 +00:00
Andri Yngvason
c1210f1426
Create a simple config loader
2020-01-18 17:58:40 +00:00
Andri Yngvason
9eb851cf92
screencopy: Adjust rate limiting based on capturing delay
2020-01-14 20:40:57 +00:00
Andri Yngvason
38d7b9cf4d
screencopy: Simplify rate limiting
2020-01-14 20:12:58 +00:00
Andri Yngvason
017edc6ae1
Handle seat removal
2020-01-14 19:18:33 +00:00
Andri Yngvason
3735efe3d4
time-util: Add #pragma once and copyright notice
2020-01-14 19:02:02 +00:00
Andri Yngvason
ffce795c6f
dmabuf: Limit frame rate to 20 FPS
2020-01-04 15:05:15 +00:00
Andri Yngvason
a6f979e93a
Add seat selection
2019-12-31 14:01:22 +00:00
Andri Yngvason
2b00400b8a
Add option to select keyboard layout
2019-12-30 10:15:12 +00:00
Andri Yngvason
e82e3a92b5
screencopy: Add rate limiting
...
The smoothing filter allows for short bursts of higher frame rate in
order to reduce latency.
2019-12-29 11:47:33 +00:00
Andri Yngvason
c794ca3822
smooth: Use integers rather than floats to store tme
2019-12-29 10:36:08 +00:00
Andri Yngvason
baad0ecd68
Extract time functions into own module
2019-12-29 10:06:25 +00:00
Andri Yngvason
61657c97ba
Add an exponential smoothing filter
2019-12-29 10:02:31 +00:00
Andri Yngvason
09772ddf5b
Clean up some resources
2019-12-27 14:41:54 +00:00
Andri Yngvason
b2bbc9ac0b
Implement keyboard backend
2019-12-25 11:05:05 +00:00
Andri Yngvason
82bdbb82c0
Add virtual pointer backend
2019-12-22 21:42:10 +00:00
Andri Yngvason
25187cbfb2
Add option for output selection
2019-10-13 12:58:56 +00:00
Andri Yngvason
ba3dc617f4
output: Add missing copyright statement
2019-10-13 12:48:12 +00:00
Andri Yngvason
59fa4cfeaa
Move output handling into its own source file
2019-10-13 12:47:02 +00:00
Andri Yngvason
7d3d2d2789
frame-capture: Add license clause
2019-10-10 22:57:53 +00:00
Andri Yngvason
cc1f470c6e
Integrate dmabuf capturing into frame-capture
2019-10-10 22:51:44 +00:00
Andri Yngvason
ffda3c164c
Create frame-capture backend framework
2019-10-10 22:32:54 +00:00
Andri Yngvason
e037e74756
Implement screencopy damage
2019-10-10 21:40:22 +00:00
Andri Yngvason
ddaea0ceab
Add some code for rendering screencopy frames
2019-10-10 21:28:07 +00:00
Andri Yngvason
1132dd6a3c
render: Add a function to render plain framebuffer
2019-10-09 22:37:46 +00:00
Andri Yngvason
8cc00dd5eb
render: rename shader_program -> dmabuf_shader_program
2019-10-09 22:00:01 +00:00
Andri Yngvason
10367226f8
Fix indentation
2019-10-09 20:54:27 +00:00
Andri Yngvason
640b12184d
Align dmabuf backend with screencopy backend
2019-10-09 19:12:16 +00:00
Andri Yngvason
a7b4859611
Working on screencopy backend for comparison width export-dmabuf
2019-10-08 22:16:26 +00:00
Andri Yngvason
a52e1040a0
Add license and copyright notice
2019-10-08 18:41:23 +00:00
Andri Yngvason
119ee0efef
WiP: Implement frame capturing
2019-10-06 22:50:11 +00:00
Andri Yngvason
eaae3ba2db
Add more initialisation code
2019-10-06 22:12:29 +00:00
Andri Yngvason
33772e0b94
render: Fixup
2019-10-06 20:54:59 +00:00
Andri Yngvason
a52ff52fcf
render: Move logging and struct to headers
2019-10-06 18:50:47 +00:00
Andri Yngvason
f4e9169b66
Add strlcpy
2019-10-06 18:49:57 +00:00
Andri Yngvason
89dbbc5fc9
render: Add header
2019-10-06 17:14:53 +00:00
Andri Yngvason
232b945ad0
Wrap interface for wl-export-dmabuf
2019-10-06 17:12:03 +00:00