gecko/dom/webidl/MediaSource.webidl
Matthew Gregan 4e67cd07c7 Bug 855130 - Implement a minimal working subset of the Media Source Extensions API. r=roc
---
 content/media/mediasource/AsyncEventRunner.h       |  35 ++
 content/media/mediasource/Makefile.in              |  18 +
 content/media/mediasource/MediaSource.cpp          | 395 +++++++++++++++++++++
 content/media/mediasource/MediaSource.h            | 127 +++++++
 .../media/mediasource/MediaSourceInputAdapter.cpp  | 176 +++++++++
 .../media/mediasource/MediaSourceInputAdapter.h    |  43 +++
 content/media/mediasource/SourceBuffer.cpp         | 249 +++++++++++++
 content/media/mediasource/SourceBuffer.h           | 115 ++++++
 content/media/mediasource/SourceBufferList.cpp     | 143 ++++++++
 content/media/mediasource/SourceBufferList.h       |  79 +++++
 content/media/mediasource/moz.build                |  24 ++
 content/media/moz.build                            |   2 +
 dom/bindings/Bindings.conf                         |  13 +
 dom/dom-config.mk                                  |   1 +
 dom/webidl/MediaSource.webidl                      |  38 ++
 dom/webidl/SourceBuffer.webidl                     |  44 +++
 dom/webidl/SourceBufferList.webidl                 |  17 +
 dom/webidl/WebIDL.mk                               |   3 +
 layout/build/Makefile.in                           |   4 +
 modules/libpref/src/init/all.js                    |   3 +
 20 files changed, 1529 insertions(+)
 create mode 100644 content/media/mediasource/AsyncEventRunner.h
 create mode 100644 content/media/mediasource/Makefile.in
 create mode 100644 content/media/mediasource/MediaSource.cpp
 create mode 100644 content/media/mediasource/MediaSource.h
 create mode 100644 content/media/mediasource/MediaSourceInputAdapter.cpp
 create mode 100644 content/media/mediasource/MediaSourceInputAdapter.h
 create mode 100644 content/media/mediasource/SourceBuffer.cpp
 create mode 100644 content/media/mediasource/SourceBuffer.h
 create mode 100644 content/media/mediasource/SourceBufferList.cpp
 create mode 100644 content/media/mediasource/SourceBufferList.h
 create mode 100644 content/media/mediasource/moz.build
 create mode 100644 dom/webidl/MediaSource.webidl
 create mode 100644 dom/webidl/SourceBuffer.webidl
 create mode 100644 dom/webidl/SourceBufferList.webidl
2013-07-02 15:46:48 +12:00

39 lines
1.2 KiB
Plaintext

/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/.
*
* The origin of this IDL file is
* http://dvcs.w3.org/hg/html-media/raw-file/default/media-source/media-source.html
*
* Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C
* liability, trademark and document use rules apply.
*/
enum MediaSourceReadyState {
"closed",
"open",
"ended"
};
enum MediaSourceEndOfStreamError {
"network",
"decode"
};
[Constructor, Pref="media.mediasource.enabled"]
interface MediaSource : EventTarget {
readonly attribute SourceBufferList sourceBuffers;
readonly attribute SourceBufferList activeSourceBuffers;
readonly attribute MediaSourceReadyState readyState;
[SetterThrows]
attribute unrestricted double duration;
[Creator, Throws]
SourceBuffer addSourceBuffer(DOMString type);
[Throws]
void removeSourceBuffer(SourceBuffer sourceBuffer);
[Throws]
void endOfStream(optional MediaSourceEndOfStreamError error);
static boolean isTypeSupported(DOMString type);
};