[webkit-changes] [WebKit/WebKit] 1bcae4: [GStreamer] Video not resized with playbin3 on i.M...

Commit Queue noreply at github.com
Sun Oct 15 12:29:20 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1bcae4eccfb945436e2c9b923c3293d94548c80b
      https://github.com/WebKit/WebKit/commit/1bcae4eccfb945436e2c9b923c3293d94548c80b
  Author: Marek Vasut <marex at denx.de>
  Date:   2023-10-15 (Sun, 15 Oct 2023)

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

  Log Message:
  -----------
  [GStreamer] Video not resized with playbin3 on i.MX8M Plus and COG
https://bugs.webkit.org/show_bug.cgi?id=263165

Reviewed by Philippe Normand.

When using WEBKIT_GST_USE_PLAYBIN3=1 and cog to open VP9 video from
remote server which provides a video with html5 video tag:

"
<video id="video" autoplay muted loop autofocus controls>
<source src="./1.webm" type="video/webm">
</video>
"

then only single message is delivered
to MediaPlayerPrivateGStreamer::handleStreamCollectionMessage() . The
current workaround check would bail out since the message source is
decodebin3, while the m_source is webkitwebsrc . This prevents
player->updateTracks from being called, and thus m_hasVideo from being
set, and thus hasVideo() in MediaPlayerPrivateGStreamer::naturalSize()
returns false and MediaPlayerPrivateGStreamer::naturalSize returns
FloatSize() size, which is 0x0. The resulting video element in the
browser has minimum height set and is not correctly resized.

Limit the MediaPlayerPrivateGStreamer::handleStreamCollectionMessage()
workaround only to non-filesrc and non-webkitwebsrc, since webkitwebsrc
is not generating the stream-collection events.

* Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::handleStreamCollectionMessage):

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




More information about the webkit-changes mailing list