[webkit-changes] [WebKit/WebKit] d474d5: [GStreamer] Introduce workaround for race conditio...

Alicia Boya García noreply at github.com
Wed Oct 5 09:38:58 PDT 2022


  Branch: refs/heads/pr/3965
  Home:   https://github.com/WebKit/WebKit
  Commit: d474d5f3865a444dafd9b4c85cde7fe6cba6309f
      https://github.com/WebKit/WebKit/commit/d474d5f3865a444dafd9b4c85cde7fe6cba6309f
  Author: Alicia Boya Garcia <aboya at igalia.com>
  Date:   2022-10-05 (Wed, 05 Oct 2022)

  Changed paths:
    M Source/WebCore/platform/GStreamer.cmake
    A Source/WebCore/platform/graphics/gstreamer/AppSinkWorkaround.cpp
    A Source/WebCore/platform/graphics/gstreamer/AppSinkWorkaround.h
    M Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.cpp
    M Tools/Scripts/webkitpy/style/checker.py

  Log Message:
  -----------
  [GStreamer] Introduce workaround for race condition in appsink

This patch introduces a WebKit-side workaround for this GStreamer bug:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2413
appsink: Fix race condition on caps handling

That race condition causes occasional crashes on MSE flushes following
quality changes.

The workaround consists in registering an element that is a subclass of
appsink with a probe that pushes a redundant caps event if a buffer is
received after a flush. This ensures appsink processes the caps so that
the GstSample later pulled from appsink contains the right caps.

The workaround is only installed if the version of gst-plugins-base is
known to have this bug.




More information about the webkit-changes mailing list