Just rebased on master. Original comment from the author (Francois Gouget): The series main goal is to reduce the video stream lag. Currently the server sets the client's mmtime offset which is the source of the video stream lag. But as was discussed before this offset is entangled with the available network bandwidth estimations as well as with the actual video bitrate which makes it tricky (although mostly doable) to reduce it. Furthermore the server is 5 frame intervals and a network roundtrip away which delays any action it can take. In contrast the client knows immediately when a frame is late and has all the information it needs to figure out how much buffering is needed. So this is the approach taken in this patchset. See patch 7 and up for more details. Francois Gouget (6): channel-display: Minimize the stream lag by ignoring the server one playback: Use the audio timestamps for the global mmtime conversion channel-display: No need to rechedule on mmtime offset changes channel-display: Remove playback_sync_drops_seq_len spice-session: Keep track of the global streams lag mjpeg: Take the decoding time into account to display frames src/channel-display-gst.c | 50 +++---- src/channel-display-mjpeg.c | 36 +++-- src/channel-display-priv.h | 33 ++++- src/channel-display.c | 278 +++++++++++++++++++++++++----------- src/channel-display.h | 2 + src/channel-playback-priv.h | 4 +- src/channel-playback.c | 32 +++-- src/spice-session-priv.h | 8 +- src/spice-session.c | 103 ++++++++++--- 9 files changed, 371 insertions(+), 175 deletions(-) -- 2.20.1 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel