Hi, On Tue, Oct 18, 2016 at 06:07:50AM -0400, Frediano Ziglio wrote: > Hi, > has been a while since I posted a patchset on this. > One reason is that the feature set of the series is not changed. > > Basically all pieces from DRM prime handling to VAAPI (hardware > encoding acceleration), forcing streaming and fallback to software > encoding are there. > > The main concern about these patches are the status of some > implementation. The mainly hacks and fixes came from streaming. > The idea of the streaming code currently is recognizing and > optimizing video streaming done by virtual machine. > With Virgl (using host rendering which is the current target) > the streaming code is used continually so this part of code is > quite stressed. Basically when Virgl kicks in all display become > a big and continuous video. Indeed. I wonder if we should drop the sized-stream code/messages when we have this code in. > This introduce some issues like the fact that if user interaction > stops the frame rate fall down to a 0 average causing some > computation problems. In Spice streaming code or in GStreamer's pipeline (the actual encoding) ? > The other big problems came introducing hardware acceleration > and DRM primes. Hardware accelerations means the use of different > encoders (VAAPI was chosen). The status of these encoders and > the gstreamer plugins (the part of code to use them) status is > not so optimal like software encoders (for instance there is the > lack for changing bit rate dynamically although supported by > VAAPI). Also our gstreamer support code needs specific settings > for every new encoders (for instance to support live streaming). > Another problem with hardware encoders is license issues which > could limit the usage and distribution of the required software; > this lead to having to support fallback to software encoders > to avoid blank screen. > > As said above all these are implemented but with lot of hacks > and restrictions. If one wants to play with the latest virgl branch, which one is it? I'm guessing virgl2 at: https://cgit.freedesktop.org/~fziglio/spice-server/refs/heads > > Reordering the patches and list of todos/bugs I realized that > the main issues came from streaming. For this reason I decided > to focus first of all on the streaming part. The first step > will be the implementation of a proper test as a unit test > for the encoding code checking for different aspect from > encoders, formats (at the beginning just different bitmap > formats, after DRM primes), clipping, bit rate handling. > This will help in the next step to add support for different > formats (DRM primes) and encoders (hardware ones). > > Frediano Step by step, great work :) toso
Attachment:
signature.asc
Description: PGP signature
_______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel