Skip to content
Permalink
Browse files
[GStreamer] top/bottom black bars added needlessly in fullscreen
https://bugs.webkit.org/show_bug.cgi?id=158980

Patch by Philippe Normand <philn@igalia.com> on 2016-06-27
Reviewed by Carlos Garcia Campos.

The natural video size calculation depends on the validity of the
current sample, so whenever the first sample reached the sink it's a
good idea to reflect this on the player which will update its natural
size accordingly.

Fixes an issue where black borders were added on top and bottom of
fullscreen video.

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):

Canonical link: https://commits.webkit.org/177235@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@202482 268f45cc-cd09-0410-ab3c-d52691b4dbfc
  • Loading branch information
philn committed Jun 27, 2016
1 parent 798de85 commit e9b74287981f3cf5c630df31e375f7f387191ee3
Showing with 25 additions and 0 deletions.
  1. +18 −0 Source/WebCore/ChangeLog
  2. +7 −0 Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
@@ -1,3 +1,21 @@
2016-06-27 Philippe Normand <philn@igalia.com>

[GStreamer] top/bottom black bars added needlessly in fullscreen
https://bugs.webkit.org/show_bug.cgi?id=158980

Reviewed by Carlos Garcia Campos.

The natural video size calculation depends on the validity of the
current sample, so whenever the first sample reached the sink it's a
good idea to reflect this on the player which will update its natural
size accordingly.

Fixes an issue where black borders were added on top and bottom of
fullscreen video.

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):

2016-06-27 Youenn Fablet <youenn@apple.com>

Remove didFailRedirectCheck ThreadableLoaderClient callback
@@ -534,11 +534,18 @@ void MediaPlayerPrivateGStreamerBase::repaint()

void MediaPlayerPrivateGStreamerBase::triggerRepaint(GstSample* sample)
{
bool triggerResize;
{
WTF::GMutexLocker<GMutex> lock(m_sampleMutex);
triggerResize = !m_sample;
m_sample = sample;
}

if (triggerResize) {
LOG_MEDIA_MESSAGE("First sample reached the sink, triggering video dimensions update");
m_player->sizeChanged();
}

#if USE(COORDINATED_GRAPHICS_THREADED)
#if USE(GSTREAMER_GL)
pushTextureToCompositor();

0 comments on commit e9b7428

Please sign in to comment.