[webkit-changes] [WebKit/WebKit] 385047: [GStreamer][GL] Video frame conversion handling

Philippe Normand noreply at github.com
Fri Jan 10 00:38:07 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 38504740eae569f9f858947f78d9759862893462
      https://github.com/WebKit/WebKit/commit/38504740eae569f9f858947f78d9759862893462
  Author: Philippe Normand <philn at igalia.com>
  Date:   2025-01-10 (Fri, 10 Jan 2025)

  Changed paths:
    M LayoutTests/platform/wpe/TestExpectations
    M Source/WebCore/platform/SourcesGStreamer.txt
    M Source/WebCore/platform/graphics/gstreamer/GLVideoSinkGStreamer.cpp
    M Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.cpp
    M Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h
    A Source/WebCore/platform/graphics/gstreamer/GStreamerVideoFrameConverter.cpp
    A Source/WebCore/platform/graphics/gstreamer/GStreamerVideoFrameConverter.h
    M Source/WebCore/platform/graphics/gstreamer/VideoFrameGStreamer.cpp

  Log Message:
  -----------
  [GStreamer][GL] Video frame conversion handling
https://bugs.webkit.org/show_bug.cgi?id=285280

Reviewed by Xabier Rodriguez-Calvar.

This patch introduces a GStreamerVideoFrameConverter singleton that is responsible for optionally
downloading frames from the GPU and convert them to a new format. The pipeline used for this relies
on the WebKit GL context.

* Source/WebCore/platform/SourcesGStreamer.txt:
* Source/WebCore/platform/graphics/gstreamer/GLVideoSinkGStreamer.cpp:
(webKitGLVideoSinkChangeState):
(requestGLContext): Deleted.
(setGLContext): Deleted.
* Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.cpp:
(WebCore::requestGLContext):
(WebCore::setGstElementGLContext):
* Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h:
* Source/WebCore/platform/graphics/gstreamer/GStreamerVideoFrameConverter.cpp: Added.
(WebCore::GStreamerVideoFrameConverter::singleton):
(WebCore::GStreamerVideoFrameConverter::GStreamerVideoFrameConverter):
(WebCore::GStreamerVideoFrameConverter::convert):
* Source/WebCore/platform/graphics/gstreamer/GStreamerVideoFrameConverter.h: Added.
* Source/WebCore/platform/graphics/gstreamer/VideoFrameGStreamer.cpp:
(WebCore::convertSampleToImage):
(WebCore::VideoFrameGStreamer::createFromPixelBuffer):
(WebCore::VideoFrameGStreamer::convert):

Canonical link: https://commits.webkit.org/288686@main



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list