[Spice-devel] [PATCH spice-server 00/28] adaptive video streaming

John A. Sullivan III jsullivan at opensourcedevel.com
Wed Feb 27 08:25:46 PST 2013


> <snip>

> Date: Wed, 27 Feb 2013 10:08:41 -0500 (EST)
> From: Marc-Andr? Lureau <mlureau at redhat.com>
> To: Yonit Halperin <yhalperi at redhat.com>
> Cc: spice-devel at freedesktop.org
> Subject: Re: [Spice-devel] [PATCH spice-server 00/28] adaptive	video
> 	streaming
> Message-ID:
> 	<1561809047.9765259.1361977721766.JavaMail.root at redhat.com>
> Content-Type: text/plain; charset=utf-8
> 
> 
> 
> ----- Mensaje original -----
> > I understand from libjpeg documentation that by default the luminance
> > is
> > downsampled by a factor of 2, and the chrominance by a factor of 4.
> > So
> > we can try downsampling the luminance by a factor of 4.
> 
> or even more arbitrary downscaling before jpeg.
> 
> > > For high resolution video (>720p) the videos codecs are _real_
> > > hogs. I use to run cpu/qos quality of video codecs, and libvp8 at
> > > that time wasn't able to do real time 1080p even on our fastest
> > > hardware (using 8 xeon cores iirc). It wasnt't very good at
> > > running on multiple threads. I can imagine it may have improved
> > > for the past 2 years. (x264 with realtime quality level was ~4x
> > > faster iirc).
> > >
> > It is worth trying. I know that there are live streaming applications
> > that use it, so it may have improved in the last years.
> 
> Note sure if this is very representative, but I would do analysis like this before any plan.
> 
> perf stat gst-launch videotestsrc pattern=snow num-buffers=250 ! 'video/x-raw-yuv,width=1024,height=768,framerate=25/1' ! vp8enc threads=1 quality=5 speed=7 ! fakesink
> 
> On a i5 CPU M 540 @ 2.53GHz ? 4 , 10 sec. of video 1024x768 at 25fps encoding time with a single thread: 39 seconds (speed=7) to 14min! (speed=0, the default):
> 
> Encoding time can vary a lot depending on input. With pattern=ball I get a ~6 to ~14s encoding time, depending on speed parameter. And libvp8 seems better at scaling on multiple thread, but is it really what VDI hosts would want?
> 
> Acceptable? that's a question to ask before using any video codecs. My wild guess today is no, but with good GPU encoder perhaps.
<snip>

I've jumped into this thread a little late but my answer to your last
question about the need for this in VDI is absolutely yes.  We have been
delivering remote desktops for the last four years using NX and RDP.  We
are seeing a greater and greater need for video and see the inability to
do usable video via WAN/Internet based VDI as a huge obstacle to
adoption.  It blocked adoption at a major global PR firm, several
schools, and a rather interesting company that does CV/AI driven
clipping of live sports events.

We are keeping our eyes on SPICE very closely in the hope that it soon
provides an inter-frame compression method for transmitting video as an
alternative to the current MJPEG solution to finally make video on
remote VDI possible.  Thanks - John



More information about the Spice-devel mailing list