[Spice-devel] [client v2 0/5] Abstract video streaming from the network details
Francois Gouget
fgouget at free.fr
Thu Apr 6 14:00:16 UTC 2017
Currently the video decoders are directly passed network messages which
ties them pretty closely to the network code. Should the protocol switch
to a new type of messages the video decoding code will need to be
updated. Even worse, it will have to deal with two types of network
messages for backward compatiblity.
So I feel it's better to try and separate the two which is what I've
done in the first two patches.
The third one does not really change the code much, it just separates
the code that creates / destroys the display_stream objects from the
code that handles the network messages leading to their creation /
destruction.
Changes from v1:
* Add a patch documenting the steps each frame goes through in the
GStreamer decoder, along with lifetime information.
* Rename SpiceMetaFrame to SpiceGstFrame.
* Separate renaming SpiceFrame to SpiceGstFrame from the patch removing
the video decoder's dependency on SpiceMsgIn messages.
* Tweaked that patch to minimize changes.
* Fixed the type of the SpiceGstFrame.sample field.
***** Remember: I don't have commit access *****
No patch depends on the ones that follow it. So if the first two patches
are ok but not patch 3, please apply the first two so the next round has
fewer patches.
Francois Gouget (5):
streaming: Document the GStreamer decoding process
streaming: Move SpiceMsgIn parsing to display_handle_stream_create()
streaming: Rename SpiceFrame to SpiceGstFrame in the GStreamer decoder
streaming: Remove the video decoder's dependency on SpiceMsgIn
messages
streaming: Separate the network code from the display_stream
management
src/channel-display-gst.c | 149 ++++++++++++++++++++-----------------
src/channel-display-mjpeg.c | 78 ++++++++++----------
src/channel-display-priv.h | 31 +++++---
src/channel-display.c | 176 ++++++++++++++++++++++----------------------
4 files changed, 233 insertions(+), 201 deletions(-)
--
2.11.0
More information about the Spice-devel
mailing list