Commit Graph

405 Commits (0cdbf6a602caf99802439b5653128ba15a7566d7)

Author SHA1 Message Date
Andri Yngvason 36fb346da1 README: Remove client compatibility table
It never got updated
2022-07-30 22:10:09 +00:00
Philipp Zabel affd7f3f6d Allow to query client-side cursor support
Add a function nvnc_client_supports_cursor() to enable the API user to
make an informed decision whether nvnc_set_cursor() can be expected to
make the client draw the cursor, or whether it has to be rendered into
the framebuffer.
2022-07-29 08:37:29 +00:00
Andri Yngvason d18cc4fc57 Add constants for left and right scroll 2022-07-28 20:13:48 +00:00
Andri Yngvason 263990f5ef stream: Remove stray ampersand in tls handshake failure code path 2022-07-17 20:17:19 +00:00
Andri Yngvason b9a5b9a3f1 h264: Set quality according to client's wishes 2022-07-10 13:53:32 +00:00
Andri Yngvason 528eac51a3 Fix jpeg quality setting
The encoding identifiers are supposed to be interpreted as a range. I
interpreted the upper and lower limits as two discrete quality settings
instead, which is wrong.
2022-07-10 12:41:20 +00:00
Andri Yngvason 43684ec482 Release v0.5.1 2022-07-09 21:39:53 +00:00
Andri Yngvason 86dd97ed0a test: meson: Add missing libdrm_inc dependency 2022-07-09 21:10:42 +00:00
Andri Yngvason f4f8f0bdb3 meson: Use partial_dependency() for libdrm cflags 2022-07-09 20:52:28 +00:00
Jan Beich 4baeaa43fd server: add missing header after f20ffb5e1e
src/server.c:1119:17: error: use of undeclared identifier 'IPPROTO_TCP'
        setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, &one, sizeof(one));
                       ^
2022-07-09 20:04:53 +00:00
Andri Yngvason 734e189c7f Release v0.5.0 2022-07-09 18:03:07 +00:00
Andri Yngvason d85347cfe3 h264-encoder: Set quality
This is to get libav to stop complaining about quality not being set
2022-07-09 17:19:46 +00:00
Andri Yngvason 362918a8cf Integrate libav into logging framework 2022-07-09 17:15:35 +00:00
Andri Yngvason 2f4f1a2caf meson_options: Enable h264 by default 2022-07-09 16:38:15 +00:00
Andri Yngvason 863fb0ce80 h264-encoder: Add dtrace probes 2022-07-09 16:30:25 +00:00
Andri Yngvason f20ffb5e1e server: Turn off Nagle's algorithm 2022-07-09 16:29:18 +00:00
Andri Yngvason d86af88573 server: Log encoder choices 2022-07-09 16:28:09 +00:00
Andri Yngvason dc82b3f29d h264-encoder: Clean up current_packet in destroy 2022-06-29 11:39:46 +00:00
Andri Yngvason b8122725e2 server: Reset encoder callback on frame done 2022-06-29 11:36:05 +00:00
Andri Yngvason 4eb7a3a559 h264-encoder: Call on_packet_ready last in on_work_done
The callback can result in the encoder being destroyed, so we can't
dereference access the encoder object after calling it.
2022-06-29 11:34:12 +00:00
Andri Yngvason e8f2481aa4 open-h264: unref result when finished with it 2022-06-26 14:12:37 +00:00
Andri Yngvason 8bde568112 server: Add dtrace probes with pts 2022-06-26 13:57:32 +00:00
Andri Yngvason 1e3819b6fb open-h264: Add dtrace probes 2022-06-26 13:57:32 +00:00
Andri Yngvason e05e812d93 resampler: Add dtrace probes 2022-06-26 13:57:32 +00:00
Andri Yngvason ee64bc2722 display: Add dtrace probes 2022-06-26 13:57:32 +00:00
Andri Yngvason 4e9eb98301 open-h264: Convert to normal encoder
The push/pull code path is buggy.
2022-06-26 13:56:17 +00:00
Andri Yngvason e6a12ffda7 server: Promote some log levels 2022-06-25 16:32:05 +00:00
Andri Yngvason ad4a834cfc Use new logging system 2022-06-25 16:15:32 +00:00
Andri Yngvason 45da0fc157 Add simple logging system 2022-06-25 16:15:32 +00:00
Andri Yngvason 9285594e9d Call encoder.on_done in a function 2022-06-11 11:44:51 +00:00
Andri Yngvason d4258a0aab cursor: Handle rotated cursors 2022-06-11 11:44:51 +00:00
Andri Yngvason bab78857e1 resampler: Extract function: resample_now() 2022-06-11 11:44:51 +00:00
Harm te Hennepe 7205139b11 Don't call gbm symbols when they are not available 2022-05-24 22:55:34 +00:00
Jan Beich da290abc25 server: consistently use builtin byteswap after 53f88894d5
src/server.c:48:10: fatal error: 'byteswap.h' file not found
 #include <byteswap.h>
          ^~~~~~~~~~~~
2022-04-24 17:56:03 +00:00
Andri Yngvason 53f88894d5 Add presentation timestamps 2022-04-14 18:10:09 +00:00
Andri Yngvason e2e117b02f h264-encoder: Fully flush output packets 2022-04-10 16:21:28 +00:00
Andri Yngvason 3ea068b90c server: Decrement n_pending_requests after dispathing encoding job
The request is as good as handled at that point. We don't want to squeeze
in another frame that the client didn't request before the encoding job
finishes. That would cause a negative pending count and the client would
stop getting updates.
2022-04-03 20:52:24 +00:00
Andri Yngvason 9d8c956983 h264-encoder: Fix copy-pasta 2022-03-06 11:24:33 +00:00
Andri Yngvason aca09358ea Add back damage argument to nvnc_set_cursor
It's better to keep feeding buffers to keep buffers in rotation for damage
tracking purposes.
2022-02-21 21:43:41 +00:00
Andri Yngvason 9c02e6afaf Implement hiding cursors 2022-02-20 14:48:24 +00:00
Andri Yngvason 1553c88f5e Add width and height arguments to nvnc_set_cursor 2022-02-19 23:06:15 +00:00
Andri Yngvason afc0f018da cursor: Use the right scan-line length when width != stride 2022-02-19 21:51:24 +00:00
Andri Yngvason cb282c57c4 cursor: Map cursor buffers before access 2022-02-13 18:44:27 +00:00
Andri Yngvason adce5170ee examples: draw: Handle different endianness for cursor colour 2022-02-12 13:28:15 +00:00
Andri Yngvason c876b91541 pixels: Add function to get rfb pixel format name 2022-02-12 13:15:30 +00:00
Andri Yngvason 0e0fe5b73a pixels: Add function to convert drm format to string 2022-02-12 12:30:12 +00:00
Andri Yngvason 4dcf8ec25b test: pixels: Add a unit test for pixel32_to_cpixel 2022-02-12 12:13:42 +00:00
Andri Yngvason 1f043d6992 Add some unit tests for pixel conversions 2022-02-10 21:53:33 +00:00
Andri Yngvason 70784e1bcc cursor: Fix alpha mask stride 2022-02-10 21:53:33 +00:00
Andri Yngvason 9a292afd52 pixels: Handle different endianness for alpha mask 2022-02-10 21:53:33 +00:00