Proposal to deprecate VP6 video and the FLV/FXM file formats
david.dehaven at oracle.com
Wed Aug 26 18:53:19 UTC 2015
I am proposing we deprecate support for the VP6 video encoding format and the FXM/FLV file format in JFXMedia for Java 9. The current intention is to completely remove support for these components in the Java 10 timeframe. Note that this is only deprecation, Java 9 will still support playback of VP6 video in FXM or FLV containers.
The reasons in favor of deprecation:
- Use of VP6 on the web has lost favor, it was superseded fairly quickly by H.264/AVC in Flash 9 and Adobe generally recommends using H.264/AVC over it. It's not even recommended for compatibility as as their "Sorenson Spark" H.263 variant has a much longer history in Flash.
- Tools for generating VP6 are non-trivial, even Adobe products no longer support generating VP6 content out of the box, you have to install add-ons. While there are free tools, none are particularly elegant or easy to use, or produce sub-optimal results. We've heard no end of complaints from the community about the lack of tools for VP6, so it seems a logical decision to migrate away from it.
- We have had (many) requests to add external codec support, if (that's a big IF, please do NOT take this as any sort of promise or even the hope of a promise!) we were to implement such a feature and if you absolutely had to rely on VP6 then you would be able to provide one yourself.
- The vp6 codec is the LAST closed source component in media, once removed JFXMedia will be 100% open source. I think we can all agree this is a good thing and something I personally look forward to achieving.
The one and only reason I can think of for NOT deprecating VP6:
- It is currently the only format (supported by JFXMedia) which supports an alpha channel, though I have had thoughts on how to address that in a way that would allow the use of practically any media format.
While compelling for some use cases, it is a very niche use case and thus cannot outweigh the benefits. So, this is a call out to any who may be using VP6, please speak up now so we can discuss it or forever hold your peace.
For reference, the list of supported formats in JFXMedia are in the JavaDoc for javafx.scene.Media:
More information about the openjfx-dev