Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c4980bb736efdc577c76453ea6adc380d9f5c11f
      
https://github.com/WebKit/WebKit/commit/c4980bb736efdc577c76453ea6adc380d9f5c11f
  Author: Enrique Ocaña González <[email protected]>
  Date:   2026-01-20 (Tue, 20 Jan 2026)

  Changed paths:
    M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
    M Source/WebCore/platform/gstreamer/GStreamerQuirkBroadcomBase.cpp

  Log Message:
  -----------
  [GStreamer][Broadcom] fix incorrect casting of GstGhostPad to GstElement
https://bugs.webkit.org/show_bug.cgi?id=305788

Reviewed by Xabier Rodriguez-Calvar.

The problem is observed when brcm audio/video filters are plugged into
the "inner-parser" in WebKitThunderParser.
GStreamerQuirkBroadcomBase::setupBufferingPercentageCorrection() tries
and fails to cast GstGhostPad to GstElement. The
gst_pad_get_parent_element() method fits better for the use case.

Also, this change disables the correction of buffering percentage for
MSE and MediaStream playbacks, since it only makes sense for regular
playback.

Original author: Eugene Mutavchi <[email protected]>

* Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::handleMessage): Only do buffering 
percentage correction on regular playback (not MediaStream, not MSE).
* Source/WebCore/platform/gstreamer/GStreamerQuirkBroadcomBase.cpp:
(WebCore::GStreamerQuirkBroadcomBase::setupBufferingPercentageCorrection 
const): Use gst_pad_get_parent_element() instead of gst_pad_get_parent(), since 
it's more robust against the case when the parent isn't a GstElement.

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



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

Reply via email to