RESOLVED FIXED 37991
Do not pause movie when readyState drops below HAVE_FUTURE_DATA
https://bugs.webkit.org/show_bug.cgi?id=37991
Summary Do not pause movie when readyState drops below HAVE_FUTURE_DATA
Eric Carlson
Reported 2010-04-22 08:30:16 PDT
HTMLMediaElement currently calls m_player->pause() when playback stops because the media engine runs out of buffered data. This is unnecessary for downloaded movies because the movie is already "paused", and is harmful for streamed movies because no data is loaded once paused.
Attachments
Proposed patch (2.98 KB, patch)
2010-04-22 09:36 PDT, Eric Carlson
no flags
Eric Carlson
Comment 1 2010-04-22 08:31:22 PDT
Eric Carlson
Comment 2 2010-04-22 09:36:29 PDT
Created attachment 54066 [details] Proposed patch
Simon Fraser (smfr)
Comment 3 2010-04-22 09:52:20 PDT
Comment on attachment 54066 [details] Proposed patch > bool HTMLMediaElement::potentiallyPlaying() const > { > - return m_readyState >= HAVE_FUTURE_DATA && couldPlayIfEnoughData(); > + bool pausedToBuffer = m_readyStateMaximum >= HAVE_FUTURE_DATA && m_readyState < HAVE_FUTURE_DATA; > + return (pausedToBuffer || m_readyState >= HAVE_FUTURE_DATA) && couldPlayIfEnoughData(); I think a comment here would be useful, to explain exactly what pausedToBuffer means.
Eric Carlson
Comment 4 2010-04-22 11:07:03 PDT
trac.webkit.org/changeset/58107
WebKit Review Bot
Comment 5 2010-04-22 11:58:45 PDT
http://trac.webkit.org/changeset/58107 might have broken Leopard Intel Release (Tests)
Eric Seidel (no email)
Comment 6 2010-04-22 12:00:29 PDT
Eric Carlson
Comment 7 2010-04-22 12:06:29 PDT
I am looking into it.
Eric Carlson
Comment 8 2010-04-22 12:25:37 PDT
Looks like this change has exposed a QuickTime/QTKit bug. Continuing to dig.
Eric Carlson
Comment 9 2010-04-22 12:48:20 PDT
Will need to spend some quality time in QuickTime to figure this out, so these tests added to the Leopard and Tiger skipped lists in http://trac.webkit.org/changeset/58109
Note You need to log in before you can comment on or make changes to this bug.