RFR: 8273096: Add support for H.265/HEVC to JavaFX Media [v3]

Kevin Rushforth kcr at openjdk.java.net
Mon Dec 13 19:37:25 UTC 2021


On Sat, 11 Dec 2021 05:24:40 GMT, Alexander Matveev <almatvee at openjdk.org> wrote:

>> - Added support for H.265/HEVC for all 3 platforms.
>>  - Support is added only for .mp4 files over FILE/HTTP/HTTPS protocols. HTTP Live Streaming with H.265/HEVC is not supported.
>>  - On Windows mfwrapper was introduced which uses Media Foundation APIs to decode HEVC.
>>  - 10 and 12-bit HEVC was tested and also supported, however due to graphics pipeline not supporting 10-bit YUV rendering we will use color converter to convert video frame to 8-bit before sending it for rendering.
>>  - Resolution upto 4k is supported.
>> 
>> Additional runtime dependency requirements:
>> Windows: Windows 10 with HEVC Video Extensions installed.
>> macOS: macOS High Sierra and later
>> Linux: at least libavcodec56 and libswscale5
>> 
>> Additional build dependency:
>> Linux: libswscale-dev
>
> Alexander Matveev has updated the pull request incrementally with one additional commit since the last revision:
> 
>   8273096: Add support for H.265/HEVC to JavaFX Media [v4]

Changes look fine with one question.

modules/javafx.media/src/main/native/gstreamer/plugins/mfwrapper/mfwrapper.cpp line 698:

> 696:         {
> 697:             pMediaBuffer->Unlock();
> 698:             gst_buffer_unref(pGstBuffer); // INLINE - gst_buffer_unref()

Is it safe to call gst_buffer_unref with `NULL`?

-------------

PR: https://git.openjdk.java.net/jfx/pull/649


More information about the openjfx-dev mailing list