RFR: 8337960: Improve performance of mfwrapper by reusing GStreamer media buffers for decoded video [v2]
Kevin Rushforth
kcr at openjdk.org
Thu Feb 13 23:50:18 UTC 2025
On Thu, 13 Feb 2025 03:51:28 GMT, Alexander Matveev <almatvee at openjdk.org> wrote:
>> - Added new class `CMFGSTBuffer` which can allocate memory internally or provide GStreamer allocated memory to Media Foundation.
>> - Added `GstBufferPool` to limit allocation of output buffers used for rendering (memory will not be allocated for each buffer, but instead will be reused from pool). Limits are 3 min buffers and 6 max buffers. During testing 3 buffers was enough.
>> - Changed `CoInitializeEx` to `COINIT_MULTITHREADED` as per Media Foundation requirements.
>> - Added error handling for `ProcessOutput` in case of https://bugs.openjdk.org/browse/JDK-8329227. With error handling `MediaPlayer` fails nicely instead of silent hang.
>
> Alexander Matveev has updated the pull request incrementally with one additional commit since the last revision:
>
> 8337960: Improve performance of mfwrapper by reusing GStreamer media buffers for decoded video [v2]
This looks good to me now with the updated lock/unlock now handling multiple matched lock/unlock.
-------------
Marked as reviewed by kcr (Lead).
PR Review: https://git.openjdk.org/jfx/pull/1695#pullrequestreview-2616452448
More information about the openjfx-dev
mailing list