[Webkit-unassigned] [Bug 159928] [GStreamer] Support a direct GPU-to-GPU copy of video textures to WebGL
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Tue Sep 20 02:58:16 PDT 2016
https://bugs.webkit.org/show_bug.cgi?id=159928
--- Comment #11 from Miguel Gomez <magomez at igalia.com> ---
Comment on attachment 288829
--> https://bugs.webkit.org/attachment.cgi?id=288829
Patch
View in context: https://bugs.webkit.org/attachment.cgi?id=288829&action=review
Sorry for taking so long, I've been quite busy.
The approach is fine, just a couple of suggested improvements.
> Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:683
> if (m_usingFallbackVideoSink)
This check should be at the beginning of nativeImageForCurrentTime() and copyVideoTextureToPlatformTexture(). We can save some useless operations if we are not using opengl.
> Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:755
> + GLContext* glContext = GLContext::sharingContext();
You'll need to change this with GLContext* context = PlatformDisplay::sharedDisplayForCompositing().sharingGLContext();
> Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:756
> + glContext->makeContextCurrent();
No need to make the sharing context current here, as context->bindTexture() below will change it again. Cairo will make it current when needed.
> Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:775
> + if (!paintToCairoSurface(outputSurface))
Pass the cairo device and the videoInfo to paintToCairoSurface()
> Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:793
> + GLContext* context = GLContext::sharingContext();
You'll need to change this with GLContext* context = PlatformDisplay::sharedDisplayForCompositing().sharingGLContext();
> Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:804
> + if (!paintToCairoSurface(rotatedSurface))
Pass the cairo device and the videoInfo to paintToCairoSurface()
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20160920/1a267812/attachment-0001.html>
More information about the webkit-unassigned
mailing list