qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PATCH v3 00/16] vnc: adapative tight, zrle, zywrle, and bi


From: Corentin Chary
Subject: [Qemu-devel] [PATCH v3 00/16] vnc: adapative tight, zrle, zywrle, and bitmap module
Date: Fri, 4 Feb 2011 09:05:52 +0100

From: Corentin Chary <address@hidden>

Hi,

Since v2:
- Fixed some styles issues
- Rebased to current master
- Fixed a Makefile issue (using .c instead of .o)

I rebased the series against current master, it contains:

 - 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

It was my last series from GSoC 2010 context, if necessary I can send different
series for adaptive vnc, zrle and bitmap stuff.

Thanks,

Corentin Chary (16):
  vnc: qemu can die if the client is disconnected while updating screen
  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                     |  256 ++++++++++++++++
 bitmap.h                     |  222 ++++++++++++++
 bitops.c                     |  142 +++++++++
 bitops.h                     |  272 +++++++++++++++++
 osdep.h                      |    4 +
 qemu-options.hx              |    9 +
 ui/vnc-enc-tight.c           |   75 ++++-
 ui/vnc-enc-zrle-template.c   |  263 +++++++++++++++++
 ui/vnc-enc-zrle.c            |  366 +++++++++++++++++++++++
 ui/vnc-enc-zrle.h            |   40 +++
 ui/vnc-enc-zywrle-template.c |  170 +++++++++++
 ui/vnc-enc-zywrle.h          |  659 ++++++++++++++++++++++++++++++++++++++++++
 ui/vnc-jobs-async.c          |    8 +
 ui/vnc-palette.c             |   58 +++-
 ui/vnc-palette.h             |    7 +-
 ui/vnc.c                     |  283 ++++++++++++++-----
 ui/vnc.h                     |   57 ++++-
 18 files changed, 2786 insertions(+), 107 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

-- 
1.7.3.4




reply via email to

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