实现原理:
LibVLCSharp 解码获取视频(8bit、10bit)帧数据
在DirectX、OpenGL模式中程序根据视频色彩空间自动选择8bit或10bit处理。
8bit:I420 支持DirectX、OpenGL、Skia
10bit:I0AL 支持DirectX、OpenGL
Skia没有使用硬件加速,所以在效率上低于前两个图形库接口。
4K 60帧
设备:NVIDIA GeForce RTX 3050 Laptop GPU
OpenGL:
DirectX:
Skia:(这种cpu渲染图一乐)
说说结论:
OpenGL: 考虑到兼容性和跨平台,TA无疑是最好的选择。
DirectX:大微软提出的图形API性能指定没得挑,渲染上原生支持了YUV格式不需要像OpenGL一样在Shader中转换。(性能最佳)
Skia:本身这哥们是支持使用OpenGL进行硬件加速的,但无奈技术功底有限自己没能实现。
未来如果Maui的Skia库要是支持硬件加速的话,那个人认为,Skia在Maui框架中做视频播放那指定是🐂🖊。