Armin Novak
df35c135d1
Fixed color conversion, unified GFX and updated API.
2016-10-06 13:42:58 +02:00
Martin Fleisz
71765b72e3
Merge pull request #3284 from ondrejholy/endianness
...
Endianness fixes
2016-08-25 08:17:52 +02:00
zihao.jiang
2b6bd2626d
rdpgfx: various fixes according to comments
...
1. Fix stream leak in rdpgfx
2. Make src data const in zgfx. Harden zgfx to be independent to byte order
3. Fix written bytes return value in channel write
4. Add check for return value in shadow_client.c
5. Add gfx callback to send surface command with frame marker pdu.
6. Check remain length for recv subroutine
7. Fix compile errors
2016-08-07 20:15:39 +08:00
zihao.jiang
746a754244
rdpgfx: Implementation for server side channel
...
server/shadow: support h264 codec with gfx channel
2016-08-07 20:14:33 +08:00
Armin Novak
44fc5b521d
Added support for OpenH264 1.6
2016-07-04 12:42:57 +02:00
Ondrej Holy
e326e43e66
codec/xcrush: Fix endianness in compression
...
Compression doesn't work on big endian machines currently. The recieved
data are stored as little endian. Use conversion macros from endian.h to
load and store the data properly.
The patch fixes following error (so -compression option is no more needed
on big endian machines):
[06:42:14:782] [13772:13773] [ERROR][com.freerdp.core] - Decompression failure!
[06:42:14:782] [13772:13773] [ERROR][com.freerdp.core.fastpath] - bulk_decompress() failed
[06:42:14:782] [13772:13773] [ERROR][com.freerdp.core.fastpath] - fastpath_recv_update_data() fail
[06:42:14:782] [13772:13773] [ERROR][com.freerdp.core.transport] - transport_check_fds: transport->ReceiveCallback() - -1
https://github.com/FreeRDP/FreeRDP/issues/2520
2016-05-30 13:37:15 +02:00
Marc-André Moreau
1b97593642
Merge pull request #3341 from awakecoding/xcrush_fix
...
proper xcrush context reset fix
2016-05-12 14:38:23 -04:00
Marc-André Moreau
a75d89d615
libfreerdp-codec: make proper xcrush context reset fix
2016-05-12 14:24:53 -04:00
Marc-André Moreau
ed326f6662
Merge pull request #3339 from awakecoding/xcrush_fix
...
libfreerdp-codec: fix xcrush decompression, revert remote control fix
2016-05-12 09:41:57 -04:00
Marc-André Moreau
892531d492
libfreerdp-codec: fix xcrush decompression, revert remote control fix
2016-05-12 09:22:24 -04:00
Marc-André Moreau
b24df90063
Merge pull request #3330 from awakecoding/xcrush_fix
...
xcrush context flush fix
2016-05-11 16:47:50 -04:00
Marc-André Moreau
a0630dee07
libfreerdp-codec: fix xcrush context flush
2016-05-11 16:35:20 -04:00
Marc-André Moreau
56f9b18276
libfreerdp-codec: fix error on empty RFX tileset, which can sometimes happen
2016-05-11 13:53:34 -04:00
Marc-André Moreau
915b9a15b1
Merge branch 'master' of github.com:FreeRDP/FreeRDP
...
Conflicts:
winpr/libwinpr/bcrypt/CMakeLists.txt
2016-05-11 11:05:17 -04:00
Bernhard Miklautz
9d98759801
libfreerd/color: fix typo
...
Source: http://anonscm.debian.org/cgit/collab-maint/freerdp2.git/commit/?id=f3c1f25bbfe0f17a0d1317096984b73db6fa1f38
2016-05-02 18:32:32 +02:00
Marc-André Moreau
cedf6d98e2
freerdp: more UWP porting
2016-03-29 20:34:52 -04:00
Marc-André Moreau
4d629a7999
freerdp: UWP porting
2016-03-29 16:03:15 -04:00
Bernhard Miklautz
9e8c6c99b6
First shot on fixing over linking
...
If a target is linked against libraries with cmake
(target_link_libraries) and the libraries are not marked as PRIVATE
they are "exported" and in case a other target is linked against this
target it is also linked against *all* (not private) libraries.
Without declaring private libraries PRIVATE a lot of over linking
(linking against unneeded libraries) was done.
2016-03-29 18:14:34 +02:00
Armin Novak
7faff04ec0
Assume the update rectangle is inclusive.
2016-03-16 13:46:47 +01:00
Armin Novak
5bc333c626
Implemented GFX AVC444 support.
2016-03-16 13:43:18 +01:00
Armin Novak
3a3ec85898
Unified RDPGFX_RECT16 and RECTANGLE_16
2016-03-16 13:43:17 +01:00
Armin Novak
2e110c7f35
Fixed codec reset, now resetting resolution too.
...
H264 and others require the surface resolution to work properly.
This initializes the codecs and the resolution on reset.
2016-03-02 14:46:33 +01:00
Nathan Kidd
d68e58a9dc
libfreerdp-codec: Make region16_rects() handle NULL nbRects
...
Now matches header documentation. Also cleans up related doc grammar.
2016-02-12 10:11:51 -05:00
Armin Novak
9b0ef3a4ec
Fixed stdint.h and stdbool.h detection.
2016-02-02 18:28:15 +01:00
Armin Novak
00b8d802d2
Fixed callback function return
2015-12-14 14:18:50 +01:00
Armin Novak
f6e17ec65c
Added audin support for mac os.
2015-11-12 16:10:39 +01:00
Bernhard Miklautz
0cdb4f7924
Fix compiler warnings
...
gcc (Debian 4.9.2-10) 4.9.2
winpr/libwinpr/thread/argv.c: In function ‘CommandLineToArgvA’:
winpr/libwinpr/thread/argv.c:94:6: warning: unused variable ‘index’ [-Wunused-variable]
int index;
winpr/libwinpr/file/test/TestFileGetStdHandle.c: In function ‘TestFileGetStdHandle’:
winpr/libwinpr/file/test/TestFileGetStdHandle.c:44:2: warning: implicit
declaration of function ‘CloseHandle’ [-Wimplicit-function-declaration]
CloseHandle(stdout);
^
libfreerdp/codec/test/TestFreeRDPRegion.c: In function ‘test_norbert2_case’:
libfreerdp/codec/test/TestFreeRDPRegion.c:697:6: warning: unused variable ‘i’ [-Wunused-variable]
int i;
channels/cliprdr/server/cliprdr_main.c: In function ‘cliprdr_server_receive_format_list’:
channels/cliprdr/server/cliprdr_main.c:636:24: warning: unused variable ‘cliprdr’ [-Wunused-variable]
CliprdrServerPrivate* cliprdr = (CliprdrServerPrivate*) context->handle;
^
channels/cliprdr/server/cliprdr_main.c: In function ‘cliprdr_server_init’:
channels/cliprdr/server/cliprdr_main.c:1097:24: warning: unused variable ‘cliprdr’ [-Wunused-variable]
CliprdrServerPrivate* cliprdr = (CliprdrServerPrivate*) context->handle;
2015-11-09 19:26:34 +01:00
Bernhard Miklautz
d73c4898c1
Add build-config.h
...
build-config.h should contain configure/compile time settings that are
relevant for projects that use FreeRDP.
For example the compiled in plugin search paths.
2015-11-09 15:54:22 +01:00
Norbert Federa
0f1cedcbb8
codec/color: fix segfault in freerdp_image32_copy
...
Code path for dstBytesPerPixel == 3 moved src and dst pointers
beyond their respective buffers.
2015-11-03 12:05:47 +01:00
David FORT
ff92a12ceb
Fix a bug in region_union_rect()
...
When region_union_rect() was called with a rect that was above the region without
intersecting it, the first band was created too large. This patch fixes this and
add a unitary test.
All credits go to @nfedera that:
* found the bug;
* find a dataset to reproduce;
* code the unitary test;
* spotted a suspicious line that was the faulty one.
2015-09-30 21:14:43 +02:00
MartinHaimberger
d4d360f6a4
Merge pull request #2859 from akallabeth/resource_leak_fix
...
Fixes API misuse and logic errors
2015-09-15 14:45:42 +02:00
Norbert Federa
1791d42a5d
improve handling of inverted pointer colors
2015-09-03 16:50:41 +02:00
MartinHaimberger
74817efbdb
Merge pull request #2852 from bmiklautz/process_env
...
Update CreateProcess and rfx
2015-09-02 10:09:11 +02:00
Armin Novak
08f61e60ca
Fixed zero length allocation.
2015-09-01 12:25:44 +02:00
Norbert Federa
2d5e249eff
Merge pull request #2825 from akallabeth/pointer_decoding_fix
...
Fixed color pointer decoding.
2015-09-01 11:09:42 +02:00
Armin Novak
89227b97f0
Ignore AND mask for 32 bit pointer.
2015-09-01 10:53:45 +02:00
Bernhard Miklautz
c0d1f5bac1
codec/rfx: update comment and remove WLog_ERR
...
With revision 17.0 of [MS-RDPRFX] the behavior when numRects == 0 is
documented.
This commit updates the comment and removes the error logging.
2015-08-28 10:36:56 +02:00
Armin Novak
4ed701bf35
media foundation support now a compile time option.
2015-08-11 07:58:43 +02:00
Armin Novak
4a62e6bee4
Added length arguments and checks.
2015-08-06 11:24:42 +02:00
Armin Novak
4df5e2b998
Fixed argument checks.
2015-08-05 17:32:38 +02:00
Armin Novak
0cbc46dc34
Fixed pointer update decoding with NULL mask.
2015-08-05 17:21:10 +02:00
Marc-André Moreau
162411dc67
libfreerdp-codec: fix Windows XP build for H.264 decoder
2015-08-04 11:55:03 -04:00
Marc-André Moreau
8fb9535e4a
libfreerdp-codec: fix leaks in H.264 Media Foundation decoder
2015-08-04 10:26:13 -04:00
Marc-André Moreau
d952502285
libfreerdp-codec: initial Media Foundation H.264 decoder support
2015-08-03 16:21:48 -04:00
Marc-André Moreau
32d1053abe
libfreerdp-codec: add more Media Foundation H.264 code
2015-07-30 14:07:35 -04:00
Marc-André Moreau
4dc47d4867
libfreerdp-codec: start H.264 MediaFoundation support
2015-07-29 16:33:04 -04:00
Marc-André Moreau
9400ccb4bc
libfreerdp-codec: add x264 stubs
2015-07-28 16:01:34 -04:00
Marc-André Moreau
a8e62e938a
libfreerdp-codec: fix egfx artifacts resulting from incorrect handling of rects inside the same egfx frame
2015-06-28 13:57:46 -04:00
Marc-André Moreau
5ec19d2045
Merge branch 'master' of github.com:FreeRDP/FreeRDP
2015-06-26 14:00:03 -04:00
Marc-André Moreau
24ed6b06cc
channels/rdpgfx: update debug output
2015-06-26 13:59:41 -04:00
Norbert Federa
ac95b7274e
Merge pull request #2727 from akallabeth/leak_fixes_reformat
...
Fixed leaks, NULL dereferences and broken init.
2015-06-26 15:01:08 +02:00
Armin Novak
e8bfa29bd2
Replaced registry keys with cmake defines.
2015-06-24 14:02:48 +02:00
Armin Novak
a809b87362
Fixed memory leak.
2015-06-24 10:02:42 +02:00
Armin Novak
2ff1205dde
Fixed a resource leak.
2015-06-24 09:45:40 +02:00
Armin Novak
2e762c881c
Fixed a resource leak.
2015-06-24 09:33:20 +02:00
Armin Novak
6698e24228
Fixed leaks, NULL dereferences and broken init.
2015-06-23 21:29:21 +02:00
David FORT
7c3f8f33ab
Fixes for malloc / calloc + other fixes
...
This patch contains:
* checks for malloc return value + treat callers;
* modified malloc() + ZeroMemory() to calloc();
* misc fixes of micro errors seen during the code audit:
** some invalid checks in gcc.c, also there were some possible
integer overflow. This is interesting because at the end the data are parsed
and freed directly, so it's a vulnerability in some kind of dead code (at least
useless);
** fixed usage of GetComputerNameExA with just one call, when 2 were used
in misc places. According to MSDN GetComputerNameA() is supposed to return
an error when called with NULL;
** there were a bug in the command line parsing of shadow;
** in freerdp_dynamic_channel_collection_add() the size of array was multiplied
by 4 instead of 2 on resize
2015-06-22 19:21:47 +02:00
Bernhard Miklautz
bf73f4e4f1
Fix unchecked strdups
...
* add missing checks
* adapt function return values where necessary
* add initial test for settings
2015-06-22 19:09:59 +02:00
Norbert Federa
20aa10e6ae
codec/color: support for 8bpp color pointer
2015-06-11 16:34:42 +02:00
Norbert Federa
86d398f0a3
codec/color: support for 16bpp color pointer
2015-06-11 13:12:21 +02:00
Vic Lee
1d31f25992
h264: add encoder constant QP rate control.
2015-06-02 15:32:45 +08:00
Martin Haimberger
951a2d2210
stream: check stream_new in winpr and libfreerdp
...
also fixed a few things
2015-05-29 04:46:50 -07:00
Bernhard Miklautz
f9c7e03044
winpr: add intrin.h
...
Exposing lzcnt in crt.h might causes compiler errors (redefinition) with
recent versions of gcc (>=4.9) when winpr is included in other projects.
As lzcnt isn't part of crt according to MSDN and also shouldn't be
exported by default it was moved to intrin.h.
The related test was also moved to the top level directory of winpr.
2015-05-26 16:41:29 +02:00
Norbert Federa
535a4352a7
shadow/client context cleanup and unused vars fix
2015-05-21 16:05:05 +02:00
Norbert Federa
cd0a8e0506
Merge pull request #2630 from hardening/new_2616
...
Add checks for some XXX_New and XXX_Add functions
2015-05-21 16:04:26 +02:00
Clive Stevens
63ecb59681
Fix rounding error in progressive codec
...
The grid is composed of 64x64 blocks and should not be smaller
than the surface. If width or height were not a multiple of 64
the previous rounding resulted in a grid smaller than the surface.
2015-05-20 12:26:58 +01:00
Hardening
f8120919af
Add checks for some XXX_New and XXX_Add functions
...
Based on PR #2616
2015-05-18 11:28:00 +02:00
Norbert Federa
1eff1a345e
free can handle NULL perfectly fine
2015-05-11 09:07:39 +02:00
Norbert Federa
25fc866a58
Fix unchecked CreateThread calls and misc fixes
2015-05-05 13:55:48 +02:00
Norbert Federa
ef1fd12b15
Fix unchecked CreateEvent calls and misc fixes
...
1)
Added missing checks for CreateEvent which also required the
following related changes:
- changed freerdp_context_new API to BOOL
- changed freerdp_peer_context_new API to BOOL
- changed pRdpClientNew callback to BOOL
- changed pContextNew callback to BOOL
- changed psPeerAccepted callback to BOOL
- changed psPeerContextNew callback to BOOL
2)
Fixed lots of missing alloc and error checks in the
changed code's neighbourhood.
3)
Check freerdp_client_codecs_prepare result to avoid segfaults
caused by using non-initialized codecs.
4)
Fixed deadlocks in x11 caused by missing xf_unlock_x11() calls
in some error handlers
5)
Some fixes in thread pool:
- DEFAULT_POOL assignment did not match TP_POOL definition
- don't free the pool pointer if it points to the static DEFAULT_POOL
- added error handling and cleanup in InitializeThreadpool
2015-04-29 18:18:39 +02:00
Norbert Federa
5926bbcf48
codec/rfx: simplification, segfault/malloc fixes
...
rfx_process_message_sync:
- simplified the check if the header messages got processed
rfx_process_message_tileset:
- ObjectPool_Take result was not checked
- fail if TS_RFX_TILE block type is not CBT_TILE
- CreateThreadpoolWork result was not checked
- post decoding loop code segfaulted in error case
rfx_decoder_tile_new:
- missing malloc check
rfx_message_free:
- segfault protection
rfx_write_message_tileset:
- segfault protection
2015-04-24 17:54:49 +02:00
Norbert Federa
84577b1ca7
codec/rfx: error checking and various fixes
...
- removed some unneeded null checks for free()
- fixed a memory leak in shadow_client
- removed rfx_compose_message_header from API
Changed the following functions to BOOL, check the result
where they are called and handle failures:
- rfx_compose_message
- rfx_compose_message_header
- rfx_write_tile
- rfx_write_message_tileset
- rfx_write_message_frame_begin
- rfx_write_message_region
- rfx_write_message_frame_end
- rfx_write_message
rfx_process_message:
- check memory allocation failures
- verify protocol-conform order of data messages to prevents memory
leaks caused by repeated allocations
- verify that header messages were parsed/received before the
data messages
- treat unknown rlgr mode as error
- fixed/added error handling
- fixed all callers to check/handle result
rfx_encode_message:
- fixed incorrect usage of realloc
- missing malloc check
- missing check of CreateThreadpoolWork
- correct cleanup on failure (threadpool, memory)
- check rfx_encode_message result
rfx_encode_messages:
- check rfx_split_message result
- correct cleanup on failure
- prevent memory leak on failure
rfx_write_message_context:
- fixed invalid channelId value (must be 0xFF for WBT_CONTEXT)
rfx_process_message_codec_versions:
- fixed invalid read size of codec_version (it is 16bit)
rfx_process_message_channels:
- verify protocol conform channelId value
rfx_process_message_region:
- replaced invalid reallocs with malloc
- read and verify regionType and numTileSets from stream
rfx_process_message_tileset:
- check allocation results
- fixed incorrect usages of realloc
setupWorkers:
- fixed incorrect usages of realloc
rfx_split_message:
- removed dead code
- missing malloc check
rfx_compose_message:
- fixed a memory leak
- check/handle rfx_encode_message result
2015-04-23 15:42:21 +02:00
Bernhard Miklautz
515502ffa5
change return types of callbacks to BOOL
...
* change all client/server callbacks to BOOL
* update all clients accordingly
* add multiple return value checks
* small fixes
2015-04-21 14:18:07 +02:00
Vic Lee
93d59ac3de
h264: change encoder api and add multi-thread support.
2015-04-21 14:02:57 +08:00
Bernhard Miklautz
850de59b55
winpr: add checks for *alloc
...
Add missing checks if memory allocation was successful. Also adapt
caller(s) when possible.
2015-04-08 11:34:37 +02:00
Bernhard Miklautz
74c8400789
coding style fixes
...
Add missing space after if
2015-03-30 17:15:45 +02:00
Bernhard Miklautz
f469e069dc
stream: Stream_Ensure*Capacity: change return type
...
Change the return type of Stream_Ensure*Capacity from void to BOOL to be
able to detect realloc problems easily. Otherwise the only way to detect
this was to check if the capacity after the call was >= the required
size.
In case Stream_Ensure*Capacity fails the old memory is still available
and need to freed outside.
This commit also adds checks to most calls of Stream_Ensure*Capacity to
check if the call was successful.
2015-03-30 16:33:48 +02:00
Bernhard Miklautz
3c7662517c
hardening
...
Start to add missing checks for:
* *alloc
* *_New
2015-03-25 17:38:21 +01:00
Hardening
20433e6f29
Merge pull request #2443 from realjiangms/fix_region
...
Incorrect extents calculation in region16_intersect_rect (libfreerdp/codec/region.c)
2015-03-20 22:12:48 +01:00
zihao.jiang
a6311d29e7
Add ascii art for norbert_test_case
2015-03-21 01:07:54 +08:00
zihao.jiang
2a91988975
resolve comments from hardening
2015-03-21 00:04:30 +08:00
zihao.jiang
ce06229499
fix tab/space style
2015-03-20 23:40:48 +08:00
zihao.jiang
f94935224c
Fixes extents of region16_intersect_rect.
...
See Issue #2443 .
When there's more than 2 rectangles in the region structure, region16_intersect_rect would calculate extents by all 'intersected' sub rectangles.
But it always extend the extents to (0,0) because it initialize the new extents as (0,0,0,0) and union later rectangles with this empty point by simple MIN/MAX calculation.
Also fixed rectangle_is_empty although it has not been used yet. The function does not work as its name.
Reuse norbert case. That case is enough for the intersect fix, but the expected result is not correct. The test case is also fixed.
Added test case to check empty rectangle.
2015-03-20 20:55:06 +08:00
Marc-André Moreau
0e94ac663d
libfreerdp-codec: add support for 16 color palette image copy
2015-03-16 14:01:43 -04:00
Marc-André Moreau
9562439bd8
libfreerdp-codec: add support for 1bpp image copy
2015-03-16 13:27:27 -04:00
Marc-André Moreau
ad02c75af8
libfreerdp-gdi: disable broken BitBlt tests
2015-03-16 08:55:06 -04:00
Zhang Zhaolong
f0adff1812
codec: check return value of realloc.
...
Signed-off-by: Zhang Zhaolong <zhangzl2013@126.com>
2015-03-11 14:18:45 +08:00
Vic Lee
3c3c7068a0
Add openh264 encoder support.
2015-03-02 18:11:28 +08:00
Marc-André Moreau
0054b6b134
Merge branch 'master' of github.com:FreeRDP/FreeRDP
2015-02-06 18:02:10 -05:00
Marc-André Moreau
fdde017526
libfreerdp-codec: allow region_uninit to be called multiple times
2015-02-05 15:10:24 -05:00
Petr Sumbera
8510373b04
Fixes Solaris bus error on sparc.
2015-02-05 08:46:56 -08:00
Armin Novak
d42261f5eb
Added destination buffer width to h264_decompress.
...
Added proper region limit checks in h264_decompress.
2015-01-22 13:22:53 +01:00
Armin Novak
c43faeec0a
Removed broken buffer size check.
...
To check the decoded h264 frame size against the output buffer is wrong.
The size of the output buffer must only hold the data defined by the
region rectangles.
2015-01-22 13:06:37 +01:00
Armin Novak
a217e02924
Prettiefied WLog messages.
2015-01-20 11:10:16 +01:00
Armin Novak
a295a42664
Prettiefied WLog messages.
2015-01-20 11:10:03 +01:00
Armin Novak
595680d169
Prettiefied WLog messages.
2015-01-20 11:09:54 +01:00
Armin Novak
528c5841d5
Fixed memory leak.
2014-12-07 00:50:20 +01:00
Marc-André Moreau
88dd5eb8c5
Merge pull request #2225 from akallabeth/openh264_fix
...
Openh264 v1.2 API
2014-11-28 11:23:11 -05:00
Marc-André Moreau
8a7a71a7b6
Merge pull request #2213 from akallabeth/wlog_callback_appender
...
Wlog callback appender
2014-11-17 09:41:58 -05:00
Armin Novak
83477e5344
Fixed memory leak.
2014-11-17 01:10:45 +01:00
Armin Novak
e4b33efdb2
Fixed memory leak.
2014-11-17 00:56:56 +01:00
Armin Novak
dac7c178a1
Fixed memory leak.
2014-11-17 00:44:22 +01:00
Armin Novak
a9cfb1d07b
Fixed memory leak.
2014-11-17 00:37:29 +01:00
Armin Novak
3a92a626fc
Fixed memory leaks.
2014-11-16 23:11:28 +01:00
Armin Novak
ce3e70840c
Fixed uninitialized value.
2014-11-16 22:22:44 +01:00
Armin Novak
b5d7c30639
Added support for OpenH264v1.2
2014-11-16 14:32:52 +01:00
Armin Novak
8d4589b1e1
Replaced fprintf error messages with WLog.
2014-11-16 12:21:38 +01:00
Norbert Federa
7c0c905683
libfreerdp-codec: fix mppc decompression
...
* protect against history buffer overflows
* fix replicating copy (CopyOffset can be > HistoryBufferSize!)
2014-11-13 14:55:15 +01:00
Norbert Federa
ea0d8a280c
codec: fix pointer data conversion + 24bpp support
...
- alpha values were annihilated (fixed)
- support 24bit xor mask data added
2014-10-31 12:18:08 +01:00
Marc-André Moreau
765150e3ed
libfreerdp-codec: fix incorrect pixel increment in freerdp_image24_copy
2014-10-23 15:50:24 -04:00
Marc-André Moreau
5f95f0776f
libfreerdp-codec: add freerdp_image_copy_from_monochrome replacement function for deprecated freerdp_mono_image_convert
2014-10-21 21:56:10 -04:00
Marc-André Moreau
0aab1e7ee5
libfreerdp-codec: fix and enhance cursor image conversion
2014-10-21 20:46:15 -04:00
Marc-André Moreau
26556323c0
libfreerdp-color: fix 24bpp copy
2014-10-14 20:59:22 -04:00
Marc-André Moreau
02987bbd4a
libfreerdp-codec: add 24bpp to 24bpp color conversion
2014-10-13 12:29:06 -04:00
Marc-André Moreau
a0bab75cff
libfreerdp-codec: fix graphical artifacts with interleaved RLE
2014-10-13 11:39:21 -04:00
Marc-André Moreau
9daa8bd36f
libfreerdp-gdi: handle egfx desktop resize
2014-09-25 22:08:10 -04:00
Marc-André Moreau
8123a1d9b8
libfreerdp-codec: refactor NSCodec
2014-09-23 20:00:26 -04:00
Marc-André Moreau
86c7f46b76
shadow: improve bitmap update performance
2014-09-20 16:29:13 -04:00
Marc-André Moreau
45b9a5454e
libfreerdp-codec: improve compressor interfaces
2014-09-20 15:25:33 -04:00
Marc-André Moreau
09fc388e03
shadow: add RefreshRect/SuppressOutput support
2014-09-18 22:18:58 -04:00
Marc-André Moreau
6afd621d4c
Merge branch 'master' of github.com:awakecoding/FreeRDP into shadow
...
Conflicts:
server/Mac/mf_audin.c
server/Mac/mf_event.c
server/Mac/mf_info.c
server/Mac/mf_mountain_lion.c
server/Mac/mf_peer.c
server/Mac/mf_rdpsnd.c
server/Mac/mfreerdp.c
server/shadow/CMakeLists.txt
2014-09-17 20:15:01 -04:00
Marc-André Moreau
2a5192b027
Merge branch 'master' of github.com:awakecoding/FreeRDP into egfx
...
Conflicts:
client/Windows/wf_cliprdr.h
client/Windows/wf_event.h
client/X11/xf_client.c
client/X11/xf_gdi.c
libfreerdp/gdi/gdi.c
server/Mac/mf_input.c
2014-09-17 19:09:56 -04:00
Marc-André Moreau
60b2d7d603
libfreerdp-codec: fix warning in color conversion, fix color move
2014-09-17 18:43:42 -04:00
Marc-André Moreau
73471eb1f0
libfreerdp-gdi: fix 8bpp mode
2014-09-17 18:30:09 -04:00
Marc-André Moreau
1c646da826
Merge branch 'egfx' of github.com:awakecoding/FreeRDP into shadow
2014-09-17 15:17:05 -04:00
Marc-André Moreau
48b35be953
xfreerdp: fix X11 16bpp mode
2014-09-17 14:29:56 -04:00
Marc-André Moreau
fb4e5d352b
libfreerdp-codec: add proper 16bpp output format support
2014-09-17 12:17:41 -04:00
Marc-André Moreau
1b7a84419c
xfreerdp: partial fix for X11 16bpp mode
2014-09-16 19:12:26 -04:00
Marc-André Moreau
c40d8155a6
libfreerdp-gdi: fix SurfaceToSurface overlapping copies
2014-09-16 17:41:24 -04:00
Marc-André Moreau
1837c34e6e
libfreerdp-codec: add BGR support to egfx
2014-09-16 16:55:47 -04:00
Marc-André Moreau
b25258e8c6
libfreerdp-gdi: add support for ABGR plain colors
2014-09-15 16:28:53 -04:00
Marc-André Moreau
abb841e533
libfreerdp-codec: add RGB/BGR color conversion to freerdp_image_copy
2014-09-15 14:59:45 -04:00
Armin Novak
00d15d0a1b
Decreased logging verbosity.
2014-09-15 19:51:17 +02:00
Armin Novak
2f519d7f16
Replaced logging in libfreerdp with wlog defines.
2014-09-15 08:48:46 +02:00
Marc-André Moreau
06dc76bce2
shadow/mac: add initial screen capture support
2014-09-14 20:08:38 -04:00
Marc-André Moreau
b7351e0795
Merge branch 'egfx' of github.com:awakecoding/FreeRDP into shadow
2014-09-13 12:04:02 -04:00
Marc-André Moreau
f693ff42d7
Merge pull request #2097 from awakecoding/egfx
...
GDI Bitmap Update Optimization
2014-09-12 15:12:52 -04:00
Marc-André Moreau
198f94fe03
libfreerdp-gdi: add RDP8 graphics pipeline support
2014-09-12 14:57:44 -04:00
Marc-André Moreau
45d2bab95d
xfreerdp: optimize bitmap updates
2014-09-11 22:29:09 -04:00
Marc-André Moreau
a3cdcc1641
libfreerdp-gdi: fix and cleanup new bitmap update code
2014-09-11 20:46:15 -04:00
Marc-André Moreau
5b2a465ee6
libfreerdp-gdi: start optimizing gdi bitmap update
2014-09-11 20:12:32 -04:00
Bernhard Miklautz
0313ca3622
libfreerdp: always build "MONOLITHIC"
...
"libfreerdp" consisted of multiple (small) single libraries. If the cmake
option MONOLITHIC was used only one library was build combining all of
the libfreerdp-* libraries.
The only exceptions to this are libfreerdp-server and libfreerdp-client these
are build as separate libraries.
This commit obsoltes non-monolithic builds and makes monolithic builds
the default. The cmake option MONOLITHIC is also removed.
2014-09-12 00:19:53 +02:00
Martin Fleisz
54b96290c9
Merge branch 'fix_2036' of git://github.com/akallabeth/FreeRDP into akallabeth-fix_2036
...
Conflicts:
libfreerdp/codec/test/TestFreeRDPCodecPlanar.c
libfreerdp/codec/test/TestFreeRDPCodecProgressive.c
libfreerdp/core/transport.c
libfreerdp/primitives/test/TestPrimitivesYCbCr.c
2014-09-11 13:03:01 +02:00
Marc-André Moreau
e1e8da9490
shadow: add ability to share rectangle within monitor
2014-09-10 16:27:24 -04:00
Marc-André Moreau
89e5fef11f
wfreerdp: fix build on Windows
2014-09-10 11:38:38 -04:00
Armin Novak
f18a4b8252
Fixed winpr_HexDump calls in tests.
2014-09-10 08:48:49 +02:00
Marc-André Moreau
c71e4e18a1
libfreerdp-core: refactor codec context management
2014-09-10 00:42:41 -04:00
Marc-André Moreau
bcf1266f51
libfreerdp-primitives: integrate H264 SSE3 color converter
2014-09-09 19:15:07 -04:00
Marc-André Moreau
666919d157
Merge branch 'egfx_new' of https://github.com/erbth/FreeRDP into egfx
2014-09-09 18:04:55 -04:00
Marc-André Moreau
5c5eedc85b
libfreerdp-codec: allow error margin of 1 on YCbCr to RGB color decoding
2014-09-09 17:34:02 -04:00
Marc-André Moreau
372d4076d4
libfreerdp-codec: fix progressive decoding
2014-09-09 14:36:04 -04:00
Armin Novak
6762d73ae1
Fixed winpr_HexDump calls.
2014-09-09 16:33:05 +02:00
Armin Novak
b22b897389
Reformatted changed files.
2014-09-09 16:32:22 +02:00
Armin Novak
f8eae11bf3
Fixed calling of dump functions, updated API
2014-09-09 16:31:46 +02:00
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
erbth
fee370e4b2
YUV data conversion with SSSE3 using intrinsics
2014-09-08 16:29:01 +02:00
Marc-André Moreau
ad9092baf9
libfreerdp-codec: cleanup and restructure planar decompressor for chroma subsampling
2014-09-07 15:40:36 -04:00
Marc-André Moreau
5b8fb70e8c
libfreerdp-codec: simplify and optimize planar raw rgb decoding
2014-09-07 14:08:29 -04:00
Marc-André Moreau
bd516e04fa
libfreerdp-primitives: cleanup YCoCg
2014-09-06 21:13:37 -04:00
Marc-André Moreau
437583aa9a
libfreerdp-primitives: add YUV420 to RGB conversion
2014-09-06 17:10:27 -04:00
Marc-André Moreau
73d121dd82
Merge branch 'egfx' of github.com:awakecoding/FreeRDP into egfx
2014-09-05 20:17:05 -04:00
Marc-André Moreau
5f37e768f0
libfreerdp-codec: improve YUV to RGB color conversion
2014-09-05 20:16:56 -04:00
Marc-André Moreau
fe75405d5c
libfreerdp-codec: fix build on Windows
2014-09-05 19:38:33 -04:00
Marc-André Moreau
f14b0e0195
libfreerdp-codec: cleanup h264 decoder
2014-09-05 19:11:03 -04:00
Marc-André Moreau
510a02ea94
libfreerdp-codec: improve progressive unit test
2014-09-04 16:52:41 -04:00
Marc-André Moreau
be60bddec0
libfreerdp-primitives: add YCbCr color converter test
2014-09-04 16:34:29 -04:00
Marc-André Moreau
37aabc50d1
libfreerdp-codec: improve YCbCr to RGB color conversion
2014-09-04 13:09:46 -04:00
Marc-André Moreau
fd7b9669a5
libfreerdp-codec: improve progressive unit tests
2014-09-03 18:47:02 -04:00
Marc-André Moreau
1491c5a7f9
libfreerdp-codec: initial partial upgrade tile support
2014-09-02 19:25:01 -04:00
Marc-André Moreau
f79be532f0
libfreerdp-codec: fix and improve SRL decoder
2014-09-02 18:15:36 -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
59b8bd0bd1
libfreerdp-codec: start reading progressive RAW bytes
2014-08-27 18:34:37 -04:00
Marc-André Moreau
32766b0647
libfreerdp-codec: start computing BitPos
2014-08-27 17:02:15 -04:00
Marc-André Moreau
51d1d42616
libfreerdp-codec: fix progressive tile diffing
2014-08-27 15:15:37 -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
ec53dd612e
libfreerdp-codec: fix progressive codec tile drawing offset, fix dequantization
2014-08-25 19:50:42 -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
969d9011da
libfreerdp-codec: partially working progressive iDWT
2014-08-21 19:02:26 -04:00
Marc-André Moreau
f79ba1b364
libfreerdp-codec: fix crashes
2014-08-21 17:14:10 -04:00
Marc-André Moreau
f77e515965
libfreerdp-codec: improve progressive iDWT
2014-08-21 16:05:39 -04:00
Marc-André Moreau
e54bbdab00
libfreerdp-codec: start new progressive rfx iDWT functions
2014-08-20 19:12:08 -04:00
erbth
dee50a8ca2
H264 data alignement and 32 bit comilation ...
2014-08-21 00:58:08 +02:00
erbth
9eec9cb18a
RDPEGFX H264 YUV data conversion in assembly/with SSSE3 in 32bit
2014-08-21 00:08:56 +02:00
Marc-André Moreau
5e778d6a0c
libfreerdp-codec: intermediate progressive rfx iDWT
2014-08-20 17:16:34 -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
2e672d5bdb
libfreerdp-codec: optimize RemoteFX dequantization and differentiation
2014-08-18 21:10:56 -04:00
Marc-André Moreau
6744bbe7ae
libfreerdp-codec: start working on progressive dequantization
2014-08-18 19:12:08 -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
erbth
497e130c21
YUV data conversion using SSSE3/assembly with libavcodec implementation
2014-08-18 21:21:24 +02:00
Pavel Tsekov
eab69c2984
Fix 1bpp -> 16bpp image conversion.
...
* libfreerdp/codec/color.c (freerdp_mono_image_convert): Update the
1bpp -> 16bpp conversion code to reflect the fact that the foreground
and the background colors are in GDI representation now.
2014-08-14 20:09:12 +03: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
erbth
095a7aba99
OpenH264 YUV data conversion with intel SSSE3 in assembly
2014-08-13 20:56:40 +02:00
Marc-André Moreau
87fd839a35
libfreerdp-codec: cleanup and fix __lzcnt on Windows
2014-08-11 18:48:42 -04:00
Marc-André Moreau
dc7f89dbd5
Merge branch 'egfx' of github.com:awakecoding/FreeRDP
2014-08-11 17:25:38 -04:00
Marc-André Moreau
cff9c16c1e
Merge branch 'master' of github.com:FreeRDP/FreeRDP
...
Conflicts:
channels/disp/client/disp_main.c
2014-08-11 10:36:07 -04:00
erbth
a8945306a1
Merge branch 'egfx' of https://github.com/awakecoding/freerdp into egfx
2014-08-08 15:22:47 +02:00
erbth
a8257b5201
fixed some memory leaks arround DVC and RDPEGFX
2014-08-08 15:19:49 +02:00
Armin Novak
f4c133eaf8
Replaced custom logging mechanism with WLog wrapper.
2014-08-07 16:51:24 +02: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
b7ca13f19d
libfreerdp-codec: add RLGR3 support in new RLGR function
2014-08-05 21:26:47 -04:00
Marc-André Moreau
db5b947852
libfreerdp-codec: optimize RLGR1
2014-08-05 17:22:20 -04:00
Marc-André Moreau
e6dbbfb305
libfreerdp-codec: fix progressive RLGR1 decode
2014-08-05 17:07:06 -04:00
Marc-André Moreau
85b1d6c167
Merge branch 'master' of github.com:FreeRDP/FreeRDP
...
Conflicts:
libfreerdp/codec/h264.c
2014-08-05 09:55:54 -04:00
U-PAVEL\Pavel Tsekov
8a4f134fab
Revert to 15d2b35574
2014-08-05 14:35:31 +03:00
Marc-André Moreau
88e5bacda7
libfreerdp-codec: improve progressive rfx rlgr1
2014-08-03 00:08:22 -04:00
Marc-André Moreau
51f6ffd2ba
libfreerdp-codec: improve rfx progressive RLGR1 implementation
2014-08-02 22:26:05 -04:00
Marc-André Moreau
85026bff76
libfreerdp-codec: initial RLGR1 progressive implementation
2014-08-02 11:24:47 -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
erbth
64501b895b
Merge branch 'egfx' of https://github.com/awakecoding/freerdp into egfx
...
Conflicts:
libfreerdp/codec/h264.c (deleted in my repo in order to get complete remote file)
2014-07-30 13:11:05 +02:00
erbth
55407bd4e8
repo prepared for merging #2
2014-07-30 13:08:08 +02:00
erbth
de46a0c738
repo prepared for merging
2014-07-30 12:46:52 +02:00
Marc-André Moreau
800be2f680
libfreerdp-codec: complete parsing of progressive codec block arrays
2014-07-29 17:37:46 -04:00
erbth
20e76411dc
H.264 hack and first port of YUV to XRGB format conversion to assembly
2014-07-29 21:42:04 +02:00
Marc-André Moreau
7c07035f29
Merge branch 'master' of github.com:awakecoding/FreeRDP into egfx
2014-07-29 13:41:57 -04:00
Marc-André Moreau
c060fb07a2
libfreerdp-codec: fix build on Windows
2014-07-29 13:41:21 -04:00
Marc-André Moreau
2b3cd39026
libfreerdp-codec: more parsing of progressive data blocks
2014-07-29 12:38:29 -04:00
Pavel Tsekov
8c3080f345
Fix 1bpp to 32bpp conversion with CLRCONV_ALPHA on
...
* libfreerdp/codec/color.c (freerdp_mono_image_convert): Use
ARGB32/ABGR32 when
using 32bpp framebuffer and CLRCONV_ALPHA is set.
2014-07-29 11:19:25 +03:00
Marc-André Moreau
a3de93d867
libfreerdp-codec: start parsing progressive codec
2014-07-28 23:41:16 -04:00
Bernhard Miklautz
a124f6a7c6
fix comment style
...
// to /* */
2014-07-29 05:22:30 +02:00
Bernhard Miklautz
8c318da7b1
fix compiler warnings
2014-07-29 05:22:29 +02:00
Marc-André Moreau
0c408c213c
libfreerdp-codec: stub progressive codec decompressor
2014-07-28 17:42:23 -04:00
Marc-André Moreau
8321d7ffad
libfreerdp-codec: fix OpenH264 usage thanks to @erbth's hack
2014-07-28 17:22:02 -04:00
Marc-André Moreau
6c034f17eb
Merge branch 'egfx' of github.com:vworkspace/FreeRDP into egfx
2014-07-28 17:04:03 -04:00
Marc-André Moreau
780079d629
Merge branch 'master' of github.com:awakecoding/FreeRDP into egfx
2014-07-28 16:59:29 -04:00
erbth
9501b6c58e
OpenH264 first frame decode fix
2014-07-17 16:25:34 +02: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
Armin Novak
ad3255354d
Added WITH_LIBRARY_VERSIONING, allowing to build shared libraries without
...
SOVERSION information. (required by Android)
2014-07-11 11:53:58 +02:00
Bernhard Miklautz
6a49bcfe40
winpr: always build "monolitic"
...
winpr is now always build as single library.
The build option MONOLITHIC_BUILD doesn't influence this behavior anymore.
The only exception is winpr-makecert-tool which is still build as extra
library.
This obsoletes complex_libraries for winpr.
2014-07-10 11:10:58 +02:00
Mike McDonald
1087b50e92
Added use of U/V planes to freerdp_image_copy_yuv420p_to_xrgb function.
2014-07-09 19:56:05 -04:00
Marc-André Moreau
03c91a92d1
libfreerdp-codec: add more egfx h264 debugging
2014-07-09 16:41:36 -04:00
Marc-André Moreau
1a4b84ade4
Merge branch 'egfx' of github.com:vworkspace/FreeRDP into egfx
2014-07-08 18:04:49 -04:00
Mike McDonald
3e817090b9
Added SetOption calls to enable trace logging in OpenH264.
2014-07-08 17:45:48 -04:00
Marc-André Moreau
f7e5365719
libfreerdp-codec: add more gfx H264 debug output
2014-07-08 17:16:13 -04:00
Marc-André Moreau
ee8c0906f0
libfreerdp-codec: fix strict aliasing warnings in ncrush code
2014-07-08 15:59:23 -04:00
Marc-André Moreau
c492017fa1
libfreerdp-codec: fix build bot warnings
2014-07-08 15:48:29 -04:00
Marc-André Moreau
ac7d23b9a3
libfreerdp-gdi: migrate to _aligned_malloc/_aligned_free
2014-07-08 15:07:19 -04:00
Marc-André Moreau
1a32c2e33e
Merge branch 'egfx' of github.com:vworkspace/FreeRDP into egfx
2014-07-08 12:20:30 -04:00
Marc-André Moreau
31b6459484
libfreerdp-codec: don't use posix_memalign
2014-07-08 12:18:41 -04:00
Marc-André Moreau
a0dad3fa87
Merge branch 'master' of https://github.com/dpoe/FreeRDP into egfx
2014-07-08 12:13:11 -04:00
Marc-André Moreau
2f26ed58e5
libfreerdp-codec: reduce ClearCodec memory usage
2014-07-08 11:37:27 -04:00
Marc-André Moreau
465ecb02a1
libfreerdp-codec: fix ClearCodec short vbar cache hit
2014-07-07 16:50:19 -04:00