Commit Graph

1028 Commits

Author SHA1 Message Date
akallabeth
c716304cf8 Only build RFX neon path with -DWITH_NEON=ON 2022-05-04 09:28:29 +02:00
akallabeth
eb95f00991 Move H264 subsystem variable to header 2022-04-28 13:25:27 +02:00
akallabeth
340f9dd775 Fixed conditional warnings 2022-04-28 12:37:19 +02:00
akallabeth
962c5c3ef0 Fixed dead store warnings 2022-04-28 12:37:19 +02:00
akallabeth
6fd71fe737 Eliminate Dead nested assignment warnings 2022-04-28 12:37:19 +02:00
akallabeth
ec699f6c75 scanbuild fixes 2022-04-28 12:37:19 +02:00
akallabeth
bba427e71a No longer export ncrush, xcrush and mppc codecs 2022-04-28 11:24:29 +02:00
Armin Novak
83bb37d174 Fixed decoder arguments, use const correct ones 2022-04-28 09:17:41 +02:00
akallabeth
667b471686 Fixed cast-quality warnings 2022-04-28 09:17:20 +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
Armin Novak
ee243d17aa Fixed #7837: Overallocate zgfx output buffers
Some decoders require additional byte alignment to prevent out
of bound reads
2022-04-27 18:39:41 +02:00
akallabeth
aa6ca6aa40 Do not use Stream_CheckAndLogRequiredLength for optional checks
clear codec does not require these bytes to be available, so do
not log such checks
2022-04-23 10:10:09 +02:00
akallabeth
73cdcdfe09
Logging and parser fixes (#7796)
* Fixed remdesk settings pointer

* Fixed sign warnings in display_write_monitor_layout_pdu

* Use freerdp_abort_connect_context and freerdp_shall_disconnect_context

* Added and updates settings

* info assert/dynamic timezone

* mcs assert/log/flags

* Fixed and added assertions for wStream

* Unified stream length checks

* Added new function to check for lenght and log
* Replace all usages with this new function

* Cleaned up PER, added parser logging

* Cleaned up BER, added parser logging

* log messages

* Modified Stream_CheckAndLogRequiredLengthEx

* Allow custom format and options
* Add Stream_CheckAndLogRequiredLengthExVa for prepared va_list

* Improved Stream_CheckAndLogRequiredLength

* Now have log level adjustable
* Added function equivalents for existing logger
* Added a backtrace in case of a failure is detected

* Fixed public API input checks
2022-04-19 14:29:17 +02:00
Armin Novak
edcb8284e7 Fixed #7745: Progressive surface cleanup 2022-04-06 10:32:43 +02:00
Armin Novak
66c7228643 Fixed version mismatch in ffmpeg h264 2022-04-06 10:25:41 +02:00
akallabeth
19173a3c6b Fixed removed #endif 2022-04-06 10:25:41 +02:00
akallabeth
e647d3aa83 Additional error checks for ffmpeg h264 backend 2022-04-06 10:25:41 +02:00
akallabeth
0a9c02b1ad Always set sys->packet 2022-04-06 10:25:41 +02:00
akallabeth
f4cb7b9877 Added FFMPEG h264 asserts 2022-04-06 10:25:41 +02:00
Armin Novak
974c700977 Fixed memory leak in YUV 2022-04-06 08:58:32 +02:00
akallabeth
1378c8e671
Fixed #7753: Step calculation in YUV decoder (#7758)
* Fixed #7753: Step calculation in YUV decoder

* Fixed rectangle_is_empty

* Added rectangle intersection check in YUV decoder

* Skip intersecting rectangles in YUV decoder

* Refactored YUV work object handling

* Allocate / free in yuv_context_new and yuv_context_free
* WINPR_ASSERT all function arguments

* Pass yuv_context_reset result from h264_context_reset

* Reset PTP_WORK buffer to NULL after use
2022-03-29 13:55:52 +02:00
Armin Novak
3b24b5e16e rfx_process_message verbose error log 2022-03-08 15:41:48 +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
akallabeth
b5f3b9f64e Fixed #7607: Channel remixing does not work with FFMPEG
Until a proper way to utilize FFMPEG is found, do it manually.
2022-03-02 17:10:17 +01:00
akallabeth
921f279fa9
Openh264 fix graphical artifacts (#7677)
* Added WINPR_ASSERT to openh264 backend

* Added openH264 decoder frame flush
2022-02-28 08:21:42 +01:00
Armin Novak
e5d820a37d Use variable for mediacodec codec name 2022-02-24 12:06:06 +01:00
Armin Novak
ac98dfa502 Fixed mediacodec backend
* Link directly, no runtime linking. (It is part of the NDK for API >=
  21)
* Fix problems with functions introduced with API 26 and 28
2022-02-24 12:06:06 +01:00
Armin Novak
1b71bba2a0 Fixed compilation warnings 2022-02-22 11:29:56 +01:00
Armin Novak
082720a392 Free packet after decoding. 2022-02-15 11:00:05 +00:00
akallabeth
8cc6582044
Unify struct definitions (#7633)
* Unified enum/struct definitions, fixed include issues

* Fixed mac compilation issues

* Added missing include

* Fixed windows server build warnings

* Fixed VS2010 build issue

* Removed unnecessary library linking

* Fixed ThreadPool WinXP compatibility

* Fixed pr review remarks
2022-02-14 14:59:22 +01:00
Armin Novak
10e40147fb Fixed various const warnings 2022-02-01 10:25:37 +00:00
Armin Novak
90512bcc8d Fixed xcrush const warnings 2022-02-01 08:48:21 +01:00
Armin Novak
ca30e749e9 Fixed unused-but-set-variable and reserved identifier warnings 2022-02-01 08:48:21 +01:00
Armin Novak
c51224e923 Fixed const warnings for codec decompress routines 2022-01-31 16:25:56 +01:00
Armin Novak
b9cfa10513 Fixed some more warnings 2022-01-31 15:55:10 +01:00
Armin Novak
c220367843 Replaced reserved name identifier 2022-01-31 15:55:10 +01:00
Armin Novak
2e17cee5a9 Fixed various warnings. 2022-01-31 15:55:10 +01:00
Armin Novak
83d834a6ca Static internal variables, added resolution limit explanation 2022-01-31 11:20:27 +01:00
eronnen
4c78b66822 always initializing MediaCodec with non-zero resolution, adjusting to codec output resolution 2022-01-31 11:20:27 +01:00
akallabeth
4a29b29a53
Fix #7586: Update size of tile cache if required. (#7602) 2022-01-28 09:07:27 +01:00
Armin Novak
6f3761b8bf Fixed too eager assert. 2022-01-26 12:22:41 +01:00
Armin Novak
61e7f5796f Added missing include 2022-01-26 10:24:26 +01:00
Armin Novak
4d29cb3700 Fixed statement expressions and missing goto 2022-01-26 10:24:26 +01:00
Armin Novak
d3ae4cf26d Added code assertions, fixed loading order 2022-01-26 10:24:26 +01:00
Ely Ronnen
633c1abf44 handling small input buffer case 2022-01-26 10:24:26 +01:00
Ely Ronnen
91540862df import libmediandk.so dynamically 2022-01-26 10:24:26 +01:00
Ely Ronnen
52202762e8 adding mediacodec h264 implementation using NDK 2022-01-26 10:24:26 +01:00
David Runge
d0488f8692 Guard avcodec_register_all() calls
{channels/tsmf/client/ffmpeg/tsmf,libfreerdp/codec/dsp}_ffmpeg.c:
Guard calls to `avcodec_register_all()` against use beyond
`AV_VERSION_INT(58, 10, 100)`, where upstream ffmpeg made it obsolete.
2022-01-25 08:52:29 +01:00
akallabeth
6abd5f6c79
FFmpeg deprecated guards (#7574)
* Fixed missing ffmpeg deprecation guard

* Fixed compilation type warning
2022-01-24 09:49:07 +01:00