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
c8b85e19a4
libfreerdp-codec: separate tile encoding from writing
2013-08-13 14:13:05 -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
e91f2516e5
libfreerdp-codec: fix automatic growing of the encode stream size
2013-08-12 13:13:27 -04:00
Norbert Federa
ccc5d1b279
codec/rfx: fix multithreaded encoder
...
Some component of the encoder chain (I suspect the rlgr encoder) expects
the output buffer to be zeroed. The multithreaded RemoteFX encoder uses
wStreams from the StreamPool which are reused and not zeroed out of
course. For now, in order to prevent data corruption we clear the stream.
2013-08-10 00:28:35 +02:00
Norbert Federa
0d916527bc
codec/rfx: added multithreaded encoder
2013-08-07 18:22:42 +02:00
Norbert Federa
938a0890a3
codec/rfx: removed unnecessary WaitForSingleObject
...
The WaitForSingleObject call on TilePool's event is called with a zero time-out
interval and the event is a manual reset event ... thus no locking or waiting
is involved anyways and Queue_Dequeue may very well return NULL independently
of calling WaitForSingleObject which is already correctly handled.
2013-07-30 13:02:43 +02:00
Norbert Federa
1d384ce863
codec/rfx: removed unused queue TileQueue
...
Declared, created, deleted but not used:
git grep TileQueue
libfreerdp/codec/rfx_types.h: wQueue* TileQueue;
libfreerdp/codec/rfx.c: context->priv->TileQueue = Queue_New(TRUE, -1, -1);
libfreerdp/codec/rfx.c: Queue_Free(context->priv->TileQueue);
2013-07-17 10:01:56 +02: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
Norbert Federa
df7526f888
codec/rfx: Fixed bufferpool size used for RemoteFX
...
y_r_buffer, cb_g_buffer, cr_b_buffer and dwt_buffer are all word arrays (16bit)
but obviously the bufferpool size was calculated based on the wrong assumption
that these are 32 bit values in commit 37a59efbe3
2013-07-05 12:30:13 +02:00
Norbert Federa
40976a91b7
utils/profiler: fix unix build
2013-06-27 13:43:29 +02:00
Norbert Federa
b2108839b0
utils: fix broken stopwatch implementation
...
Stopwatch (in the way it is used) must be able to measure the wall
clock time with high resolution but used clock() which is not
appropriate for this purpose:
On POSIX systems clock() returns the processor time used by the
program. On Windows clock() does measure the wall clock time but
has only a resolution of 1ms (if at all).
This also renders the freerdp profiler unusable.
This commit changes stopwatch to use the performance counters
on Windows and gettimeofday() for the rest.
Also added a warning about invalid profiling results to the
RemoteFX codec if rfxcontext->priv->UseThreads is enabled because
stopwatch is currently not used in a thread safe way.
Also see GitHub Issue #1325
2013-06-27 13:00:54 +02:00
Vic Lee
6551815991
libfreerdp-codec/rfx: fix a memory leak.
2013-06-20 12:10:01 +08:00
Vic Lee
b194ddc211
libfreerdp-codec/rfx: dwSize must be initialized.
2013-06-14 12:16:04 +08:00
Marc-André Moreau
fdf3ddcf9e
freerdp: purge deprecated stream utils
2013-05-08 17:48:30 -04:00
Marc-André Moreau
fd230443c5
freerdp: purge old stream utils
2013-05-08 16:27:21 -04:00
Marc-André Moreau
5b92413843
freerdp: purge deprecated stream utils
2013-05-08 16:09:16 -04:00
Marc-André Moreau
b4cac74136
xfreerdp-server: fix RemoteFX encoding
2013-05-01 18:15:55 -04:00
Marc-André Moreau
51715636a5
freerdp: remove some deprecated stream utils
2013-04-29 22:35:15 -04:00
Marc-André Moreau
a8201b0d1b
libwinpr-utils: combine old and new stream utils
2013-03-21 15:19:33 -04:00
Martin Fleisz
2e8a0983dd
codec: Added padding to rfx buffers for SSE/NEON code
2013-03-05 17:36:26 +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
Martin Fleisz
b8fd4b5227
codec: Fixed NEON CPU detection compile issue, primitives_get race condition in rfx decoding
2013-02-22 03:37:39 -08:00
Martin Fleisz
1cfb4a4e77
codec: Fixed NEON detection and incorrect RFX decoding
2013-02-21 07:08:46 -08:00
Marc-André Moreau
f49c92d6fe
Merge pull request #932 from hardening/remoteFxChecks
...
Add checks on RemoteFX
2013-02-02 13:30:54 -08:00
C-o-r-E
bbfc724db9
libfreerdp: fix slash
2013-01-30 19:56:58 -05:00
C-o-r-E
a39ef9980f
Merge remote-tracking branch 'upstream/master'
2013-01-30 19:05:35 -05:00
Corey C
b23cde57a6
libfreerdp: missing include
2013-01-30 18:55:22 -05:00
hardening
ebfec72e88
Add checks on RemoteFX
2013-01-28 22:23:10 +01:00
Marc-André Moreau
ebefab1de4
libfreerdp-codec: add processor count detection and auto-enabling of threads in RemoteFX decoder
2013-01-23 19:21:14 -05:00
Marc-André Moreau
a5b66e3766
libfreerdp-codec: fix build on Windows
2013-01-23 11:48:31 -05:00
Marc-André Moreau
94ad538185
libfreerdp-codec: added registry keys for multithreaded RemoteFX decoder
2013-01-22 21:54:13 -05:00
Marc-André Moreau
22f374ac36
libfreerdp-codec: implement buffer pooling for RemoteFX
2013-01-22 21:24:04 -05:00
Marc-André Moreau
f5d9b06252
libwinpr-utils: added buffer pool
2013-01-22 20:36:08 -05:00
Marc-André Moreau
37a59efbe3
libfreerdp-codec: use _aligned_free for RemoteFX buffers
2013-01-22 18:32:17 -05:00
Marc-André Moreau
438a727c6b
libfreerdp-codec: start parallel decoding of RemoteFX tiles
2013-01-22 18:14:50 -05:00
Marc-André Moreau
9a7bcbb084
libfreerdp-codec: remove old RemoteFX tile pool
2013-01-20 20:44:30 -05:00
Daryl Poe
b64408975d
freerdp primitives library
2013-01-18 15:32:58 -07:00
Marc-André Moreau
8a32de3801
libfreerdp: purged source tree from deprecated memory utils
2012-11-21 21:22:06 -05:00
Marc-André Moreau
2a16183f5d
libfreerdp-utils: remove deprecated calls to xnew() macro
2012-11-21 20:21:08 -05: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
5612bc43f8
freerdp: change true/false to TRUE/FALSE
2012-10-09 02:31:28 -04:00
Marc-André Moreau
9909a12af5
libfreerdp-utils: get rid of xmalloc, xrealloc and xfree
2012-10-08 23:21:26 -04:00
Marc-André Moreau
e60a092d81
freerdp: fix headers
2012-10-08 23:02:04 -04:00
richterger
e1fc37b5e4
Add missing #ifdef/#endif around include stdint
2012-10-02 08:48:11 +02:00
Marc-André Moreau
d5d1eb7762
libfreerdp: add proper config.h inclusions
2012-08-14 17:09:01 -04:00
Marc-André Moreau
19028a27b0
libfreerdp: move all libraries to libfreerdp directory, one step closer to monolithic build option
2012-08-13 23:19:51 -04:00