summaryrefslogtreecommitdiffstats
path: root/libvncclient/tls_none.c
diff options
context:
space:
mode:
authorDRC <information@virtualgl.org>2017-11-06 17:25:41 -0600
committerDRC <information@virtualgl.org>2018-01-22 16:49:11 -0600
commitd7b14624cbb9ed7b9df3532658e1edba8da606a6 (patch)
tree8f741c88d3d1b49d091f36238e57c84b574421b2 /libvncclient/tls_none.c
parent6814e946e0afed20a6ef0f45a9bcbfeda2e77706 (diff)
downloadlibtdevnc-d7b14624cbb9ed7b9df3532658e1edba8da606a6.tar.gz
libtdevnc-d7b14624cbb9ed7b9df3532658e1edba8da606a6.zip
Include Tight decoding optimizations from TurboVNC
- As with the encoder, the decoder now uses the TurboJPEG wrapper, which allows it to decode JPEG images directly into the framebuffer. This eliminates a buffer copy (CopyRectangle()) as well as the expensive RGB pixel conversion in DecompressJpegRectBPP(). The TurboJPEG wrapper performs RGB pixel conversion more optimally, and only when necessary (it uses the libjpeg-turbo colorspace extensions when available, in order to avoid RGB conversion.) - The other Tight subencoding types are also now decoded directly into the framebuffer, which eliminates buffer copies. - The Tight decoder now supports the rfbTightNoZlib extension, which allows the server to bypass zlib compression when Compression Level 0 is selected. The encoder already supports this extension. Passing the data stream through zlib when Compression Level 0 is selected needlessly wastes CPU time, since all zlib is doing is copying the data internally into its own structures.
Diffstat (limited to 'libvncclient/tls_none.c')
0 files changed, 0 insertions, 0 deletions