Commit d7727cbb authored by wolenetz@chromium.org's avatar wolenetz@chromium.org

MSE: Complete letting SourceBuffer begin to do initialization segment received algorithm

This change is the third in a three-sided set of changes, and lets
WebSourceBufferClient be the sole trigger for Blink adding a
SourceBuffer into SourceBuffer.activeSourceBuffers.

R=acolwell@chromium.org,philipj@opera.com,tkent@chromium.org
TEST=No mediasource layout test regression
BUG=249428, 397243

Review URL: https://codereview.chromium.org/562503002

git-svn-id: svn://svn.chromium.org/blink/trunk@181949 bbb929c8-8fbe-4397-9dbb-9b2b20218538
parent 118a2457
...@@ -466,13 +466,6 @@ crbug.com/340206 [ Win ] http/tests/security/cross-origin-css.html [ Pass Timeou ...@@ -466,13 +466,6 @@ crbug.com/340206 [ Win ] http/tests/security/cross-origin-css.html [ Pass Timeou
crbug.com/283723 [ Win ] http/tests/local/fileapi/file-last-modified-after-delete.html [ Failure Pass Timeout ] crbug.com/283723 [ Win ] http/tests/local/fileapi/file-last-modified-after-delete.html [ Failure Pass Timeout ]
crbug.com/371716 [ Win ] http/tests/local/formdata/send-form-data.html [ Pass Timeout ] crbug.com/371716 [ Win ] http/tests/local/formdata/send-form-data.html [ Pass Timeout ]
# Temporary failures while landing three-sided changes
crbug.com/249428 http/tests/media/media-source/mediasource-addsourcebuffer.html [ Failure ]
crbug.com/249428 http/tests/media/media-source/mediasource-append-buffer.html [ Failure ]
crbug.com/249428 http/tests/media/media-source/mediasource-append-legacystream.html [ Failure ]
crbug.com/249428 http/tests/media/media-source/mediasource-buffered.html [ Failure ]
crbug.com/249428 http/tests/media/media-source/mediasource-sourcebufferlist.html [ Failure ]
# 309184 and 303419 track Android-specific failures # 309184 and 303419 track Android-specific failures
crbug.com/309184 crbug.com/303419 crbug.com/284782 http/tests/media/media-source/mediasource-duration.html [ Failure Pass ] crbug.com/309184 crbug.com/303419 crbug.com/284782 http/tests/media/media-source/mediasource-duration.html [ Failure Pass ]
......
...@@ -155,8 +155,6 @@ SourceBuffer* MediaSource::addSourceBuffer(const String& type, ExceptionState& e ...@@ -155,8 +155,6 @@ SourceBuffer* MediaSource::addSourceBuffer(const String& type, ExceptionState& e
SourceBuffer* buffer = SourceBuffer::create(webSourceBuffer.release(), this, m_asyncEventQueue.get()); SourceBuffer* buffer = SourceBuffer::create(webSourceBuffer.release(), this, m_asyncEventQueue.get());
// 6. Add the new object to sourceBuffers and fire a addsourcebuffer on that object. // 6. Add the new object to sourceBuffers and fire a addsourcebuffer on that object.
m_sourceBuffers->add(buffer); m_sourceBuffers->add(buffer);
// FIXME: Remove the following once Chromium calls WebSourceBufferClient::InitSegmentReceived()
setSourceBufferActive(buffer);
// 7. Return the new object to the caller. // 7. Return the new object to the caller.
return buffer; return buffer;
...@@ -484,8 +482,7 @@ bool MediaSource::isOpen() const ...@@ -484,8 +482,7 @@ bool MediaSource::isOpen() const
void MediaSource::setSourceBufferActive(SourceBuffer* sourceBuffer) void MediaSource::setSourceBufferActive(SourceBuffer* sourceBuffer)
{ {
if (m_activeSourceBuffers->contains(sourceBuffer)) ASSERT(!m_activeSourceBuffers->contains(sourceBuffer));
return;
// https://dvcs.w3.org/hg/html-media/raw-file/tip/media-source/media-source.html#widl-MediaSource-activeSourceBuffers // https://dvcs.w3.org/hg/html-media/raw-file/tip/media-source/media-source.html#widl-MediaSource-activeSourceBuffers
// SourceBuffer objects in SourceBuffer.activeSourceBuffers must appear in // SourceBuffer objects in SourceBuffer.activeSourceBuffers must appear in
......
...@@ -48,10 +48,7 @@ public: ...@@ -48,10 +48,7 @@ public:
// This will only be called once and only with a non-null pointer to a // This will only be called once and only with a non-null pointer to a
// client whose ownership is not transferred to this WebSourceBuffer. // client whose ownership is not transferred to this WebSourceBuffer.
virtual void setClient(WebSourceBufferClient*) virtual void setClient(WebSourceBufferClient*) = 0;
{
// FIXME: Remove default implementation once Chromium impl lands.
}
virtual bool setMode(AppendMode) = 0; virtual bool setMode(AppendMode) = 0;
virtual WebTimeRanges buffered() = 0; virtual WebTimeRanges buffered() = 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment