qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 00/15] vnc: adapative tight, zrle, zywrle, and bitma


From: Corentin Chary
Subject: [Qemu-devel] [PATCH 00/15] vnc: adapative tight, zrle, zywrle, and bitmap module
Date: Wed, 11 Aug 2010 07:49:30 +0200

Hi,

In this series you'll find:
 - Adaptive Tight Encoding: send lossy or lossless updates depending on the
 update frequency of the screen region. If a lossy update is forced, then
 it will be refreshed with a lossless update as soon as the update frequency
 goes back to 0.

 - ZRLE/ZYWRLE Encodings: ZYWRLE use less bandwidth than tight, but the result
 is also probably more lossy. I wanted to make ZRLE/ZYWRLE adaptive, but this
 is not possible because most of the vnc clients can't switch between ZRLE and
 ZYWRLE. But a possible solution is to use another encoding for lossless 
updates,
 like zlib or tight.

 - Bitmap module: create bitmap.h and bitops.h, and remove duplicate code
 from vnc.c

This is probably my last series in the GSoC 2010 context, but I'll probably
continue to work on the VNC server for some time :).

Thanks,

Corentin Chary (15):
  vnc: don't set the quality if lossy encoding are disabled
  vnc: add a way to get the update frequency for a given region
  vnc: refresh lossy rect after a given timeout
  vnc: tight: use the update frequency to choose between lossy and
    lossless
  vnc: palette: use a pool to reduce memory allocations
  vnc: palette: add palette_init calls
  vnc: palette: and fill and color calls.
  vnc: Add ZRLE and ZYWRLE encodings.
  vnc: fix uint8_t comparisons with negative values
  vnc: fix lossy rect refreshing
  bitmap: add a generic bitmap and bitops library
  vnc: use the new generic bitmap functions
  vnc: don't try to send bigger updates that client height
  vnc: tight: tweak adaptive tight settings
  vnc: add a non-adaptive option

 Makefile.objs                |    2 +
 bitmap.c                     |  255 ++++++++++++++++
 bitmap.h                     |  222 ++++++++++++++
 bitops.c                     |  142 +++++++++
 bitops.h                     |  272 ++++++++++++++++++
 osdep.h                      |    4 +
 qemu-options.hx              |    9 +
 qemu-thread.c                |    1 +
 ui/vnc-enc-tight.c           |   75 ++++-
 ui/vnc-enc-zrle-template.c   |  275 ++++++++++++++++++
 ui/vnc-enc-zrle.c            |  390 +++++++++++++++++++++++++
 ui/vnc-enc-zrle.h            |   40 +++
 ui/vnc-enc-zywrle-template.c |  170 +++++++++++
 ui/vnc-enc-zywrle.h          |  652 ++++++++++++++++++++++++++++++++++++++++++
 ui/vnc-jobs-async.c          |    4 +
 ui/vnc-palette.c             |   59 +++--
 ui/vnc-palette.h             |    7 +-
 ui/vnc.c                     |  283 ++++++++++++++-----
 ui/vnc.h                     |   57 ++++-
 19 files changed, 2811 insertions(+), 108 deletions(-)
 create mode 100644 bitmap.c
 create mode 100644 bitmap.h
 create mode 100644 bitops.c
 create mode 100644 bitops.h
 create mode 100644 ui/vnc-enc-zrle-template.c
 create mode 100644 ui/vnc-enc-zrle.c
 create mode 100644 ui/vnc-enc-zrle.h
 create mode 100644 ui/vnc-enc-zywrle-template.c
 create mode 100644 ui/vnc-enc-zywrle.h




reply via email to

[Prev in Thread] Current Thread [Next in Thread]