spice/server
Yonit Halperin 80f0865b44 server/red_worker/video: maintain visible region and clip region for streams
Differentiate between the clipping of the video stream, and the region
that currently displays fragments of the video stream (henceforth,
vis_region). The latter equals or contains the former one. For example,
let c1 be the clip area at time t1, and c2 be the clip area at time t2,
where t1 < t2. If c1 contains c2, and at least part of c1/c2, hasn't been
covered by a non-video images, vis_region will contain c2, and also the part
of c1/c2 that still displays fragments of the video.
When we consider if a stream should be "upgraded" (1), due to its area
being used by a rendering operation, or due to stopping the video, we
should take into account the vis_region, and not the clip region (next
patch: not upgrade by the last frame, but rather by vis_region).
This fix will be more necessary when sized frames are introduced (see the
following patches). Then, the vis_region might be larger
than the last frame, and contain it, more frequently than before.

(1) "upgrading a stream" stands for sending its last frame losslessly. Or more
precisely, lossless resending of all the currently displayed lossy areas, that were
sent as part of the stream.
2012-05-03 12:30:55 +03:00
..
tests Ensure config.h is the first include in the file 2012-04-25 09:49:34 +01:00
.gitignore gitignore: add generated_*, vim temps, pyc 2010-11-08 16:06:55 +02:00
agent-msg-filter.c Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
agent-msg-filter.h server: add discard all option to agent message filter 2011-04-04 11:30:30 +02:00
char_device.h Rename usbredir channel code to spicevmc 2011-08-25 14:04:27 +02:00
demarshallers.h Remove trailing blank lines 2012-01-13 18:11:59 +02:00
dispatcher.c Don't do arithmetic on void * type, use uint8_t instead 2012-04-25 09:40:18 +01:00
dispatcher.h server/dispatcher: add dispatcher_register_async_done_callback 2011-11-08 16:22:21 +02:00
glz_encode_match_tmpl.c add #include <config.h> to all source files 2011-05-03 14:44:10 +02:00
glz_encode_tmpl.c Remove trailing whitespace from end of lines 2012-01-13 18:11:59 +02:00
glz_encoder_config.h Fix multiple printf format problems 2012-04-25 09:42:11 +01:00
glz_encoder_dictionary_protected.h Remove trailing blank lines 2012-01-13 18:11:59 +02:00
glz_encoder_dictionary.c Remove trailing blank lines 2012-01-13 18:11:59 +02:00
glz_encoder_dictionary.h Remove trailing blank lines 2012-01-13 18:11:59 +02:00
glz_encoder.c Remove trailing blank lines 2012-01-13 18:11:59 +02:00
glz_encoder.h Use the spice-common submodule 2012-03-25 18:59:10 +02:00
inputs_channel.c Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
inputs_channel.h Remove trailing blank lines 2012-01-13 18:11:59 +02:00
jpeg_encoder.c Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
jpeg_encoder.h Remove trailing whitespace from end of lines 2012-01-13 18:11:59 +02:00
main_channel.c Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
main_channel.h Send name & uuid to capable clients 2012-03-05 18:19:07 +01:00
main_dispatcher.c server, separate SpiceChannelEventInfo from RedStream 2012-02-15 15:04:04 +02:00
main_dispatcher.h [0.8 branch] server: add main_dispatcher 2011-10-31 17:35:54 +02:00
Makefile.am Use the spice-common submodule 2012-03-25 18:59:10 +02:00
mjpeg_encoder.c Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
mjpeg_encoder.h mjpeg_encoder: remove unused functions 2011-07-22 16:53:56 +02:00
red_bitmap_utils.h Remove trailing blank lines 2012-01-13 18:11:59 +02:00
red_channel.c Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
red_channel.h Use the spice-common submodule 2012-03-25 18:59:10 +02:00
red_client_cache.h Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
red_client_shared_cache.h Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
red_common.h Use the spice-common submodule 2012-03-25 18:59:10 +02:00
red_dispatcher.c Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
red_dispatcher.h server/red_worker: pass remote caps to display/cursor red_channel_client's 2012-01-12 16:17:01 +02:00
red_memslots.c server: allow failure in getvirt 2012-04-05 18:28:49 +03:00
red_memslots.h server: allow failure in getvirt 2012-04-05 18:28:49 +03:00
red_parse_qxl.c server: allow failure in getvirt 2012-04-05 18:28:49 +03:00
red_parse_qxl.h server: allow failure in getvirt 2012-04-05 18:28:49 +03:00
red_tunnel_worker.c Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
red_tunnel_worker.h server: Unset executable bit of red_tunnel_worker.h 2011-05-05 20:04:49 +03:00
red_worker.c server/red_worker/video: maintain visible region and clip region for streams 2012-05-03 12:30:55 +03:00
red_worker.h Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
reds_gl_canvas.c Use the spice-common submodule 2012-03-25 18:59:10 +02:00
reds_gl_canvas.h Use the spice-common submodule 2012-03-25 18:59:10 +02:00
reds_sw_canvas.c Use the spice-common submodule 2012-03-25 18:59:10 +02:00
reds_sw_canvas.h Use the spice-common submodule 2012-03-25 18:59:10 +02:00
reds.c Avoid jumping across variables declarations with initializers 2012-04-25 09:42:15 +01:00
reds.h Send name & uuid to capable clients 2012-03-05 18:19:07 +01:00
smartcard.c VSCMsgHeader.reader_id is unsigned, so don't check for >= 0 2012-04-25 09:42:15 +01:00
smartcard.h Use the spice-common submodule 2012-03-25 18:59:10 +02:00
snd_worker.c fix error-path return in snd_set_record_peer() 2012-04-18 11:30:14 +03:00
snd_worker.h Remove trailing blank lines 2012-01-13 18:11:59 +02:00
spice-experimental.h Remove trailing blank lines 2012-01-13 18:11:59 +02:00
spice-server.syms server: export spice_server_is_server_mouse predicate 2012-03-26 14:41:03 +02:00
spice.h server: export spice_server_is_server_mouse predicate 2012-03-26 14:41:03 +02:00
spicevmc.c Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
stat.h Remove trailing blank lines 2012-01-13 18:11:59 +02:00
zlib_encoder.c Use the spice-common logging functions 2012-03-25 19:00:00 +02:00
zlib_encoder.h applying zlib compression over glz on WAN connection 2010-06-21 15:05:37 +02:00