Commit Graph

232 Commits (tight-encoder-v2)

Author SHA1 Message Date
Andri Yngvason 9745352198 tight2: Make sure there are enough workers 2020-07-11 19:54:19 +00:00
Andri Yngvason 539a1235c5 tight2: Fix race 2020-07-11 19:51:15 +00:00
Andri Yngvason 4444c0a8de tight2: Fix leak of jpeg buffer 2020-07-09 14:48:46 +00:00
Andri Yngvason 2ddf58593c tight2: Make sure jpeg isn't too big for buffer 2020-07-09 13:59:53 +00:00
Andri Yngvason c5be1ecd22 server: Use requested quality for tight encoding 2020-07-09 13:35:45 +00:00
Andri Yngvason 72c7474a72 tight2: Add JPEG encoding 2020-07-09 13:29:16 +00:00
Andri Yngvason e1728727c0 tight2: Copy to dst after all deflate is done 2020-07-09 11:59:07 +00:00
Andri Yngvason cd2c296fa9 tight2: Use worker per stream rather than worker per tile 2020-07-09 11:48:25 +00:00
Andri Yngvason ed054fe00d tight2: Release zstream earlier 2020-07-09 10:28:52 +00:00
Andri Yngvason a2f5f11d14 tight2: copy buffer to destination inside worker 2020-07-09 09:44:52 +00:00
Andri Yngvason a967a9dfcc tight2: Fix pixel format and damage 2020-07-08 21:44:36 +00:00
Andri Yngvason 33540d9d5b tight2: limit width & height 2020-07-08 21:05:25 +00:00
Andri Yngvason e941462fb2 tight2: Refactor so that zlib streams are always in order 2020-07-08 20:44:58 +00:00
Andri Yngvason 6310401aef tight2: Fix copy-pasta 2020-07-08 19:24:14 +00:00
Andri Yngvason 6124b65d6f tight: Fix problems found while testing 2020-07-08 18:51:18 +00:00
Andri Yngvason ad11276c4f Use tight encoder v2 2020-07-08 18:21:25 +00:00
Andri Yngvason ec3610221c tight2: Extract header 2020-07-08 18:13:57 +00:00
Andri Yngvason c908c713a6 WiP: Tight encoder v2 2020-07-08 14:49:54 +00:00
Andri Yngvason 9b54f6d936 Clean up dispatch hander on exit 2020-07-06 16:43:53 +00:00
Andri Yngvason 52e30e795b Align with neatvnc API changes 2020-07-06 16:43:15 +00:00
Andri Yngvason 7fb2215c0f Use raw encoding by default if no encoding has been selected
This complies with the standard.
2020-05-31 22:56:27 +00:00
Andri Yngvason 569ad287c5 Fix version error handling 2020-05-29 20:18:05 +00:00
Andri Yngvason 91bd49848f Build benchmarks again 2020-05-27 21:59:34 +00:00
Stefan Agner d2527e57f0 fix build warnings when building without tls
Fix trivial build warnings when building without TLS support.
2020-05-22 20:54:53 +00:00
Stefan Agner 8f9c71bb33 fix below zero message count check
size_t is unsigned and hence can't be below zero, triggering this gcc
warning with gcc 10:
  warning: comparison of unsigned expression in ‘< 0’ is always false [-Wtype-limits]

It seems this if statement is meant to check if there are messages to
process (larger than 0). If there are no messages, we should jump out
early.
2020-05-21 17:44:31 +00:00
Stefan Agner a37eed4a4a remove fb_lock/unlock
The two functions have been removed from the external header file.
Remove them and the now unnecessary field is_locked.
2020-05-21 17:44:31 +00:00
Stefan Agner afbeae8410 add warning if a function is not declared
Add a warning if a function is not declared. Functions used only inside
a compile unit still can be used, but have to be declared with the
static keyword.
2020-05-21 17:44:31 +00:00
Stefan Agner 8316994dfa use static for functions not used outside this compile unit
Add static for all functions only used inside the individual compile
units. This helps the compiler to potentially inline these functions.

This allows to use neatvnc as a Meson subproject in Weston which has
-Wmissing-prototypes enabled by default.
2020-05-21 17:44:31 +00:00
Andri Yngvason c6c567cfaf meson_options: Set the default SIMD extension to sse2
Too may people have old hardware.
2020-05-18 20:11:32 +00:00
Andri Yngvason 477ab4c481 tight: Allow lossy encoding with 16 bpp 2020-05-05 21:34:45 +00:00
Andri Yngvason f3e09fd622 Prepare API for multi-display support
These changes are made now to make it possible to add multi-display
support in the future while keeping the public interface stable.
2020-04-12 18:16:19 +00:00
Andri Yngvason 737dd311a0 Remove nvnc_set_dimensions()
This information is now figured out based on the nvnc_fb passed into
nvnc_set_buffer()
2020-04-12 16:08:33 +00:00
Andri Yngvason 97899ed045 meson: Set -DNDEBUG for all other build types than debug or debugoptimized 2020-04-12 14:25:49 +00:00
Andri Yngvason d12e66b043 raw-encoding: Add copyright notice 2020-04-12 13:18:42 +00:00
Andri Yngvason 2b2d12c755 damage: Add copyright notice 2020-04-12 13:18:28 +00:00
Andri Yngvason a616423c49 fb: Add copyright notice 2020-04-12 13:17:54 +00:00
Andri Yngvason c6f1ab616e tight: Replace an assert with return -1 2020-04-10 12:40:57 +00:00
Andri Yngvason 0350ba1d16 zrle: Replace an assert with return -1 2020-04-10 12:36:51 +00:00
Andri Yngvason a0d49f774a meson: Let user choose x86_64 SIMD extension for release build 2020-04-10 12:35:05 +00:00
Andri Yngvason 297e22b588 Don't render when a client is still encoding 2020-04-10 12:07:35 +00:00
Andri Yngvason 1c2a2231d6 tight: Don't drop MSB when encoding rect size 2020-04-10 11:51:40 +00:00
Andri Yngvason ee2adedfd1 examples: draw: Draw a larget dot 2020-04-08 22:58:14 +00:00
Andri Yngvason 77b866096d Redesign framebuffer update loop
Rendering may now only happen inside the rendering callback. The user is
also allowed to change out the entire buffer in the callback.

The callback is triggered by nvnc_damage_region(), nvnc_damage_whole()
and/or framebuffer update requests.

This fixes #26
2020-04-07 23:35:57 +00:00
Andri Yngvason 048b796ff5 Enable SO_REUSEADDR again 2020-04-06 18:29:17 +00:00
Andri Yngvason 11a73c5cb0 Revert "tight: Limit rectangle max width according to spec"
This reverts commit 999c1ef255.

This sends more rects than the original rect count allows for.
2020-04-06 00:01:32 +00:00
Andri Yngvason 1976221afe Resolve host names in nvnc_open()
This fixes #23
2020-04-04 22:26:00 +00:00
Andri Yngvason e3fae7b2bf Fix turbojpeg dependency
It is now actually optional
2020-04-04 20:10:06 +00:00
Andri Yngvason 8fc5c18b28 Don't show partial frames to new clients 2020-04-04 14:00:03 +00:00
Andri Yngvason f45f90ed9b nvnc_fb: Add a mechanism for signaling that a frame is in use 2020-04-04 12:33:18 +00:00
Andri Yngvason 8c27878dd1 README: Add zlib to list of runtime dependencies 2020-04-03 23:30:35 +00:00