-
Notifications
You must be signed in to change notification settings - Fork 54
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WIP: GL support for MacOS #315
Conversation
The player test fails because with GL Error 0x506, that is GL_INVALID_FRAMEBUFFER_OPERATION: Given when doing anything that would attempt to read from or write/render to a framebuffer that is not complete. The error is produced when WR tries to clear its rendering target:
Which is the same error previous to the clean up, rebase and refactor. Following the GStreamer log, it seems that the render target created by the internal GStreamer GL context is made current (!!!) when WR wants to clear the current target, which is the GStreamer one, exposing that error. I suspect this is a GStreamer error on its MacOS bits. Also, as far as I known, nobody has tried the texture uploading to an external application on Mac before. |
I've filed an issue for gst-plugins-base: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/671 |
I tried to copy cat what offscreen-gl-context does, creating a new shared context, but I hit with the same issue as servo/surfman#82 If I create a new context, the original problem arise: gstreamer's shared context draws first and deactivate the context while webrender tries to use it. |
Yes, that makes sense to me. We're changing our WebGL model away from shared contexts to using shared surfaces instead (based on https://github.com/pcwalton/surfman) in order to avoid that problem on macOS. It's not clear to me if that's a solution for supporting GL in gstreamer on macOS, though, since gstreamer is based on shared contexts. |
☔ The latest upstream changes (presumably #319) made this pull request unmergeable. Please resolve the merge conflicts. |
This MR is a continuation of #284