891 Commits

Author SHA1 Message Date
akallabeth
072b3d9a00 Fixed #6267: adjust write_pixel_16 endian handling
(cherry picked from commit 51d3e07c8a4bca32bf82538075e4518b63e8ed4d)
2020-06-16 09:09:11 +02:00
Kobi Mizrachi
6e87805869 codec: fix typo in progressive codec log
(cherry picked from commit 8d72051ab157d89af3f919a441170ca57bf67e84)
2020-05-20 15:41:24 +02:00
akallabeth
cf4f6dbf3f Fixed multiple sanitizer errors in codecs
(cherry picked from commit 2278d92a5d902692a7d1088629b2345c9b4e229c)
2020-05-20 15:41:24 +02:00
akallabeth
2e28385fbb Fixed history buffer reset.
(cherry picked from commit ccc9cbef2d5d0d9f5cf5ec7621f71bed33f41aba)
2020-05-18 17:10:01 +02:00
akallabeth
11c6ed0fb7 Fixed undefined behaviour in ncrush
(cherry picked from commit 83137d2a1bb732fbea2f20778924a50a79f63fef)
2020-05-18 17:10:01 +02:00
akallabeth
f25c2f265e Fixed undefined behaviour in rfx decoder
(cherry picked from commit ef611d34d61c6590429c17db5c97f0a9a33147e8)
2020-05-18 17:10:01 +02:00
akallabeth
37158cd17f Fixed UndefinedBehaviour in planar left shift
(cherry picked from commit 328691c46597c194f01a77a9d33d58b2faa88c9d)
2020-05-18 17:10:01 +02:00
akallabeth
96621d4f45 Always require aligned memory for interleaved codec.
(cherry picked from commit 20c11fb7178462a8ba36b4fdbfb3e2a03197356f)
2020-05-18 17:10:00 +02:00
Vladyslav Hordiienko
11eb374ef4 improve RFX DWT algorithm
merge multiple loops into the one loop for vertical DWT inverse

(cherry picked from commit fff9eba34af8a54bd93b1a7ccdda0a6a6898f755)
2020-05-18 16:56:03 +02:00
akallabeth
e35d06f6e1 Fixed oob read in rfx_process_message_tileset
Check input data length
Thanks to hac425 CVE-2020-11043
2020-05-05 07:46:10 +02:00
akallabeth
32f705e597 Fixed oob read in clear_decompress_subcode_rlex
Fixed length checks before stream read.
Thanks to hac425 CVE-2020-11040
2020-05-05 07:46:10 +02:00
akallabeth
13dac0ee2a Fixed possible int overflow. 2020-05-05 07:46:10 +02:00
akallabeth
5d56937e20 Workaround #6072: FFMPEG AAC encoding graded experimental
Due to many reporing issues with different AAC encoder configurations
deactivate support by default. Can be enabled by compiling with
experimental codec support.
2020-05-05 07:46:09 +02:00
Raul Fernandes
54c902b3b5 Optimize function xcrush_copy_bytes()
Use memcpy to copy the bytes when we can assure that the memory areas does not overlap.
When the areas overlap, copy the area that doesn't overlap repeatly.
With this change, the copy is ~30x faster.
2020-05-05 07:46:09 +02:00
akallabeth
cfc0d060c6 Refactored freerdp_image_copy_from_pointer_data
Split monochrome and color pointer handling to separate functions.
2020-04-28 14:03:19 +02:00
Raul Fernandes
4df7200836 Cache the calculated color
In desktop area, the next color has high odds to be the same of previous color.
If we cache the value, it can be reused by the next pixel avoiding recalculation.
This optimization can halve the function's processing.
2020-04-28 14:03:19 +02:00
akallabeth
cc6831ae31 Moved PROGRESSIVE_BLOCK_REGION to heap. 2020-04-28 14:03:19 +02:00
akallabeth
17f547ae11 Fixed CVE-2020-11521: Out of bounds write in planar codec.
Thanks to Sunglin and HuanGMz from Knownsec 404
2020-04-09 18:00:51 +02:00
akallabeth
7b1d4b4939 Fix CVE-2020-11524: out of bounds access in interleaved
Thanks to Sunglin and HuanGMz from Knownsec 404
2020-04-09 18:00:51 +02:00
Armin Novak
436b68e416 Fixed #5895: cast warnings. 2020-02-19 10:21:43 +01:00
Armin Novak
c0bf6c0768 working progressive Original Method DWT
Implemented decoding utilizing Original Method DWT
(See [MS-RDPEGFX] 3.2.8.1.2.2 Reduce-Extrapolate Method)
2020-02-18 11:13:52 +01:00
Armin Novak
1fa00c4318 Refactored progressive codec. 2020-02-18 11:13:52 +01:00
Armin Novak
c92bbb37f5 Fixed NULL dereference. 2020-01-23 10:12:12 +01:00
Armin Novak
b0b81af8b8 Fixed #5839: Use correct pointer to cast. 2020-01-16 09:53:57 +01:00
Armin Novak
1c19de5a76 Fixed remaining issues with chroma subsampling. 2020-01-14 17:46:13 +01:00
Armin Novak
b3a642164a Fixed planar size checks. 2020-01-14 15:14:40 +01:00
Armin Novak
c1679d0f2c Added planar RLE chroma subsampling. 2020-01-14 14:06:43 +01:00
Armin Novak
6fd9525823 Implemented chroma subsampling for planar non RLE
Planar frames that are not RLE encoded can now be decoded if
chroma subsampling is enabled. Partly fixes #5822
2020-01-14 12:43:40 +01:00
Martin Fleisz
71feb974ac
Merge pull request #5739 from akallabeth/improve_function_hiding
Improve function hiding
2019-12-02 11:31:35 +01:00
Armin Novak
7c243da6e1 Remove symbols exported by accident. 2019-12-02 10:57:31 +01:00
David Fort
5f0943f0fe primitives: add openCL support
This patch adds the basic infrastructure to have openCL acceleration.
For now only YUV2RGB is implemented but other operations could be
implemented.
The primitives have been massively reworked so that we have an autodetect
mode that will pick the best implementation automatically by performing a
benchmark.

Sponsored-by: Rangee Gmbh(http://www.rangee.com)
2019-11-22 13:21:39 +01:00
Armin Novak
68ed1276c2 MPPC_CONTEXT now opaque 2019-11-14 15:16:36 +01:00
Armin Novak
e83f65b062 NCRUSH_CONTEXT now opaque 2019-11-14 15:16:36 +01:00
Armin Novak
f0353de828 XCRUSH_CONTEXT now opaque 2019-11-14 15:16:36 +01:00
Armin Novak
6afa413669 Modified primitives function pointer to take const pointer to const data 2019-11-14 10:46:24 +01:00
Armin Novak
72ca88f49c Reformatted to new style 2019-11-07 10:53:54 +01:00
Raphaël ZHOU
31962b2fa6 Fix padding of encoded scan-line for XOR mask of pointer. 2019-11-07 10:12:22 +01:00
asapelkin
82eadad4a4 Fix some static analizer warnings 2019-10-22 15:39:54 +02:00
Armin Novak
59b4988f56 Fixed compilation warnings. 2019-10-16 14:54:05 +02:00
Martin Fleisz
799685cb92
Merge pull request #5646 from akallabeth/realloc_fixes
Fixed #5645: realloc return handling
2019-10-07 10:43:11 +02:00
Martin Fleisz
ade6b1007b
Merge pull request #5644 from akallabeth/nsc_cleanup
Cleaned up NSC API
2019-10-07 09:01:26 +02:00
Armin Novak
9fee4ae076 Fixed #5645: realloc return handling 2019-10-04 16:19:23 +02:00
Armin Novak
74f01aab15 Removed check for wrong buffer size. 2019-10-04 11:46:14 +02:00
Armin Novak
e09f739b90 Cleaned up NSC API 2019-10-04 10:33:41 +02:00
Armin Novak
4a4890b548 fixed openh264 related issues, thx to mythos from IRC 2019-10-04 10:23:43 +02:00
Armin Novak
4d4669471e Added color conversion correctness check to interleaved codec test. 2019-08-26 10:54:43 +02:00
Martin Fleisz
1112e2fffb codec: Set alpha channel to FF if not used (#5431)
* Formatting

* codec: Set alpha channel to FF if not used

This PR initializes the alpha channel to FF. Before the alpha channel
contained uninitialized memory potentially causing problems when the
image data was used by an alpha channel aware frontend.
2019-06-13 09:19:42 +02:00
Martin Fleisz
ff036e0198
Merge pull request #5386 from akallabeth/rails_spec_update
Rails spec update
2019-05-09 12:49:55 +02:00
akallabeth
9011ef1b75
Merge pull request #5387 from mfleisz/image_from_icon
core: Move image conversion of icon data into the library
2019-05-08 17:19:27 +02:00
Martin Fleisz
30c3b86655 core: Move image conversion for icon data into the library 2019-05-08 17:06:17 +02:00