Armin Novak
10e3942993
[primitives] skip benchmarking if only one available
2023-12-20 07:27:43 +01:00
akallabeth
1b31852d32
[git] remove .gitignore
...
we do no longer allow in source builds, so remove all the .gitignore
files just hiding generated files
2023-11-28 12:14:55 +01:00
akallabeth
1d21c0c609
[warnings] properly cast constants to char
2023-10-17 11:07:11 +02:00
Armin Novak
517ca5c714
[primitives] fix neon use of WINPR_RESTRICT
2023-09-11 10:04:56 +02:00
akallabeth
e04e28def9
[primitives,yuv] clean up code, assert arguments
2023-08-28 14:26:10 +02:00
akallabeth
3dcd702676
[primitives,yuv] use WINPR_RESTRICT
2023-08-25 14:13:30 +02:00
akallabeth
7a71441476
[warnings] fix integer multiplications
...
Ensure the integer width for size arguments is 64bit in a
multiplication. Leading 64bit constant 1ull expands width, a trailing
one is ignored.
2023-08-22 11:55:00 +02:00
Armin Novak
1e0ca536c7
[ci,nightly] use internal MD4, MD5 and RC4 on windows
2023-07-28 13:42:12 +02:00
Armin Novak
6c6eaf5144
[primitives,yuv] fix pointer cast warnings
2023-07-28 13:42:12 +02:00
akallabeth
2d16985d68
[primitives] fix typo, reading wrong buffer
2023-06-29 18:34:51 +02:00
akallabeth
1fc0d5b4b1
[winpr] remove casts for winpr_RAND calls
2023-06-21 09:57:52 +02:00
Armin Novak
a4c6b36a19
[build] fix memory sanitizer stack frame warnings
2023-06-07 09:14:45 +02:00
akallabeth
1c63284372
[primitives,tests] use winpr_alinged_calloc
2023-03-28 11:34:52 +02:00
akallabeth
ee07a13130
[cleanup] fix compiler warnings
2023-01-26 09:30:17 +01:00
akallabeth
82ba9ede9c
[freerdp] use FREERDP_/UWAC_/RDTK_ prefix for conditional headers
2023-01-10 17:38:00 +01:00
akallabeth
0186a9b303
Fixed some warnings
2022-12-09 15:58:26 +01:00
akallabeth
d768796163
[codec,avc] chroma reverse filter cutoff threshold
2022-12-07 15:54:58 +01:00
Armin Novak
31c1700c0c
Fixed -Wunused-variable
2022-11-21 10:12:31 +01:00
akallabeth
43c5289928
Replaced memset/ZeroMemory with initializer
...
* Addes WINPR_ASSERT on many occations
* Replaced memset with array initializer
* Replaced ZeroMemory with array initializer
2022-10-14 12:11:01 +02:00
akallabeth
e4b1258564
Fixed missing include
2022-10-11 13:28:30 +02:00
David Fort
77413f49b2
winpr: rework alignment functions
...
_align_XXX functions aren't widely available depending on the C runtime. That causes
problems with mingw where we can easily have some runtime mixes (which lead to mysterious
segfaults most of the time). This patch introduce winpr_aligned_XXX functions that will
either use the function available, or use an emulation layer.
2022-05-12 11:36:01 +02:00
akallabeth
0422cf9892
Fixed invalid argument types
2022-04-29 14:38:41 +02:00
akallabeth
340f9dd775
Fixed conditional warnings
2022-04-28 12:37:19 +02:00
akallabeth
6bc7f6ca88
Fixed cast-qual warnings
2022-04-28 12:37:19 +02:00
akallabeth
fb90ac280a
Refactored color.h
...
* Remove implementations from header
* Rename functions to be FreeRDP specific
* Add deprecation define for old names
* Fixed missing includes
2022-04-28 08:40:47 +02:00
akallabeth
3d38d2636c
Decreased logging verbosity for INFO level
2022-03-04 09:34:02 +01:00
Armin Novak
4d03d7c0bf
Freerdp remove #ifdef HAVE_CONFIG_H
2022-03-03 11:26:48 +01:00
Armin Novak
b2ad47a809
Reorganized FreeRDP headers
2022-03-03 11:26:48 +01:00
Armin Novak
ca30e749e9
Fixed unused-but-set-variable and reserved identifier warnings
2022-02-01 08:48:21 +01:00
Armin Novak
1fedd36f65
Fixed proxy compilation issues after rdpUpdate refactoring
2022-01-18 11:24:23 +01:00
Armin Novak
673fb46836
Fixed uninitialized warnings
2021-09-10 08:16:25 +02:00
Armin Novak
0f8c52b9ca
Fixed const warnings with argument parser
2021-09-09 08:53:20 +02:00
Armin Novak
5afa592244
Fixed cast-qual warnings
2021-08-24 11:10:51 +02:00
Armin Novak
5eea7fc12d
WINPR_UNUSED argc, argv for unit tests
2021-08-24 10:45:57 +02:00
Armin Novak
f515bd4560
Fixed shadowing and type errors
2021-08-24 10:45:57 +02:00
Armin Novak
d9a8083ddf
Added WINPR_NORETURN, fixed warnings
2021-06-17 10:35:22 +02:00
Armin Novak
c5fded2d83
Improved runtime of unit tests
2021-06-08 08:21:47 +02:00
akallabeth
ab49694101
Added new RDP file options
2021-05-11 07:59:05 +02:00
Armin Novak
317e334cc3
Refactored YCoCg converstion
2021-03-20 14:31:43 +01:00
akallabeth
f346793970
Refactored encoder functions to return changed areas
2021-03-01 11:52:07 +01:00
akallabeth
50acf72615
Refactored H264 encoding/decoding
...
Use YUV primitives now for all H264 operations
2021-03-01 11:52:07 +01:00
akallabeth
3b7af0293e
Fixed primitiveYUV unit test.
2021-02-25 14:18:01 +01:00
akallabeth
6c6e31217d
Ignore alpha channel during color conversion.
...
Most GFX graphics do not carry alpha data. Keep the original
alpha value unless specified otherwise.
2021-02-25 14:18:01 +01:00
akallabeth
43311130a2
Fixed CodeQL warnings
2021-02-19 11:19:49 +01:00
Martin Fleisz
d3530a16d5
primitives: Respect alpha values in YUV444 SSE pixel routine
2021-01-12 09:16:08 +01:00
Armin Novak
b6f3922152
Fixed primitives test
2020-09-07 11:48:06 +02:00
Armin Novak
816e792e3f
Fixed unit tests run under memory sanitizer
2020-09-07 10:42:28 +02:00
akallabeth
ae5a30438e
Fixed undefined behaviour
2020-05-20 15:10:07 +02:00
akallabeth
a139caf73a
Fixed undefined behaviour in primitives shift
2020-05-20 15:10:07 +02:00
Armin Novak
ebf44f80eb
Fixed format string warnings.
2020-04-11 09:43:01 +02:00
Armin Novak
66352741f2
Added fallbacks for primitives auto detection.
...
When using primitives auto detection it was possible that no
primitive implementation was chosen at all.
This now skips broken implementations and falls back to generic
primitives if no other implementation does work.
2020-03-02 11:40:35 +01:00
Armin Novak
ea25900f4c
Fixed #5855 : YCoCg to RGB conversion color order
2020-01-22 17:28:22 +01:00
Armin Novak
61d2e84fdc
Fixed inverted color formats in YCoCgRToRGB_8u_AC4R
2020-01-14 17:45:20 +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
22f954970a
primitives: use host pointers for openCL
...
Using host pointers may skip the need for copying buffers.
2019-11-29 11:59:09 +01:00
Armin Novak
3aa6047b3a
Updated primitive function const correctness.
2019-11-22 13:21:39 +01:00
Armin Novak
e347c7b3de
Added YUV444 kernel
2019-11-22 13:21:39 +01:00
Armin Novak
b3a3a6b9c2
Fixed intialization of opencl primitives and warnings.
2019-11-22 13:21:39 +01:00
David Fort
6123920a2e
opencl: inline the openCL program in the source code
2019-11-22 13:21:39 +01:00
Armin Novak
00e9efd189
Fixed init code.
2019-11-22 13:21:39 +01:00
Armin Novak
733c70cd25
Fixed primitives cleanup code.
2019-11-22 13:21:39 +01:00
Armin Novak
0a3721587a
Cleaned up primitives code.
2019-11-22 13:21:39 +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
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
Armin Novak
ca4a1d19a5
Silenced some unused parameter warnings.
2019-05-08 12:21:31 +02:00
Armin Novak
0bacb30608
Fixed sign-compare warnings
2019-04-05 09:13:24 +02:00
Armin Novak
2a582ed197
Fixed NULL dereferences and uninitialized values
2019-01-30 16:11:10 +01:00
Armin Novak
98bc4358e0
Fixed padding of general_yCbCrToRGB_16s8u_P3AC4R* functions.
2018-11-28 11:05:45 +01:00
Armin Novak
62c1696d4c
Removed use of unchecked sprintf
2018-08-27 14:34:42 +02:00
Armin Novak
6d3beabd54
Removed unused variables in tests.
2018-08-24 13:40:36 +02:00
Mike Gilbert
9460f4292b
primitives: ensure primitives_get() returns a populated struct
...
Fixes: https://github.com/FreeRDP/FreeRDP/issues/4658
2018-05-16 17:08:15 -04:00
Armin Novak
b5668e35b0
Fixed format string mismatch.
2018-04-05 10:49:24 +02:00
Armin Novak
2bda3a30b0
Fixed integer to float type cast.
2018-04-04 10:45:07 +02:00
Armin Novak
b0fe199060
Fixed intrinsic integer overflow.
...
Adding 128 in 8bit is not possible due to range [-128,127].
Instead subtract -128, that should eliminate the overflow.
2018-04-04 10:43:31 +02:00
Armin Novak
e0d112d548
Removed all calls to WLog_Init and WLog_Uninit
...
Since the calls are no longer required remove their usage.
2018-04-03 13:06:41 +02:00
Armin Novak
1a902c249c
Fix PROFILER_* macros
...
Add the semicolon to the macro to allow clean
undefinition if the profiler is not used.
This used to break VisualC compilers.
2018-02-15 11:30:38 +01:00
Armin Novak
1d99696db2
Fixed AVC444 YUV conversion matrix
2018-02-07 11:23:33 +01:00
Armin Novak
53cdd95de0
Refactored RGB to AVC444v2
2018-02-07 10:48:43 +01:00
Armin Novak
eb8e9cb410
Added SSSE3 UV average to AVC444v1
2018-02-07 10:48:43 +01:00
Armin Novak
46159c4cab
Added UV average to AVC444v1
2018-02-07 10:48:43 +01:00
Armin Novak
c82610c304
Deactiveate optimized primitives if no implementation compiled.
2018-01-30 14:53:53 +01:00
Armin Novak
8f7bc7990f
Added SSE optimized RGB to AVC444 frame split and test.
2018-01-30 11:17:16 +01:00
Armin Novak
ce10e22b86
Added optimized C function for specific color format.
2018-01-30 11:17:15 +01:00
Armin Novak
f27ee2e3ab
Split optimized YUV implementations to separate files.
2018-01-30 11:17:15 +01:00
David Fort
5e48664695
primitives: use INIT_ONCE instead of static booleans
...
This may prevent some race conditions
2018-01-29 00:25:20 +01:00
Martin Haimberger
94a58bd18d
YUV conversation: fixed luma frame creation
...
in the conversation function general_RGBToAVC444YUVv2_ANY
2018-01-12 00:16:45 -08:00
Armin Novak
23e1afb44a
Added new and optimized YUV primitives.
...
* RGBToAVC444YUVv2: Split a RGB frame in luma and/or chroma v2 YUV420 frames
* RGBX specific versions of RGBToAVC444YUV and RGBToYUV420_8u_P3AC4R
2018-01-10 14:46:18 +01:00
Armin Novak
e4766c656e
Fixed missing initialization warnings.
2017-12-21 11:04:32 +01:00
Armin Novak
57958cb178
Fixed #3810 : Renamed color functions
2017-11-24 13:21:43 +01:00
Norbert Federa
eea2f306d3
primitives/yuv: fix endianess issue
2017-10-19 11:55:13 +02:00
Bernhard Miklautz
52fbfb7b12
fix clang warnings, directly include wtypes.h ( #4097 )
...
* build: clang use -Wno-unused-command-line-argument
With clang 5.0 builds are quite noisy otherwise.
* Directly include wtypes.h
Directly include winpr/wtypes.h where _fseeki64 or _ftelli64 is used.
* fix build warnings with clang 5
clang version: 5.0.0-svn310678-1~exp1 (branches/release_50)
Warning: parentheses-equality
* fix build warnings with clang 5
clang version: 5.0.0-svn310678-1~exp1 (branches/release_50)
Warning: tautological-compare
* fix build warnings with clang 5
clang version: 5.0.0-svn310678-1~exp1 (branches/release_50)
Warning:
incompatible pointer types passing 'size_t *' (aka 'unsigned
long *') to parameter of type 'UINT32 *' (aka 'unsigned int *')
[-Wincompatible-pointer-types]
2017-08-29 09:09:38 +02:00
Armin Novak
b51a103b70
Fixed uninitialized values.
2017-07-20 09:35:41 +02:00
Armin Novak
8b9e3fa51e
Fixed use of reserved keywords for include guards.
2017-07-20 09:35:41 +02:00
Norbert Federa
36b8f54c5e
Fixed a few compiler warnings
2017-07-10 17:52:05 +02:00
Armin Novak
f1a296a32e
Fixed AVC444v2 NEON chroma decoder.
2017-04-18 15:08:44 +02:00
Armin Novak
06d4e9ac73
Fixed SSE AVC444v2 chroma decoder.
2017-04-18 15:03:38 +02:00
Armin Novak
a2167d5417
Added surface width and heigth for YUV combine.
2017-04-18 14:12:40 +02:00
Armin Novak
fcd2d820af
Added SSE AVC444v2
2017-04-13 13:09:16 +02:00