Andri Yngvason
|
01522559d6
|
zrle: Fix pixel conversion for bits-per-pixel < 32
|
2020-01-24 23:16:08 +00:00 |
Andri Yngvason
|
230acf0560
|
zrle: Remove unused variable
|
2020-01-24 23:02:47 +00:00 |
Andri Yngvason
|
4ebd60b8cc
|
pixels: Delete useless code
|
2020-01-24 22:29:29 +00:00 |
Scott Moreau
|
1d897b2ba1
|
Swap red and blue colors with tight encoding
|
2020-01-20 14:29:02 -07:00 |
Andri Yngvason
|
450ea90306
|
pixels: Fix rfb_pixfmt_from_fourcc
|
2020-01-19 23:13:12 +00:00 |
Andri Yngvason
|
a80b314eea
|
server: Set the pixel format for the client if it hasn't specified one
|
2020-01-19 22:54:52 +00:00 |
Andri Yngvason
|
4e919c69ce
|
Unbreak raw encoding
|
2020-01-19 21:31:55 +00:00 |
Andri Yngvason
|
aa917decf3
|
pixels: Make it work for 4 bytes per cpixel
|
2020-01-19 21:30:49 +00:00 |
Andri Yngvason
|
7fa074e60b
|
server: Close client if no frame encoding method is available
|
2020-01-19 21:27:17 +00:00 |
Andri Yngvason
|
ebfe4382ee
|
server: Use size_t for encoding indices
|
2020-01-19 19:17:15 +00:00 |
Scott Moreau
|
db6c063aea
|
Include sys/param.h for MIN definition
Fixes #11.
|
2020-01-19 12:00:18 -07:00 |
Jan Beich
|
928d0c20ac
|
Drop unused platform-specific header
../src/zrle.c:29:10: fatal error: 'endian.h' file not found
#include <endian.h>
^~~~~~~~~~
|
2020-01-13 04:04:28 +00:00 |
Andri Yngvason
|
ad0ff6b27c
|
Make Tight encoding optional
|
2019-12-31 10:13:21 +00:00 |
Andri Yngvason
|
ee3f2fefff
|
server: Extract pixel format functions into pixels.c
|
2019-12-30 20:13:40 +00:00 |
Andri Yngvason
|
a0376f2fd4
|
Pass entire client structure to tight encoder
|
2019-12-30 17:48:22 +00:00 |
Andri Yngvason
|
d9f80ad196
|
server: Extract structure definitions into header
|
2019-12-30 17:22:19 +00:00 |
Andri Yngvason
|
8cd33d8a07
|
Add JPEG Tight encoding
|
2019-12-30 10:00:15 +00:00 |
Andri Yngvason
|
52f5510467
|
Send a correct reason string when disconnecting due to unsupported security type
|
2019-12-28 20:50:44 +00:00 |
Andri Yngvason
|
769107b7aa
|
damage: Grow hint box after alignment
|
2019-12-27 18:04:36 +00:00 |
Andri Yngvason
|
00450e0c9d
|
Clean up some memory leaks
|
2019-12-27 15:07:48 +00:00 |
Andri Yngvason
|
875cd5af7b
|
Stop reading from a client as soon as an error occurs on the socket
|
2019-12-27 13:57:40 +00:00 |
Andri Yngvason
|
bfb1cd9fc9
|
Don't buffer up multiple outgoing frames
It's pointless to send multiple frames in a single buffer. It just
overloads the client.
|
2019-12-23 12:11:00 +00:00 |
Andri Yngvason
|
4ebf4623cb
|
Fix read buffer and drop older outgoing frames
|
2019-12-23 09:33:29 +00:00 |
Andri Yngvason
|
80b1f3cb4c
|
Re-format using clang-format
|
2019-10-20 22:13:51 +00:00 |
Andri Yngvason
|
de1f63573b
|
raw-encoding: Do proper pixel conversion
|
2019-10-14 10:33:43 +00:00 |
Andri Yngvason
|
9f67b47e8c
|
damage: Remove vestigial y_inversion code
|
2019-10-13 10:05:36 +00:00 |
Andri Yngvason
|
05ff0c1514
|
Don't send an update that hasn't been requested
|
2019-10-12 17:29:08 +00:00 |
Andri Yngvason
|
6dec7287f7
|
Tune deflate
|
2019-10-12 16:42:59 +00:00 |
Andri Yngvason
|
007578052c
|
Use Z_BEST_SPEED for ZRLE
The default strategy loads the CPU too much when streaming at 60 FPS.
|
2019-10-12 15:47:38 +00:00 |
Andri Yngvason
|
b54bc178f0
|
Fix decoding of encoding message
|
2019-10-08 18:12:57 +00:00 |
Andri Yngvason
|
e9f200f4cc
|
Excise y-inversion code
|
2019-10-08 17:58:35 +00:00 |
Andri Yngvason
|
9501a1da64
|
Keep a reference to the framebuffer while it is in a worker.
|
2019-10-08 17:53:12 +00:00 |
Andri Yngvason
|
bc17fd823e
|
pngfb: Fixup
|
2019-10-07 20:32:34 +00:00 |
Andri Yngvason
|
4beaf88a35
|
Turn around frame update model
Keeping a framebuffer for clients to request from seems to be a better fit for
the VNC standard.
|
2019-10-07 20:29:12 +00:00 |
Andri Yngvason
|
3196a7a46b
|
Make nvnc_fb opaque
|
2019-10-07 17:39:54 +00:00 |
Andri Yngvason
|
0f840b9bb7
|
raw-encoding: Fix vec_reserve for destination buffer
|
2019-09-21 13:33:37 +00:00 |
Andri Yngvason
|
4c36a88cfd
|
Fix y-inversion in damage tracking and raw encoding
|
2019-09-19 19:21:52 +00:00 |
Andri Yngvason
|
40f16fe63b
|
Add raw encoding
It's useful for debugging
|
2019-09-19 18:14:26 +00:00 |
Andri Yngvason
|
7b57449e19
|
damage: Support y-inversion
|
2019-09-19 17:02:21 +00:00 |
Andri Yngvason
|
083eaaf20a
|
Make sure that the client object outlives the encoding worker task
|
2019-09-18 22:16:40 +00:00 |
Andri Yngvason
|
8973ce5637
|
Return error from update when there are no pending clients
|
2019-09-18 21:21:37 +00:00 |
Andri Yngvason
|
7d4af0e741
|
Encode on worker threads
|
2019-09-15 21:53:10 +00:00 |
Andri Yngvason
|
70b2448c6e
|
Create utility function for checking buffer damage
|
2019-09-15 21:53:10 +00:00 |
Andri Yngvason
|
578ee75235
|
zrle: Extract pixel conversion function into own file
|
2019-09-14 16:01:00 +00:00 |
Andri Yngvason
|
b05791db4a
|
zrle: Define tile side length in a macro
|
2019-09-14 16:01:00 +00:00 |
Andri Yngvason
|
3ce98968bb
|
Add macros for compatibility with older libdrm
|
2019-09-10 18:17:45 +00:00 |
Andri Yngvason
|
f3def21c96
|
Fix y-inversion
|
2019-09-08 23:24:01 +00:00 |
Andri Yngvason
|
55051310d6
|
Guard against unsupported pixel formats
|
2019-09-08 16:48:05 +00:00 |
Andri Yngvason
|
ac2adbb721
|
Fix check for closing clients in fb update
|
2019-09-08 16:46:13 +00:00 |
Andri Yngvason
|
73987c2f17
|
Add modifier to do y-inversion during encoding
|
2019-09-08 15:19:56 +00:00 |
Andri Yngvason
|
2e359e734d
|
zrle: Fix endianness
|
2019-09-08 14:41:22 +00:00 |
Andri Yngvason
|
66498bccf8
|
pngfb: Use correct fourcc format
|
2019-09-08 14:40:14 +00:00 |
Andri Yngvason
|
1a450a8e30
|
Explain what pngfb.c does
|
2019-09-07 18:44:48 +00:00 |
Andri Yngvason
|
f9680148f1
|
Remove unused code
|
2019-09-07 18:42:55 +00:00 |
Andri Yngvason
|
6046949726
|
Add license and copyright notices
|
2019-09-07 16:51:07 +00:00 |
Andri Yngvason
|
b6f29b036c
|
Allocate framebuffer per client
|
2019-09-06 20:33:55 +00:00 |
Andri Yngvason
|
18062f08d2
|
Don't send anything to clients that don't have active requests
|
2019-09-06 20:17:03 +00:00 |
Andri Yngvason
|
b10c6c2a5a
|
Implement closing of other clients
|
2019-09-06 20:07:09 +00:00 |
Andri Yngvason
|
6660df4d8d
|
Free encoded frames after sending them
|
2019-09-06 19:26:30 +00:00 |
Andri Yngvason
|
fb335247aa
|
zrle: Fix run-length encoding with palette
|
2019-09-05 23:36:07 +00:00 |
Andri Yngvason
|
3e374c97f0
|
zrle: Copy each tile region to a contiguous buffer before operating on it
|
2019-09-05 22:53:23 +00:00 |
Andri Yngvason
|
80e1093e71
|
zrle: Implement Palette RLE
|
2019-09-01 23:27:56 +00:00 |
Andri Yngvason
|
ff67e2fed3
|
zrle: Keep the stream alive per connection
Otherwise the client doesn't want to play with the server.
|
2019-09-01 19:55:11 +00:00 |
Andri Yngvason
|
46dc074370
|
Fix encoding with offset
|
2019-09-01 13:01:02 +00:00 |
Andri Yngvason
|
20139f617d
|
Add callbacks for new clients and when clients go away
|
2019-08-31 23:30:08 +00:00 |
Andri Yngvason
|
ed5dadd203
|
Use client specific pointers in callbacks
|
2019-08-31 23:16:55 +00:00 |
Andri Yngvason
|
f7ed6b6fce
|
Use miniz instead of zlib
|
2019-08-31 15:50:23 +00:00 |
Andri Yngvason
|
8cb192c0ad
|
Remove some printouts
|
2019-08-29 22:08:30 +00:00 |
Andri Yngvason
|
fd6f47c93c
|
Clean some things up and add more interface functions
|
2019-08-29 21:47:02 +00:00 |
Andri Yngvason
|
6d195dd484
|
Only linear framebuffers supported as is
|
2019-08-29 14:02:29 +00:00 |
Andri Yngvason
|
33324c9373
|
Create an interface
|
2019-08-28 22:46:47 +00:00 |
Andri Yngvason
|
f31b5a6915
|
Add benchmark for zrle
|
2019-08-27 22:29:46 +00:00 |
Andri Yngvason
|
b8e90d3665
|
zrle: Encode into vector
|
2019-08-27 21:49:28 +00:00 |
Andri Yngvason
|
1fc4d436a9
|
zrle: Extract deflate to function
|
2019-08-27 21:04:20 +00:00 |
Andri Yngvason
|
09d64dfbe6
|
zrle: Use vec for tile buffer
|
2019-08-27 20:28:12 +00:00 |
Andri Yngvason
|
980c437f3c
|
Set up a directory structure
|
2019-08-27 19:42:52 +00:00 |