[Spice-devel] [PATCH 0/9] add optional libjpeg-turbo use to spice-server mjpeg encoder
Christophe Fergeau
cfergeau at redhat.com
Tue Jul 5 03:04:22 PDT 2011
I finally ran some performance test on these changes on a small theora
clip, average compression time goes down from 17,7 ms per frame to 14 ms
per frame which corresponds to a 20% improvement.
Christophe
On Tue, Jun 28, 2011 at 01:18:01PM +0200, Christophe Fergeau wrote:
> Hi,
>
> Currently, the mjpeg encoder has to preprocess the images it gets from
> spice-server to make sure the pixel order is the one libjpeg expects (RGB).
> This means iterating over the whole images swapping pixels since the input
> images are BGR or BGRX.
> However, libjpeg-turbo, in addition to SIMD optimization to JPEG decoding,
> also brings additional input colorspaces, including BGR and BGRX. This patch
> series make use of these new colorspaces in the mjpeg encoder to avoid
> the conversion step.
> libjpeg-turbo use is optional and the code will still do the conversion
> step if libjpeg-turbo wasn't present at compile time. Most of these patches
> are refactoring, the one introducing the libjpeg-turbo code is the one
> before the last.
>
> Christophe
>
> Christophe Fergeau (9):
> red_worker: remove 2 empty functions
> red_worker: factor pixel conversion code
> mjpeg_encoder: rework output buffer allocation
> red_worker: simplify red_rgb_to_24bpp prototype
> mjpeg_encoder: add mjpeg_encoder_encode_scanline
> mjpeg_encoder: add mjpeg_encoder_get_bytes_per_pixel
> red_worker: use new mjpeg_encoder_encode_scanline API
> mjpeg_encoder: use libjpeg-turbo extra colorspaces
> mjpeg_encoder: remove unused functions
>
> server/mjpeg_encoder.c | 226 +++++++++++++++++++++++++++++++++++++++++-------
> server/mjpeg_encoder.h | 10 ++-
> server/red_worker.c | 178 +++-----------------------------------
> 3 files changed, 213 insertions(+), 201 deletions(-)
>
> --
> 1.7.5.4
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel
-------------- 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/20110705/666efa32/attachment-0001.pgp>
More information about the Spice-devel
mailing list