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
eb95f00991
Move H264 subsystem variable to header
2022-04-28 13:25:27 +02:00
akallabeth
ec699f6c75
scanbuild fixes
2022-04-28 12:37:19 +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
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
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
52202762e8
adding mediacodec h264 implementation using NDK
2022-01-26 10:24:26 +01:00
Armin Novak
f3df9a520e
Fixed H264 related warnings
2021-12-20 08:11:00 +01:00
Armin Novak
67f632982a
Fixed YUV decoder API
...
Need to verify widht and height more rigorously.
2021-11-15 09:23:00 +01:00
Armin Novak
69ff22e2a3
Fixed #7332 : Missing NULL check
2021-11-02 09:52:01 +01:00
Armin Novak
0e991a1078
Use original height for h264 context, but allocate padded height.
2021-10-19 15:41:49 +02:00
Armin Novak
76c419e690
Remember avc420 allocation width and height
2021-10-19 15:41:49 +02:00
akallabeth
112400ca66
Removed stub for x264, not implemented
2021-06-16 15:21:56 +02:00
sss
6b76ac9545
Revert "Revert "allow to use in single threaded mode" ( #6864 )"
...
This reverts commit f7465af44f
.
2021-03-26 11:50:45 +01:00
akallabeth
f7465af44f
Revert "allow to use in single threaded mode" ( #6864 )
...
This reverts commit bee2e1526d
.
2021-03-05 13:02:38 +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
43311130a2
Fixed CodeQL warnings
2021-02-19 11:19:49 +01:00
Armin Novak
7c243da6e1
Remove symbols exported by accident.
2019-12-02 10:57:31 +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
d49adfcf59
Fixed warnings and cleaned up gfx related xfreerdp code.
2019-05-08 17:01:36 +02:00
Armin Novak
bff49a9bd0
Fixed invalid argument warnings.
2018-08-24 13:40:36 +02:00
David Fort
a07efb73ec
video: an implementation of MS-RDPEVOR for X11
...
Implements the decoding of video streams using common H264 decoders. We also implement
a trivial feedback algorithm.
Sponsored by: Rangee GmbH (http://www.rangee.de )
2018-02-13 10:51:07 +01:00
Armin Novak
7adc384d9a
Using dynamic logger for GFX-H264 backend.
2018-02-07 13:26:39 +01:00
Armin Novak
9f57e07a23
Align YUV buffer strides and height.
2018-02-02 10:39:33 +01:00
Armin Novak
3b70d1178b
Added AVC444 chroma support to shadow server.
2018-02-02 10:39:33 +01:00
Norbert Federa
456ce96618
codec/h264: fix potential segfault and mf_init
2017-10-17 19:28:54 +02:00
Armin Novak
88fa131248
Fixed variable assignment.
2017-07-19 11:36:28 +02:00
Armin Novak
42fdb0b8d3
Reordered backends with regard to feature completeness.
2017-07-18 07:46:51 +02:00
Armin Novak
96d53933d2
Deactivated all H264 related code paths.
2017-07-17 10:39:08 +02:00
Armin Novak
2614251e83
Removed H264 dummy, did not work (crash on use)
2017-07-17 09:28:08 +02:00
Armin Novak
5764d5a78a
Disable GFX H264 if no backend compiled in.
2017-07-17 09:25:21 +02:00
David Fort
dcbb61e3b3
Fix variable declaration and win32 compilation
2017-06-19 23:52:31 +02:00
David Fort
0308123592
Split h264 subsystems in different files
2017-06-14 16:04:54 +02:00
Armin Novak
8adc2ba201
Align width and height for AVC444 decoding to 16.
2017-06-01 13:01:23 +02:00
Martin Fleisz
16111e7e7f
codec: Fix multi-threading support for OpenH264 1.6 or later
2017-05-05 12:37:27 +02:00
David Fort
40baadb471
Merge pull request #3911 from akallabeth/avc444_v2
...
Added AVC444v2 client support.
2017-05-02 16:02:21 +02:00
Armin Novak
2da8dcf8ed
Fixed MF H264 buffer allocation.
2017-04-20 12:35:51 +02:00
Armin Novak
a2167d5417
Added surface width and heigth for YUV combine.
2017-04-18 14:12:40 +02:00
Armin Novak
b0d3cfda4d
Added AVC444v2 client support.
2017-04-11 11:29:14 +02:00
Armin Novak
5755cb72a1
Fixed crash on h264 context cleanup (windows).
2017-02-17 11:40:27 +01:00
Armin Novak
f24b112514
Refactored AVC444 decoding to single YUV420 buffer
...
Since not all H264 decoders support multiple YUV420 output
buffers process H264 decoding and YUV to RGB conversion
sequentially to avoid overriding the input data.
2017-02-15 09:28:10 +01:00
Armin Novak
2c99c17078
Fixed libavcodec issues.
2017-02-14 16:41:07 +01:00
Armin Novak
f324b0ef9c
Use aligned malloc/free for GFX surfaces/buffers
2017-02-14 16:02:11 +01:00
Armin Novak
94b9fef049
Updated LIBAVCODEC support for H264 decoder.
2017-02-14 10:34:27 +01:00
Armin Novak
3644d8dfbd
Fixed YUV444ToRGB, do not discard chroma frame.
2017-02-13 16:11:11 +01:00
Armin Novak
57db52237c
Fixed AVC444 luma/chroma checks.
2017-02-10 08:31:32 +01:00