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
libservo: Handle GL video decoding setup internally #31209
Conversation
I really love this change which simplifies the WindowMethod trait!
Do you know what exactly they are used for? |
media.testing.enabled is only used to expose a non-standard event handler for verifying behavior of media elements during tests:
|
If media.glvideo.enabled is true, the media code will attempt to use hardware acceleration for video playback: servo/ports/servoshell/headed_window.rs Line 589 in 9b6c473
|
@@ -67,6 +67,8 @@ impl App { | |||
|
|||
// Implements window methods, used by compositor. | |||
let window = if opts::get().headless { | |||
// GL video rendering is not supported on headless windows. | |||
set_pref!(media.glvideo.enabled, false); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this mean currently we have GL video rendering enabled for headless windows?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nope, this is disabled, but only implicitly because the previous WindowMethod
trait method implementations for headless windows did not return information useful for GL rendering.
Thanks for the review! |
b02840d
to
4275d63
Compare
Instead of making the client set up GL video decoding, have this done inside libservo. The details necessary for decoding are fetched via Surfman now. This also removes the setup for the context on Android -- which has no GStreamer support now anyway. In the future, this could be enabled, but should likely be done using Surfman, instead of passing on all these details manually.
4275d63
to
4b3ea30
Compare
Instead of making the client set up GL video decoding, have this done inside libservo. The details necessary for decoding are fetched via Surfman now. This also removes the setup for the context on Android -- which has no GStreamer support now anyway. In the future, this could be enabled, but should likely be done using Surfman, instead of passing on all these details manually.
Instead of making the client set up GL video decoding, have this done
inside libservo. The details necessary for decoding are fetched via
Surfman now. This also removes the setup for the context on Android --
which has no GStreamer support now anyway. In the future, this could be
enabled, but should likely be done using Surfman, instead of passing on
all these details manually.
./mach build -d
does not report any errors./mach test-tidy
does not report any errors