[vlc-devel] [PATCH] linux: kernel mode setting (KMS) vout plugin
jb at videolan.org
Tue May 15 15:01:40 CEST 2018
On Tue, 15 May 2018, at 14:09, Juha-Pekka Heikkila wrote:
> I made vout plugin for Linux which uses kernel mode setting API. This plugin
> mostly recreates what FB plugin does with following highlights:
This is very cool.
> * FB could only do RGB but with KMS plugin one get access to all kernel
> enabled video modes. I have successfully ran through all packed and planar
> YUV modes I found from my HW -- as well as all RGB modes.
> * No tearing (I hope) I used two hw buffers and kernel plane handling
> takes care of the flipping for me. Only way I see tearing could happen is
> if VLC is decoding video frames faster than hardware video refresh rate.
> * libFB to my knowledge is in maintenance mode, no more new features.
> * My plugin can be run over ssh.
> Then the other things:
> * I am employee of Intel Corporation thus I have to have special disclaimer
> on top of my plugin. I developed this plugin as part of my work when
> playing with KMS, this can be used to test video modes where it doesn't
> need to be totally boring all the time :)
It should not be a problem.
> * I have had access only to Intel hardware but I'm wishful my plugin works
> equally on other manufacturer's hardware. I tried to use only simple
> features to be able to maintain functionality on other platforms too.
There are other hardware manufacturers that Intel? :D
> * VLC and libdrm has some FourCC codes which are equal on both worlds but
> then there are others which have different names while seemingly same
> functionality. By default my plugin asks for XR24 type framebuffer from
> DRM and at the same time tells VLC it is RV32. Then again things like YUYV
> or NV12 are the same in both worlds. If VLC is run in verbose mode one
> can see my plugin listing all modes which KMS advertises. I didn't go
> write match making table for these.
Jean-Baptiste Kempf - President
+33 672 704 734
More information about the vlc-devel