Changeset 207287 in webkit


Ignore:
Timestamp:
Oct 13, 2016 8:00:09 AM (7 years ago)
Author:
commit-queue@webkit.org
Message:

[GTK] Video playback doesn't work properly with accelerated compositing disabled
https://bugs.webkit.org/show_bug.cgi?id=163386

Patch by Miguel Gomez <magomez@igalia.com> on 2016-10-13
Reviewed by Carlos Garcia Campos.

Trigger a repaint of the player when a new frame arrives and accelerated compositing is disabled.

Covered by existent tests.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):

Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r207286 r207287  
     12016-10-13  Miguel Gomez  <magomez@igalia.com>
     2
     3        [GTK] Video playback doesn't work properly with accelerated compositing disabled
     4        https://bugs.webkit.org/show_bug.cgi?id=163386
     5
     6        Reviewed by Carlos Garcia Campos.
     7
     8        Trigger a repaint of the player when a new frame arrives and accelerated compositing is disabled.
     9
     10        Covered by existent tests.
     11
     12        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
     13        (WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
     14
    1152016-10-13  Antti Koivisto  <antti@apple.com>
    216
  • trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp

    r206866 r207287  
    597597#if USE(COORDINATED_GRAPHICS_THREADED)
    598598#if USE(GSTREAMER_GL)
    599     pushTextureToCompositor();
     599    if (m_player->client().mediaPlayerRenderingCanBeAccelerated(m_player))
     600        pushTextureToCompositor();
     601    else {
     602        LockHolder locker(m_drawMutex);
     603        m_drawTimer.startOneShot(0);
     604        m_drawCondition.wait(m_drawMutex);
     605    }
    600606#else
    601     {
     607    if (m_player->client().mediaPlayerRenderingCanBeAccelerated(m_player)) {
    602608        LockHolder lock(m_drawMutex);
    603609        if (!m_platformLayerProxy->scheduleUpdateOnCompositorThread([this] { this->pushTextureToCompositor(); }))
    604610            return;
    605611        m_drawCondition.wait(m_drawMutex);
    606     }
     612    } else
     613        repaint();
    607614#endif
    608615    return;
Note: See TracChangeset for help on using the changeset viewer.