Commit Graph

156 Commits (d0a92c2e8d7f4e2713ed035bfe25141cebb7df66)

Author SHA1 Message Date
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 13c52175d2 Update .gitignore 2019-10-20 22:12:14 +00:00
Andri Yngvason 96aa73b9d1 Add clang-format settings 2019-10-20 21:42:33 +00:00
Andri Yngvason de1f63573b raw-encoding: Do proper pixel conversion 2019-10-14 10:33:43 +00:00
Andri Yngvason a43bb5d3d4 Use avx or neon for auto-vectorisation 2019-10-13 12:16:24 +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 abac726998 meson: Declare dependency for subproject 2019-10-12 15:23:46 +00:00
Andri Yngvason 23dcc36849 meson: Generate pkgconfig 2019-10-12 14:47:07 +00:00
Andri Yngvason da44680e52 Add meson.build 2019-10-12 13:19:49 +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 024283996e Fix a whoops from last commit 2019-09-14 17:47:30 +00:00
Andri Yngvason b0fb22bdd6 Rename inc -> include for sake of convention 2019-09-14 16:07:34 +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 1d5117554f examples: png-server: Remove y-inversion 2019-09-08 23:29:01 +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 5c1b665737 README: Fix headers for dependency sections 2019-09-07 19:21:51 +00:00
Andri Yngvason 4a3c030697 README: Tell people that the interface isn't stable yet 2019-09-07 19:20:16 +00:00
Andri Yngvason 8026f11b80 README: Document dependencies 2019-09-07 19:18:57 +00:00
Andri Yngvason 18195723d2 README: Add missing build variable 2019-09-07 19:11:08 +00:00
Andri Yngvason 4b0cb37ba9 Add a README 2019-09-07 19:08:21 +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 b4b1f7e7c7 bench: zrle: Use memcpy as a baseline 2019-09-07 18:38:32 +00:00
Andri Yngvason 3f0e0b8867 Allow over-riding of strip exec 2019-09-07 17:31:20 +00:00
Andri Yngvason d7eedd0c01 Use target specific pkg-config wrapper if available 2019-09-07 17:30:21 +00:00