[webkit-changes] [WebKit/WebKit] b646f7: [GStreamer] Harness: graph dump support

Philippe Normand noreply at github.com
Wed Feb 22 02:59:04 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b646f7463534ccf698faecc5818b0a17a2efc4a3
      https://github.com/WebKit/WebKit/commit/b646f7463534ccf698faecc5818b0a17a2efc4a3
  Author: Philippe Normand <philn at igalia.com>
  Date:   2023-02-22 (Wed, 22 Feb 2023)

  Changed paths:
    M Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.cpp
    M Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h
    M Source/WebCore/platform/gstreamer/GStreamerElementHarness.cpp
    M Source/WebCore/platform/gstreamer/GStreamerElementHarness.h
    M Tools/Scripts/webkitpy/port/glib.py

  Log Message:
  -----------
  [GStreamer] Harness: graph dump support
https://bugs.webkit.org/show_bug.cgi?id=252559

Reviewed by Xabier Rodriguez-Calvar.

In cases where a graph dump of the harness and its downstream harnesses is needed for debugging
purposes, it can be done by calling the `dumpGraph()` method. At runtime you need to set the
`$WEBKIT_GST_HARNESS_DUMP_DIR` environment variable to a filesystem directory path where `mmd`
[Mermaid](https://mermaid.js.org/) files will be created. Those can then be exported to SVG or
PNG using the mermaid CLI tools or the [live editor](https://mermaid.live).

* Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.cpp:
(WebCore::ensureGStreamerInitialized):
(WebCore::webkitGstInitTime):
* Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h:
* Source/WebCore/platform/gstreamer/GStreamerElementHarness.cpp:
(WebCore::GStreamerElementHarness::GStreamerElementHarness):
(WebCore::MermaidBuilder::MermaidBuilder):
(WebCore::MermaidBuilder::generatePadId):
(WebCore::MermaidBuilder::getPadClass):
(WebCore::MermaidBuilder::process):
(WebCore::MermaidBuilder::dumpPad):
(WebCore::MermaidBuilder::dumpElement):
(WebCore::MermaidBuilder::describeCaps):
(WebCore::MermaidBuilder::span):
(WebCore::GStreamerElementHarness::dumpGraph):
* Source/WebCore/platform/gstreamer/GStreamerElementHarness.h:
(WebCore::GStreamerElementHarness::Stream::targetPad const):
(WebCore::GStreamerElementHarness::Stream::downstreamHarness const):
* Tools/Scripts/webkitpy/port/glib.py:
(GLibPort.setup_environ_for_server):

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




More information about the webkit-changes mailing list