erbth
7828725413
YUV data conversion of H.264 implementation (egfx):
...
only convert invalid areas
SIMD SSSE3 conversion in primitives
compiling all primitives sources with optimization
and cleanup after last merge
2014-09-09 00:13:18 +02:00
erbth
cbc8b3a7e1
Merge branch 'egfx' of https://github.com/awakecoding/freerdp into egfx_new
...
Conflicts:
channels/drdynvc/client/dvcman.c
include/freerdp/codec/h264.h
libfreerdp/codec/h264.c after this merge h264 doesn't work anymore!!
libfreerdp/utils/svc_plugin.c
2014-09-08 16:56:45 +02:00
Marc-André Moreau
f14b0e0195
libfreerdp-codec: cleanup h264 decoder
2014-09-05 19:11:03 -04:00
erbth
25593c7250
H.264: converting only clipping rects to XRGB
2014-09-02 22:16:56 +02:00
Marc-André Moreau
6abd9e6be0
libfreerdp-codec: add more progressive test functions
2014-09-02 13:31:40 -04:00
Marc-André Moreau
49cede6e01
libfreerdp-codec: add separate sign array
2014-08-28 15:14:01 -04:00
Marc-André Moreau
e15baf6184
libfreerdp-codec: add code for SRL parsing
2014-08-28 12:14:28 -04:00
Marc-André Moreau
32766b0647
libfreerdp-codec: start computing BitPos
2014-08-27 17:02:15 -04:00
Marc-André Moreau
656dd760c5
libfreerdp-codec: fix sub-band diffing
2014-08-26 16:15:22 -04:00
Marc-André Moreau
4773403243
libfreerdp-codec: partial YCbCr diffing support
2014-08-26 14:36:33 -04:00
Marc-André Moreau
2cffa7d8f4
libfreerdp-codec: make use of progressive quantization factors
2014-08-25 17:58:38 -04:00
Marc-André Moreau
ed7312501c
libfreerdp-codec: fix progressive quantization shifts
2014-08-21 19:43:37 -04:00
Marc-André Moreau
68b3d0476b
libfreerdp-codec: start work on progressive inverse DWT
2014-08-19 14:48:09 -04:00
Marc-André Moreau
82a53057a1
Merge pull request #2023 from ptsekov/software-gdi-improvements
...
Software GDI improvements
2014-08-18 16:22:23 -04:00
Pavel Tsekov
53e19e0da7
Fix conversion of 24bpp bitmaps to 32bpp fb when
...
CLRCONV_INVERT and/or CLRCONV_ALPHA is set.
* include/freerdp/codec/color.h (RGB32_to_BGR32): New inline function.
* libfreerdp/codec/color.c:
(freerdp_image_convert_24bpp): Fix CLRCONV_ALPHA and CLRCONV_INVERT
processing for 32bpp destination.
Unroll the conversion loop to process four pixels in one go using
32-bit load and store operations.
2014-08-14 00:31:15 +03:00
Pavel Tsekov
c51c5df2ff
* include/freerdp/codec/color.h:
...
(freerdp_color_convert_drawing_order_color_to_gdi_color): Declare new
function.
* libfreerdp/codec/color.c:
(freerdp_color_convert_drawing_order_color_to_gdi_color): Implement.
(freerdp_image_convert_8bpp): Properly use the ARGB32/ABGR32/RGB32/BGR32
macros when converting 8bpp data to 32bpp.
(freerdp_image_convert_32bpp): Fix CLRCONV_ALPHA and CLRCONV_INVERT
processing for 32bpp destination.
(freerdp_mono_image_convert): Use ARGB32/ABGR32 when converting to 32bpp
and CLRCONV_ALPHA is set.
* libfreerdp/core/orders.c: Color data from drawing orders is
interpreted in big endian mode.
* libfreerdp/core/update.c (update_read_palette): Likewise.
* libfreerdp/gdi/16bpp.c (gdi_get_color_16bpp): GDI colors are stored as
RGB now.
* libfreerdp/gdi/32bpp.c (gdi_get_color_32bpp): Likewise.
* libfreerdp/gdi/gdi.c:
Use freerdp_color_convert_drawing_order_color_to_gdi_color() to convert
from drawing order color representation to GDI color representation
troughout.
* libfreerdp/gdi/graphics.c (gdi_Glyph_BeginDraw): Likewise.
(gdi_Glyph_EndDraw): Likewise.
2014-08-07 00:58:58 +03:00
Marc-André Moreau
2653c5420f
libfreerdp-codec: start processing tiles in progressive rfx
2014-08-06 10:23:14 -04:00
Marc-André Moreau
22d3b6c74b
libfreerdp-codec: remove old RemoteFX RLGR implementation in favour of faster one
2014-08-05 21:41:58 -04:00
Marc-André Moreau
14a3ff94eb
libfreerdp-codec: simplify block reading logic
2014-08-01 09:44:00 -04:00
Marc-André Moreau
574c1789b7
libfreerdp-codec: start processing progressive tiles
2014-07-31 15:08:54 -04:00
Marc-André Moreau
800be2f680
libfreerdp-codec: complete parsing of progressive codec block arrays
2014-07-29 17:37:46 -04:00
Marc-André Moreau
2b3cd39026
libfreerdp-codec: more parsing of progressive data blocks
2014-07-29 12:38:29 -04:00
Marc-André Moreau
a3de93d867
libfreerdp-codec: start parsing progressive codec
2014-07-28 23:41:16 -04:00
Marc-André Moreau
0c408c213c
libfreerdp-codec: stub progressive codec decompressor
2014-07-28 17:42:23 -04:00
Mike McDonald
4370c26e0d
Added the ability to decode H.264 frames using libavcodec and refactored code to make it a little cleaner.
2014-07-14 09:59:57 -04:00
Marc-André Moreau
03c91a92d1
libfreerdp-codec: add more egfx h264 debugging
2014-07-09 16:41:36 -04:00
Marc-André Moreau
2f26ed58e5
libfreerdp-codec: reduce ClearCodec memory usage
2014-07-08 11:37:27 -04:00
Marc-André Moreau
d6a37d641e
libfreerdp-codec: fix C++ headers
2014-07-07 22:24:17 -04:00
Marc-André Moreau
7489675ab9
libfreerdp-codec: fix ClearCodec RLEX decoding
2014-07-07 14:16:05 -04:00
Marc-André Moreau
0ed7d3e6be
libfreerdp-codec: fix some ClearCodec flag checking
2014-07-05 16:29:28 -04:00
Marc-André Moreau
bde954107d
Merge branch 'egfx' of github.com:vworkspace/FreeRDP into egfx
...
Conflicts:
client/X11/xf_gfx.c
2014-07-03 12:03:39 -04:00
Marc-André Moreau
4b80c46ae4
libfreerdp-codec: improve ClearCodec robustness
2014-07-02 14:51:46 -04:00
Marc-André Moreau
e20cfc1e2c
libfreerdp-codec: simplify ClearCodec code
2014-07-02 13:45:19 -04:00
Mike McDonald
4d3d78c487
Initial implementation of H.264 decoder for MS-RDPEGFX
2014-07-01 23:28:09 -04:00
Marc-André Moreau
4a4f4308b5
libfreerdp-codec: improve ClearCodec error checking
2014-07-01 16:32:36 -04:00
Marc-André Moreau
f304d8cc20
libfreerdp-codec: more ClearCodec vBar caching
2014-07-01 14:38:54 -04:00
Marc-André Moreau
8a5591bdef
libfreerdp-codec: add ClearCodec glyph cache
2014-07-01 09:55:52 -04:00
Marc-André Moreau
de7d452d37
libfreerdp-codec: fix ClearCodec unit tests
2014-07-01 09:10:32 -04:00
Marc-André Moreau
49cd7806d9
libfreerdp-codec: improve ClearCodec decompressor
2014-06-26 17:08:51 -04:00
Marc-André Moreau
dd36617093
libfreerdp-codec: improve clear_decompress function parameters
2014-06-25 18:39:28 -04:00
Marc-André Moreau
ea3822c357
libfreerdp-codec: cleanup planar decoder
2014-06-18 17:46:22 -04:00
Marc-André Moreau
425763d30a
libfreerdp-codec: start offering more flexible planar codec decompression
2014-06-17 16:44:24 -04:00
Marc-André Moreau
d69316198f
xfreerdp: add egfx support for planar codec
2014-06-17 16:15:30 -04:00
Marc-André Moreau
61eb7f2f8e
libfreerdp-codec: fix ClearCodec decoding
2014-06-13 17:30:13 -04:00
Marc-André Moreau
0e27f5abe4
libfreerdp-codec: start working on clearcodec decompressor
2014-06-13 12:17:16 -04:00
Marc-André Moreau
eeb7cd2cb2
xfreerdp: initial egfx bitmap caching
2014-06-13 08:36:09 -04:00
Marc-André Moreau
ae02b5b512
xfreerdp: start handling egfx surface-to-surface
2014-06-12 16:13:12 -04:00
Marc-André Moreau
b4ba2c7a38
libfreerdp-codec: optimize zgfx bitstream
2014-06-05 15:41:42 -04:00
Marc-André Moreau
161e7b0026
libfreerdp-codec: simplify zgfx segment processing
2014-06-05 14:52:27 -04:00
Marc-André Moreau
d6e955e6f1
channels/rdpgfx: stub bitmap decompression
2014-06-03 20:51:28 -04:00
Marc-André Moreau
a50e4d16fc
libfreerdp-codec: integrate basic RDP8 decompression support
2014-06-03 14:29:55 -04:00
Marc-André Moreau
abd833c27e
libfreerdp-codec: stub new ZGFX (RDP8) bulk compressor/decompressor
2014-06-03 13:38:10 -04:00
Marc-André Moreau
18cac3d4dd
libfreerdp-codec: cleanup context state flushing
2014-05-26 12:43:30 -04:00
Marc-André Moreau
8c7fbe3394
libfreerdp-codec: fix xcrush level-1 compressor
2014-05-25 21:39:25 -04:00
Marc-André Moreau
d2d8c482fc
libfreerdp-codec: cleanup and fix XCrush context flush synchronization
2014-05-25 21:21:51 -04:00
Marc-André Moreau
8d8e0c24fe
libfreerdp-codec: improve xcrush compressor error checking
2014-05-23 17:38:10 -04:00
Marc-André Moreau
55e096a82f
libfreerdp-codec: add xcrush match optimization and output generation
2014-05-23 13:59:34 -04:00
Marc-André Moreau
ee935a3760
libfreerdp-codec: add match info functions
2014-05-22 17:38:01 -04:00
Marc-André Moreau
0363196923
libfreerdp-core: add xcrush signature db
2014-05-22 00:18:56 -04:00
Marc-André Moreau
fd23b2f041
libfreerdp-codec: add xcrush rolling hash chunker
2014-05-21 22:55:45 -04:00
Marc-André Moreau
1c081c965f
Merge branch 'xcrush' of github.com:awakecoding/FreeRDP
2014-05-08 16:11:55 -04:00
Marc-André Moreau
88bee1fa6d
libfreerdp-codec: start working on xcrush compressor
2014-05-05 20:47:30 -04:00
Marc-André Moreau
9162fcc7d8
libfreerdp-codec: start working on XCrush decompressor
2014-05-04 21:50:17 -04:00
Marc-André Moreau
77790874c8
libfreerdp-codec: stub XCrush data compression
2014-05-04 19:46:40 -04:00
Hardening
9848314a5d
More fixes in DSP
2014-04-29 10:32:16 +02:00
Marc-André Moreau
ab7958ffb2
libfreerdp-codec: fix NCrush compressor
2014-04-20 23:19:09 -04:00
Marc-André Moreau
bb656a6e7e
Merge branch 'master' of github.com:awakecoding/FreeRDP into ncrush
...
Conflicts:
libfreerdp/core/bulk.c
2014-04-20 21:59:10 -04:00
Marc-André Moreau
d08b6fe4bd
libfreerdp-codec: fix handling of PACKET_AT_FRONT, PACKET_FLUSHED in MPPC compression
2014-04-20 21:28:09 -04:00
Marc-André Moreau
acf119f9f3
libfreerdp-codec: improve ncrush compressor
2014-04-01 12:18:13 -04:00
Marc-André Moreau
add42dfdb9
libfreerdp-codec: ncrush compressor update
2014-03-30 23:12:07 -04:00
Marc-André Moreau
ed89354da8
libfreerdp-codec: start work on NCrush compressor
2014-03-29 17:55:17 -04:00
Marc-André Moreau
83ddb7b82c
libfreerdp-codec: fix unit test compilation
2014-03-29 12:37:16 -04:00
Marc-André Moreau
5951a9178c
libfreerdp-codec: remove old NCrush decompressor
2014-03-16 21:16:53 -04:00
Marc-André Moreau
698cae2052
libfreerdp-codec: start hooking new NCrush decompressor
2014-03-16 20:54:07 -04:00
Marc-André Moreau
882f3098b3
libfreerdp-codec: add more NCrush tables, decode literals and CopyOffsets
2014-03-16 15:51:35 -04:00
Marc-André Moreau
2570e064ce
libfreerdp-codec: add NCrush unit tests and tables
2014-03-15 22:18:22 -04:00
Marc-André Moreau
47ed6002f6
libfreerdp-codec: stub ncrush bulk compression
2014-03-15 14:03:05 -04:00
Marc-André Moreau
85049299e0
libfreerdp-core: improve MPPC compress/decompress function definitions
2014-03-11 21:42:27 -04:00
Marc-André Moreau
98f98c95e9
libfreerdp-codec: remove old MPPC decompressor, fix RDP4 MPPC
2014-03-10 16:19:47 -04:00
Marc-André Moreau
f31676e4e4
libfreerdp-codec: make MPPC compressor produce output identical to Microsoft implementation
2014-03-10 15:06:23 -04:00
Marc-André Moreau
61ecd0ff31
libfreerdp-core: add bulk.c to handle bulk compression in a centralized place
2014-03-10 11:41:10 -04:00
Marc-André Moreau
4310089102
libfreerdp-core: add options for specifying compression level
2014-03-10 11:16:36 -04:00
Marc-André Moreau
ad7ed25d30
libfreerdp-codec: reduce amount of MPPC context variables
2014-03-09 20:45:42 -04:00
Marc-André Moreau
6c89e3cff7
libfreerdp-codec: initial MPPC decompression support
2014-03-09 19:55:52 -04:00
Marc-André Moreau
d9a2fb4ff9
libfreerdp-codec: start MPPC compressor
2014-03-08 17:38:47 -05:00
Marc-André Moreau
95127d5632
libfreerdp-codec: start testing MPPC against large buffer
2014-03-05 18:03:39 -05:00
Marc-André Moreau
cea902deb8
libfreerdp-codec: produce correct LOM/CO sequences
2014-03-05 15:29:04 -05:00
Marc-André Moreau
35a289e14a
libfreerdp-codec: start new MPPC compressor
2014-03-03 16:15:29 -05:00
Marc-André Moreau
c697941de2
libfreerdp-codec: add new freerdp_image_copy function with detailed parameters
2014-02-28 21:51:29 -05:00
Marc-André Moreau
aca0b9996d
Merge branch 'remoteFx_fix2' of https://github.com/hardening/FreeRDP into hardening-remoteFx_fix2
...
Conflicts:
libfreerdp/codec/test/CMakeLists.txt
2014-02-15 11:06:09 -05:00
Hardening
0915060f40
Fixes before pullreq
...
Replaced zmalloc by calloc.
Moved region from utils to codec.
Fixed some typo and corner cases.
2014-02-05 16:24:46 +01:00
Marc-André Moreau
3bd5fda4a8
libfreerdp-codec: port MPPC unit tests
2014-02-05 08:37:13 -05:00
Marc-André Moreau
1add4e628f
libfreerdp-codec: make planar codec encoder context reusable
2013-12-08 17:06:59 -05:00
Marc-André Moreau
d30656d441
libfreerdp-codec: start implementing uncompressed RDP6 planar codec
2013-11-25 22:26:08 -05:00
Marc-André Moreau
ee36541fb7
freerdp: merge with master
2013-09-03 18:49:48 -04:00
Vic Lee
86e783e4fb
libfreerdp-codec/rfx: fix memory corruptions.
2013-09-03 20:27:08 +08:00
Marc-André Moreau
f69f4285b1
libfreerdp-codec: use partitioned buffers for RemoteFX encoding/decoding
2013-08-19 18:39:19 -04:00
Marc-André Moreau
d7656ada48
libfreerdp-codec: fix NSCodec encoding and buffer pool usage
2013-08-19 18:21:34 -04:00
Marc-André Moreau
0fd705c6c7
channels/cliprdr: start server-side implementation
2013-08-16 16:46:47 -04:00
Marc-André Moreau
9f25c4fc25
libfreerdp-codec: initial working fragmented NSCodec encoder
2013-08-15 13:13:02 -04:00
Marc-André Moreau
1e5118116d
libfreerdp-codec: start implementing split NSCodec encoder
2013-08-14 23:16:13 -04:00
Marc-André Moreau
2d3d5acf1e
libfreerdp-codec: initial support for RemoteFX fragmented encoding
2013-08-14 13:19:01 -04:00
Marc-André Moreau
5e6325d62c
libfreerdp-codec: start exporting split encode/write rfx api
2013-08-14 10:14:47 -04:00
Marc-André Moreau
dfbd4cb9fb
libfreerdp-codec: refactor encoder to use message-centric interface
2013-08-13 17:50:05 -04:00
Marc-André Moreau
fe25303656
libfreerdp-codec: internal refactoring
2013-08-13 17:18:59 -04:00
Marc-André Moreau
4e6f1f5a4b
libfreerdp-codec: use pooled buffers for channel encoding
2013-08-13 13:45:28 -04:00
Marc-André Moreau
482e836ad8
libfreerdp-codec: refactor internal rfx_compose_message_tile
2013-08-13 11:09:54 -04:00
Marc-André Moreau
916a4eee4b
libfreerdp-codec: start making use of RFX_TILE structure for encoding
2013-08-13 10:30:22 -04:00
Marc-André Moreau
3e4dc73280
libfreerdp-codec: split stream parsing from tile decoding
2013-08-13 10:09:32 -04:00
Marc-André Moreau
b972830841
libfreerdp-codec: make use of ObjectPool for tiles
2013-08-13 09:34:15 -04:00
Marc-André Moreau
ba69071d04
Merge branch 'master' of github.com:FreeRDP/FreeRDP
2013-07-15 17:14:40 -04:00
Norbert Federa
b9c8ac6527
codec/rfx: use function pointer for rlgr codec
...
Option to switch the rlgr implementation during runtime - exactly
like we do it with the ycbcr, dwt and quantization functions.
2013-07-10 07:14:26 +02:00
Marc-André Moreau
0ee7ca5741
libfreerdp-codec: add bitmap encoder
2013-07-04 16:31:54 -04:00
Marc-André Moreau
8c8a82c31f
libfreerdp-utils: purge old STREAM utils
2013-03-21 16:45:25 -04:00
Marc-André Moreau
a8201b0d1b
libwinpr-utils: combine old and new stream utils
2013-03-21 15:19:33 -04:00
Marc-André Moreau
96fa4f462f
libfreerdp-codec: move audio format processing code to codec library
2013-03-07 14:43:21 -05:00
Martin Fleisz
8c2d60f62c
codec: got rid of nsc_context_set_cpu_opt
2013-03-05 10:52:18 +01:00
Bernhard Miklautz
23a7ef6c47
codec/rfx: use sysinfo to detect sse2/neon
...
This also moves (sse2) detection code out of the client into the decoder.
2013-03-01 09:02:14 +01:00
Marc-André Moreau
22c804e6ad
channels/rdpsnd: refactoring
2013-02-19 17:47:55 -05:00
Daryl Poe
b64408975d
freerdp primitives library
2013-01-18 15:32:58 -07:00
Marc-André Moreau
709e66a596
libfreerdp: header cleanup
2012-12-14 00:25:48 -05:00
Marc-André Moreau
d251538252
libwinpr: fix build on linux
2012-10-18 22:05:06 -04:00
Jay Sorg
e4307a547a
win32: added cursor shape support(mono)
2012-10-16 11:06:23 -07:00
Marc-André Moreau
9d064171a7
freerdp: get rid of old types
2012-10-09 03:26:39 -04:00
Marc-André Moreau
1bf8a45519
freerdp: change uint8, sint8, uint16, sint16 to BYTE, INT8, UINT16, INT16
2012-10-09 03:01:37 -04:00
Marc-André Moreau
1ed644786c
freerdp: change boolean type to BOOL type
2012-10-09 02:38:39 -04:00
Marc-André Moreau
e60a092d81
freerdp: fix headers
2012-10-08 23:02:04 -04:00
Marc-André Moreau
6dcc8e73ee
libfreerdp-utils: get rid of rdpBlob
2012-09-24 04:40:32 -04:00
Jim Grandy
cc2fdd6da2
Pushing jpeg codec support, used in xrdp's offscreen surface remoting technique. Will likely be superceded by use of jpeg2000.
2012-06-26 16:57:18 -07:00
Mads Kiilerich
5ada0a43ec
codec: export mppc functions so it can be build on windows
2012-03-30 23:28:07 +02:00
Jay Sorg
6aa7eaf627
mppc: moved to libfreerdp-codec
2012-03-29 20:57:26 -07:00
Vic Lee
15baa1bbb4
nsc: implement nsc encoder.
2012-03-18 16:34:39 +08:00
Vic Lee
774cb53e61
nsc: add encoder API.
2012-03-16 12:04:38 +08:00
Vic Lee
32d7afc7b7
nsc: add pixel format API.
2012-03-15 16:55:29 +08:00
Vic Lee
b74d324592
rfx: rename pixel format constants.
2012-03-13 19:02:19 +08:00
Vic Lee
20de74d811
nsc: refactor nsc decoder #4
...
o move private struct to nsc_types.h
o move nsc_decode() function in nsc_context as pointer
2012-03-06 22:41:16 +08:00
Vic Lee
d2153e9ef2
nsc: refactor nsc decoder #3
...
o combine colorloss recovery, chroma supersampling and color space conversion
in one step
o define private struct and hide the internal buffer
o make internal buffer reusable in the same session
2012-03-06 18:52:28 +08:00
Vic Lee
0c0dd5df10
nsc: refactor nsc decoder #2
...
o Change nsc_stream member to be static
o Rename some variables
o Planes member (originally pdata) does not need to be STREAM
2012-03-05 18:34:29 +08:00
Vic Lee
3fa2c4830e
nsc: refactor nsc decoder #1
...
o the decoded argb buffer can be reused to enhance performance
o pass width, height and bpp through nsc_process_message() call
o rename nsc_context_destroy to nsc_context_free and make it actually free the context
2012-03-05 17:32:14 +08:00
Marc-André Moreau
b4e542ba46
libfreerdp-core: fix multiple memory leaks detected by valgrind
2012-02-01 18:42:20 -05:00
Marc-André Moreau
c7cc745575
libfreerdp-codec: add freerdp_convert_color_var()
2012-01-09 18:45:36 -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
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
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
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
9165505e0d
xfreerdp: improved 8bpp support
2011-10-21 12:17:04 -04:00
Marc-André Moreau
f6cd71026e
xfreerdp: started bitmap caching support
2011-10-04 21:29:01 -04:00
Marc-André Moreau
a758908c63
wfreerdp: start GDI implementation
2011-10-04 16:05:09 -04:00
Marc-André Moreau
f43c9c462f
libfreerdp-codec: NSCodec code style cleanup
2011-10-02 21:07:07 -04:00