As you correctly noted, Oracle no longer includes JavaFX in the standard JDK. It is now maintained as
OpenJFX, an open-source project led by Gluon and the community.
In 2026, the javafx.media module has evolved to support modern standards while removing legacy formats. Here are the codecs and updates available as of early 2026:
1. New & Updated Codec Support
- H.265 (HEVC): This is the most significant addition. JavaFX now supports H.265/HEVC video playback, which offers superior compression compared to H.264. It is particularly useful for high-resolution content and modern HTTP Live Streaming (HLS) delivery.
- fMP4 (Fragmented MP4): Support for fragmented MP4 containers has been stabilized. This allows JavaFX to handle modern streaming formats used by major platforms, improving compatibility with HLS.
- Apple Silicon & Metal: On macOS, the media pipeline has been optimized for Apple Silicon (M1/M2/M3/M4) chips. The rendering now integrates better with the Metal framework for smoother hardware-accelerated decoding.
2. Supported Formats in 2026
The current stable stack for JavaFX Media includes:
- Video: H.264 (AVC) and H.265 (HEVC).
- Audio: AAC (Advanced Audio Coding) and MP3.
- Containers: MP4, MOV, and MPEG-TS.
- Protocols: HTTP, HTTPS, and HLS (including multi-language audio tracks and fMP4 support).
3. Removed/Deprecated Formats
To maintain security and reduce the library's footprint, several legacy technologies have been completely removed:
- VP6 & FLV: Flash Video (FLV) and the VP6 video codec are no longer supported.
- Old GStreamer Layers: Older versions of the GStreamer library (the internal engine for JavaFX Media) have been phased out in favor of the 1.2x series.
4. How to Implement in 2026
Since it is an external library, you must include the dependency in your pom.xml (Maven) or build.gradle (Gradle).
Maven Dependency:
xml
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-media</artifactId>
<version>23</version> <!-- Current stable version as of 2026 -->
<classifier>win</classifier> <!-- or mac / linux -->
</dependency>
Usa el código con precaución.
Summary of Change
The shift from Oracle to
OpenJFX has actually accelerated media updates. By decoupling from the JDK, the JavaFX team can update the internal
GStreamer engine more frequently, ensuring that JavaFX apps can run H.264 and H.265 video smoothly on Windows 11, macOS, and modern Linux distros.