Hi,
I wrote an object based on gemframbuffer that uses libmpv (https://mpv.io/) to decode a video file and output it directly to a texture. This circumvent the bottleneck of uploading the pixes to the GPU and provides a wide range of codecs to Gem (if MPV can play your video, then gem-mpv can too). This have been successfully tested with 4K HAP video on Linux. It also supports video with alpha channel.
The source code is here : https://github.com/avilleret/gem-mpv The build system is CMake, there is no binary release. Follow the Readme to build it. It has been only tested on Linux for now.
Inside, it's more or less a wrapper around libmpv, that means every properties and commands should be supported but only few have been tested yet. Some are documented in the help file, for the others, please refer to libmpv help : https://mpv.io/manual/stable/
Best regards
Antoine