Hacker News new | past | comments | ask | show | jobs | submit login

Actually EGLstream is the standard (albeit proposed by nVidia) while gbm is an API specific to some Linux drivers.



EGLStreams may be popular in some areas, but all other graphics drivers support GBM.


On Linux.

EGLStreams is the actual Khronos standard (https://www.khronos.org/egl) as such existing on Windows, QNX and others.


Being a Khronos standard doesn't mean it exists anywhere.

EGLStreams doesn't exist on Windows, as Windows doesn't have any EGL at all. Similarly while EGL is used on Android, Android doesn't support EGLStreams and probably won't as the functionality already exists & EGL is on the way out long-term as Vulkan adoption picks up.

With all that said, EGLStreams is probably also not going to get adoption on most platforms as it's pretty terrible & inferior to what most platforms already have. Which is, on most platforms you can work directly with buffers instead of being forced into a specific point to point pipe (Android's HardwareBuffe or iOS/Mac's CVPixelBuffer)


EGLStreams is on its way out for desktop Linux too, since NVIDIA is working on adopting GBM for the next driver series and is working in Mesa to prepare for that: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/99...


At least Windows has EGL incl streams for some scenarios (related to WSL’s graphics stack mainly).

On more embedded scenarios that I’ve worked on (Qt w/ EGLFS), it’s quite popular too.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: