Title: [149735] trunk/Source/WebCore
Revision
149735
Author
[email protected]
Date
2013-05-08 06:41:13 -0700 (Wed, 08 May 2013)

Log Message

[GStreamer] Does memory buffering even with preload set to none
https://bugs.webkit.org/show_bug.cgi?id=115754

Patch by Gustavo Noronha Silva <[email protected]> on 2013-05-08
Reviewed by Philippe Normand.

Covered by existing tests.

Revision 148840 fixed on-disk buffering being done when preload is set to none,
but memory buffering is still being done. That is because setting the state to
paused causes GStreamer to start loading the media, to gather information. Only
doing that when committing the load avoids that while maintaining the tested
behaviour unchanged.

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::load): move setting pause state to commitLoad.
(WebCore::MediaPlayerPrivateGStreamer::commitLoad): see above.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (149734 => 149735)


--- trunk/Source/WebCore/ChangeLog	2013-05-08 13:07:05 UTC (rev 149734)
+++ trunk/Source/WebCore/ChangeLog	2013-05-08 13:41:13 UTC (rev 149735)
@@ -1,3 +1,22 @@
+2013-05-08  Gustavo Noronha Silva  <[email protected]>
+
+        [GStreamer] Does memory buffering even with preload set to none
+        https://bugs.webkit.org/show_bug.cgi?id=115754
+
+        Reviewed by Philippe Normand.
+
+        Covered by existing tests.
+
+        Revision 148840 fixed on-disk buffering being done when preload is set to none,
+        but memory buffering is still being done. That is because setting the state to
+        paused causes GStreamer to start loading the media, to gather information. Only
+        doing that when committing the load avoids that while maintaining the tested
+        behaviour unchanged.
+
+        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+        (WebCore::MediaPlayerPrivateGStreamer::load): move setting pause state to commitLoad.
+        (WebCore::MediaPlayerPrivateGStreamer::commitLoad): see above.
+
 2013-05-08  Andreas Kling  <[email protected]>
 
         SVGStyledElement::getPresentationAttribute() does not need to be virtual.

Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp (149734 => 149735)


--- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp	2013-05-08 13:07:05 UTC (rev 149734)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp	2013-05-08 13:41:13 UTC (rev 149735)
@@ -299,10 +299,6 @@
     m_player->readyStateChanged();
     m_volumeAndMuteInitialized = false;
 
-    // GStreamer needs to have the pipeline set to a paused state to
-    // start providing anything useful.
-    gst_element_set_state(m_playBin.get(), GST_STATE_PAUSED);
-
     if (!m_delayingLoad)
         commitLoad();
 }
@@ -318,6 +314,11 @@
 {
     ASSERT(!m_delayingLoad);
     LOG_MEDIA_MESSAGE("Committing load.");
+
+    // GStreamer needs to have the pipeline set to a paused state to
+    // start providing anything useful.
+    gst_element_set_state(m_playBin.get(), GST_STATE_PAUSED);
+
     updateStates();
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to