[Spice-devel] [PATCH spice-gtk v3 0/6] Client-side video stream lag reduction
Frediano Ziglio
fziglio at redhat.com
Fri Jul 26 09:52:07 UTC 2019
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
More information about the Spice-devel
mailing list