codec: RemoteFX YCbCr/RGB conversion optimization
authorNorbert Federa <nfedera@thinstuff.com>
Thu, 29 Dec 2011 16:41:48 +0000 (17:41 +0100)
committerNorbert Federa <nfedera@thinstuff.com>
Thu, 29 Dec 2011 17:01:20 +0000 (18:01 +0100)
commitd3a801db6c5a5a543c9f74ef1394ea5dfd7c7418
treee61257a1438ccc7111a96dbc4e45dd23fa65ba8f
parent522bd24d19f00d25125942a95c8dcf5712d38485
codec: RemoteFX YCbCr/RGB conversion optimization

Replaced the non-accelerated rgb to ycbcr encoder (rfx_encode.c) to use 32-bit
integer multiplication with shifted factors: 2 times faster

The accelerated SSE2 rgb to ycbcr encoder (rfx_sse2.c) was completely changed
and simplified in order to make use of the SSE2 signed 16-bit integer
multiplication: 2 times faster

Also modified the non-accelerated ycbcr to rgb decoder (rfx_encode.c) to use
32-bit integer multiplications with shifted factors instead of floating point
multiplications: 3 times faster
libfreerdp-codec/rfx_decode.c
libfreerdp-codec/rfx_encode.c
libfreerdp-codec/rfx_sse2.c