[webkit-changes] [WebKit/WebKit] 4bb4bb: Merge 255431 at main - [GStreamer] Introduce workarou...

Alicia Boya García noreply at github.com
Wed Oct 12 14:41:34 PDT 2022


  Branch: refs/heads/webkitglib/2.38
  Home:   https://github.com/WebKit/WebKit
  Commit: 4bb4bb03fe64f9cc0f7675103d4eed136aa5acaa
      https://github.com/WebKit/WebKit/commit/4bb4bb03fe64f9cc0f7675103d4eed136aa5acaa
  Author: Alicia Boya Garcia <aboya at igalia.com>
  Date:   2022-10-12 (Wed, 12 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:
  -----------
  Merge 255431 at main - [GStreamer] Introduce workaround for race condition in appsink

Reviewed by Philippe Normand.

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.

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

(cherry picked from commit 840480537fe23ae2745ce76212b60c6c20a37a82)




More information about the webkit-changes mailing list