[Spice-devel] Streaming video detection

Christophe Fergeau cfergeau at redhat.com
Wed Jul 6 02:08:51 PDT 2011


On Tue, Jul 05, 2011 at 12:30:29PM +0200, Andrea Celestino wrote:
> I have read the document "spice_for_newbies.pdf", that describes how spice
> works.
> When I play a video on the guest, the video is decoded then the user
> application requests the OS graphic engine (X in linux), to perform a
> rendering operation. X passes the command to the QXL driver which translates
> the OS commands to QXL commands and push them into a command ring. libspice
> pulls this command and adds them to the graphic command tree. The command
> tree is used to detect video stream, so starts mjpegencoder, encode each
> frame indipendently and send it to the client as image(because each frame is
> a jpeg image) with a spice protocol message.
> Is it correct?

I'm not 100% sure about the part where you talk about the QXL command
ring/command tree since I don't know this part well, but the rest of your
description is correct. The video detection is done by detecting areas of
the screen that are modified often. This detection (among lots of other
things) is done in server/red_worker.c

Christophe
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/spice-devel/attachments/20110706/3d42f866/attachment.pgp>


More information about the Spice-devel mailing list