/* * Copyright (C) 2007 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ module html { interface [GenerateConstructor, Conditional=VIDEO] HTMLMediaElement : HTMLElement { // error state readonly attribute MediaError error; // network state attribute DOMString src; readonly attribute DOMString currentSrc; const unsigned short EMPTY = 0; const unsigned short LOADING = 1; const unsigned short LOADED_METADATA = 2; const unsigned short LOADED_FIRST_FRAME = 3; const unsigned short LOADED = 4; readonly attribute unsigned short networkState; readonly attribute float bufferingRate; readonly attribute TimeRanges buffered; void load() raises (DOMException); // ready state const unsigned short DATA_UNAVAILABLE = 0; const unsigned short CAN_SHOW_CURRENT_FRAME = 1; const unsigned short CAN_PLAY = 2; const unsigned short CAN_PLAY_THROUGH = 3; readonly attribute unsigned short readyState; readonly attribute boolean seeking; // playback state attribute float currentTime setter raises (DOMException); readonly attribute float duration; readonly attribute boolean paused; attribute float defaultPlaybackRate setter raises (DOMException); attribute float playbackRate setter raises (DOMException); readonly attribute TimeRanges played; readonly attribute TimeRanges seekable; readonly attribute boolean ended; attribute boolean autoplay; void play() raises (DOMException); void pause() raises (DOMException); // looping attribute float start; attribute float end; attribute float loopStart; attribute float loopEnd; attribute unsigned long playCount setter raises (DOMException); attribute unsigned long currentLoop; // cue points void addCuePoint(in float time, in VoidCallback callback, in boolean pause); void removeCuePoint(in float time, in VoidCallback callback); // controls attribute boolean controls; attribute float volume setter raises (DOMException); attribute boolean muted; }; }