akallabeth
8b9335aa90
[CMake,libfreerdp] add pkg-config dependencies
2025-09-11 07:17:42 +02:00
akallabeth
9b21bc8fc2
[primitives,neon] fix YUV conversion, handle odd x/y
2025-06-16 10:59:35 +02:00
akallabeth
e049be9837
[codec] log primitives used
2025-06-13 13:52:28 +02:00
akallabeth
3d9ad1cb46
[primitives] fix neon detection
2025-06-13 10:41:59 +02:00
akallabeth
92f88b37d8
[primitives,yuv] fix YUV420 to RGB
2025-06-13 09:53:24 +02:00
akallabeth
b2d7a7d3c0
[primitives,test] print all errors on RGB compare
2025-04-29 10:01:03 +02:00
akallabeth
ebe9e5209b
[primitives,test] do compare YUV444 rgb after conversion
2025-04-28 22:33:03 +02:00
akallabeth
c06bf6ccb0
[warnings] fix format warnings
2025-03-24 21:23:10 +01:00
Armin Novak
e4df43a37a
[freerdp] fix argument consistency, casts
2025-03-19 19:32:09 +01:00
akallabeth
d529675f70
[cmake,primitives] mark WITH_OPENCL unmaintained
2025-03-17 16:23:53 +01:00
akallabeth
994898be4a
[primitives,sse] remove sse2_yCbCrToRGB_16s16s_P3P3
...
The SSE implementation did not produce divergent results due to rounding
errors. Since the function is unused in the project itself remove it.
2025-03-16 20:18:58 +01:00
akallabeth
b0393e434e
[primitives] unify writing YUV data as RGB pixel
2025-03-16 20:18:36 +01:00
akallabeth
83cb4f1c53
[primitives,yuv] refactor yuv420 to RGB
...
the routine did have some out of bound read issues, refactor to avoid
that.
2025-03-16 20:18:30 +01:00
akallabeth
b46b67271e
[primitives] fix optimized setup
...
only initialize once to generic implementation and then try the
optimized versions
2025-03-15 20:55:26 +01:00
Armin Novak
8fb49b0abe
[warnings] fix coverity warnings
2025-03-12 13:44:59 +01:00
Armin Novak
3e6707c443
[warnings] fix issues from ci builder
2025-03-12 12:02:04 +01:00
akallabeth
1fe0ca41e1
[warnings] fix missing integer casts
2025-03-11 13:20:19 +01:00
akallabeth
9310e2ebf8
[primitives] use int64_t instead of SSIZE_T as parameter
...
SSIZE_T is only guaranteed to have -1 defined.
2025-03-11 11:01:13 +01:00
akallabeth
a6c70383e9
[primitives] rename function pointer types
...
* Remove __ prefix, reserved identifiers
* Add drop in replacement for compatibility
* Clean up SSE macros
2025-03-10 22:34:33 +01:00
akallabeth
2b53807256
[primitives] fix warnings and restricted use
2025-03-10 22:13:46 +01:00
akallabeth
0bb49c94c9
[restrict] unify restrict keyword usage
2025-03-10 18:48:16 +01:00
akallabeth
8cb4741f03
[primitives,YCoCg] remove 16 bye alignment
2025-03-07 10:16:24 +01:00
akallabeth
4c1cc2cc0c
[warnings] fix unused function and variables
2025-03-07 09:35:03 +01:00
akallabeth
aa4384a286
[primitives,copy] remove alignment check
2025-03-06 16:09:16 +01:00
akallabeth
d765de8484
[warnings] eliminate dead code
2025-03-05 11:01:44 +01:00
akallabeth
61910ad0b5
[dead code] remove some unused code
...
also fix some parts no longer compiling after enabling it again
2025-03-04 17:24:13 +01:00
akallabeth
d4f7fb081b
[warnings] fix -Wunused-function
...
* delete unused functions that are no longer required
* define guard functions only used while debugging
2025-02-27 19:29:46 +01:00
akallabeth
413c9b8a85
[primitives,sse] enable and refactor prefetch code
2025-02-27 05:41:59 +01:00
akallabeth
a520f845a3
[warnings] fix -Wunused-macro
...
comment or delete macros that were not used.
2025-02-26 22:12:18 +01:00
akallabeth
12764b1ebe
[warnings,android] fix build warnings
2025-02-22 15:22:01 +01:00
akallabeth
74cd8d8fe0
[freerdp,warnings] fix -Wunused-parameter
2025-02-13 15:53:54 +01:00
akallabeth
323c6da940
[core] fix warnings and invalid return type
2025-02-13 14:43:31 +01:00
akallabeth
22efdfbc8f
[simd] move CPU feature detection
...
Use static inline functions in header to do CPU feature detection.
The c files are already compiled/linked with SIMD support and might have
used instructions from that featureset already.
2025-02-12 14:24:10 +01:00
akallabeth
fd13e9b919
[primitives,sse] unify load/store
...
* Use LOAD_SI128 to load __m128i values
* Use STORE_SI128 to store __m128i values
2025-02-12 14:24:10 +01:00
akallabeth
76012aac42
[primitives,sse] split headers
...
Split out all SSL inline functions and defines from prim_internal.h. The
header is included in files build without -msse and on some platforms
compilation will fail due to that.
2025-02-12 14:24:07 +01:00
akallabeth
00e61074b2
[unused] eliminate unused functions
2025-02-10 09:32:19 +01:00
akallabeth
44f5b6c409
[warnings] fix various clang warnings
2025-02-04 11:22:00 +01:00
Armin Novak
664321dd04
[clang,tidy] fix cast warnings
2025-01-15 15:35:09 +01:00
Armin Novak
f52801e8e0
[primitives,yuv] inline functions
2025-01-15 14:34:12 +01:00
Armin Novak
b07d850774
[primitives,yuv] allow odd height for YUV
...
rails mode often submits odd resolution heights, so support these in
RGB2YUV and YUV2RGB conversions.
2025-01-15 11:51:32 +01:00
akallabeth
f1d1864e3c
[primitives,yuv] allow odd lines for YUV444 to RGB
2025-01-14 20:51:23 +01:00
akallabeth
d938f978a8
[primitives] fix benchmark
...
if no primitives benchmark is run use optimized implementation instead
of generic if one is available.
2025-01-14 09:11:55 +01:00
akallabeth
2da7b8c606
[primitives,opencl] do not fail on opencl not supported
2025-01-12 15:13:17 +01:00
akallabeth
db278ec457
[primitives] only run benchmark if opencl enabled
...
there is no need to compare implementation performance if only one
optimized version is available.
2025-01-12 09:26:44 +01:00
akallabeth
b358175872
[primitives,yuv] fix possible NULL dereference
2025-01-11 12:36:51 +01:00
akallabeth
4a7de1360a
[primitives] update benchmark
...
test all available primitives types now
2025-01-10 12:51:00 +01:00
akallabeth
3a6994cd38
[primitives] expose primitives_get_by_type
2025-01-10 12:50:58 +01:00
akallabeth
cf392cdfe1
[primitives] add primtives_hint_str
2025-01-10 12:50:55 +01:00
akallabeth
a9d2c5330c
[primitives,yuv] fix opencl conversion routines
2025-01-10 12:50:52 +01:00
akallabeth
7b0489e0ce
[primitives,yuv] fix opencl conversion routines
2025-01-10 12:09:37 +01:00