Michael Osborne
d588e30a38
correct colors for 16-bit displays
2012-03-02 16:49:52 -06:00
Philippe Auphelle
bfe6743629
Restore not-in-place bitmap flip (saves one memcpy() per flipped scanline)
2012-02-28 17:08:14 +01:00
Philippe Auphelle
6040f10ca9
Merge remote-tracking branch 'upstream/master'
2012-02-07 15:03:48 +01:00
Marc-André Moreau
66cd849229
xfreerdp-server: improve XShm encoding
2012-02-04 18:18:46 -05:00
Philippe Auphelle
68afff5faa
Merge remote-tracking branch 'upstream/master'
2012-02-03 14:44:10 +01:00
Marc-André Moreau
b4e542ba46
libfreerdp-core: fix multiple memory leaks detected by valgrind
2012-02-01 18:42:20 -05:00
Philippe Auphelle
7267eafe0f
Merge remote-tracking branch 'upstream/master'
2012-01-26 10:57:18 +01:00
Philippe Auphelle
37eb0717fa
Merge remote-tracking branch 'upstream/master'
2012-01-25 13:55:55 +01:00
cool
d344a7e456
nscodec final color bug fix
2012-01-24 21:06:48 -11:00
Bernhard Miklautz
e9f1de751b
build: Added option WITH_NEON
...
Enables neon optimized rfx decoder
2012-01-24 09:04:02 +01:00
Philippe Auphelle
50b0b74bc4
Merge remote-tracking branch 'upstream/master'
2012-01-17 13:01:38 +01:00
Marc-André Moreau
949bce4d54
wfreerdp: fix warnings and color conversion
2012-01-16 11:40:18 -05:00
Philippe Auphelle
7671f4a15b
Merge remote-tracking branch 'upstream/master'
2012-01-11 16:45:51 +01:00
Marc-André Moreau
c7cc745575
libfreerdp-codec: add freerdp_convert_color_var()
2012-01-09 18:45:36 -05:00
louyihua
7b30f732f2
libfreerdp-codec: RDVH may return more than one channels in TS_RFX_CHANNELS message.
2012-01-10 05:18:31 +08:00
Marc-André Moreau
26cd7bc476
libfreerdp-core: add support for raw planes in RDP6 bitmap decompression
2012-01-04 19:55:31 -05:00
Philippe Auphelle
9007a3aacf
Merge remote-tracking branch 'upstream/master'
2012-01-04 17:44:44 +01:00
Marc-André Moreau
9dff0cd7f5
libfreerdp-core: clarification of bitmap decompression
2012-01-03 18:22:42 -05:00
cool
8908aab34b
fix complete
2012-01-01 16:07:58 -11:00
cool
ca79a7dcb2
fixed color bug
2012-01-01 16:03:27 -11:00
Marc-André Moreau
e95dcc4c5e
libfreerdp-core: fix decompression of color brushes
2011-12-30 14:23:47 -05:00
Marc-André Moreau
2d34a62ce8
libfreerdp-codec: fix color conversion issues for OpaqueRect with --gdi sw,hw
2011-12-30 10:00:03 -05:00
Norbert Federa
d3a801db6c
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
2011-12-29 18:01:20 +01:00
Norbert Federa
04518f0b42
codec: fixed and accelerated RemoteFX ycbcr-to-rgb decoder
...
The current ycbcr decoder was loosing some bits because cr/cb was multiplied by
the shifted factors.
Instead one should multiply by the non-shifted factors and shift the result.
The effects of these lost bits are easily seen by comparing the colors of a
RemoteFX session with the colors of a plain RDP session - they are just wrong ;)
I've replaced the bit-magic from the non non-accelerated version (rfx_decode.c)
and replaced it with simple float multiplications using the compiler's implicit
integer conversions. On several test machines this was even a little bit faster.
The accelerated SSE2 ycbcr decoder (rfx_sse2.c) was completely changed in order
to make use of the SSE2 signed 16-bit integer multiplication.
Fortunately the factors in the conversion matrix are so small that we can
easily shift them to the maximum possible 16-bit signed integer value without
loosing any information and use _mm_mulhi_epi16 which takes the upper 16 bits
of the 32-bit result.
The SSE2 ycbcr decoder is now much simpler and about 40 percent faster.
2011-12-27 16:18:02 +01:00
David Sundstrom
622375cef2
Detect when sever visual has an inverted color map and invert all color conversions.
...
Remote spurious printf() in code
2011-12-21 17:00:09 -06:00
louyihua
32ff6a0b69
wfreerdp: enable SSE2 acceleration for RemoteFX under Visual C++
2011-12-21 08:32:04 +08:00
Philippe Auphelle
91cb869359
Merge remote-tracking branch 'upstream/master'
2011-12-13 11:07:50 +01:00
Marc-André Moreau
243090323d
libfreerdp-core: fix offscreen cache capabilities, add --composition option
2011-12-12 19:20:52 -05:00
Philippe Auphelle
fd7eca49a9
Fix spelling mistake in a comment.
2011-12-12 15:49:44 +01:00
Philippe Auphelle
711f4b2202
Refactored bitmap_flip in bitmap.c to use freerdp_bitmap_flip in color.c. Added in place "bitmap flip" in freerdp_bitmap_flip, changed bitmap_decompress (in bitmap.c) to use it.
2011-12-12 14:41:31 +01:00
Mike Gilbert
6be782f73e
libfreerdp-codec/bitmap: Add const to bitmasks.
2011-11-30 18:13:36 -05:00
Anthony Tong
d974829442
codec: fix 24bpp color conv
2011-11-23 19:15:14 -06:00
Martin Fleisz
ee43bf7b58
Added config.h include to types.h, removed useless code in rfx_neon
2011-11-23 04:20:06 -08:00
Anthony Tong
83654ae89c
rfx: fixup the remaining HH3 offsets
2011-11-22 15:14:53 -05:00
Marc-André Moreau
a63a196f53
types: refactoring to make use of standard data types when available
2011-11-19 12:19:16 -05:00
Marc-André Moreau
150ff56f5f
wfreerdp: fix compilation warnings and errors
2011-11-12 00:51:41 -05:00
Martin Fleisz
ad314bb9db
Added NEON optimizations for RFX decoder
2011-11-10 03:18:07 -08:00
Anthony Tong
db23272e58
libfreerdp-codec: fix crash when decompressing large nsc bitmaps
2011-11-08 18:12:39 -05:00
Marc-André Moreau
4d63c4f191
libfreerdp-codec: replace GetGRCode by macro (was most called function according to callgrind)
2011-11-02 22:26:00 -04:00
Vic Lee
90ccd097ff
rfx: fix incorrect offset in rfx_quantization_encode (atong)
2011-10-30 00:24:30 +08:00
Vic Lee
19f818a089
rfx: add rfx_context_set_cpu_opt() APi to replace passing rdpSettings.
2011-10-29 22:01:50 +08:00
Anthony Tong
ce59c2226f
cmake/sse2: initial sse2 detect
2011-10-25 00:32:06 -05:00
Marc-André Moreau
89f2942caa
Merge pull request #180 from atong-tcs/rfx
...
libfreerdp-codec: rfx quantization decode fix
2011-10-24 19:43:19 -07:00
Nicolas Graziano
025ebf1773
Try to get good color for 8 Bpp and 15 Bpp.
...
The method is try and correct for 8, 15, 16 24 and 32.
I made all this change in freerdp_color_convert_rgb to prevent
blue = clrconv->palette->entries[srcColor].red
2011-10-25 04:12:57 +02:00
Anthony Tong
f136351ea2
libfreerdp-codec: rfx quantization decode fix
...
- the incorrect offset also causes an unaligned access with sse2,
on i386 it may segv on _mm_load_sil128
2011-10-23 19:28:32 -05:00
Jay Sorg
d8e0df3af7
check for NA(no alpha) in formatHeader in RDP6_BITMAP_STREAM
2011-10-05 12:14:17 -07:00
Marc-André Moreau
f6cd71026e
xfreerdp: started bitmap caching support
2011-10-04 21:29:01 -04:00
Marc-André Moreau
f43c9c462f
libfreerdp-codec: NSCodec code style cleanup
2011-10-02 21:07:07 -04:00
Marc-André Moreau
0401f7c17e
libfreerdp-codec: merge with libfreerdp-nsc
2011-10-02 20:52:17 -04:00
Marc-André Moreau
3297db7062
libfreerdp-codec: merge with libfreerdp-rfx
2011-10-02 20:28:20 -04:00